From 1d8b9ff481fe265643831ef3f731e7aef082aed0 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Fri, 17 Jan 2025 14:04:57 +0500 Subject: [PATCH 01/93] shifted to agoric --- package-lock.json | 230 +++++++++++++++++- .../docker/agoric/bin/init_agoric.sh | 13 + .../docker/agoric/docker-compose.yaml | 31 +++ .../docker/axelar/bin/init_axelar.sh | 2 +- .../docker/axelar/bin/setup.sh | 2 +- .../docker/axelar/bin/steps/register-asset.sh | 5 +- packages/axelar-local-dev-cosmos/package.json | 4 +- .../axelar-local-dev-cosmos/scripts/relay.ts | 3 + .../src/__tests__/e2e/relayer.e2e.ts | 2 +- .../src/clients/cosmos/CosmosClient.ts | 69 ++++-- .../src/clients/ibc/IBCRelayerClient.ts | 21 +- .../src/clients/ibc/RelayerAccountManager.ts | 8 +- .../src/config/wasm/config.ts | 16 +- .../src/replayToEth.ts | 190 +++++++++++++++ .../src/services/AxelarRelayerService.ts | 7 +- .../src/services/DockerService.ts | 23 +- .../src/services/IBCRelayerService.ts | 4 +- packages/axelar-local-dev-cosmos/src/types.ts | 2 +- .../axelar-local-dev/src/relay/Relayer.ts | 2 + 19 files changed, 554 insertions(+), 80 deletions(-) create mode 100755 packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh create mode 100644 packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml create mode 100644 packages/axelar-local-dev-cosmos/scripts/relay.ts create mode 100644 packages/axelar-local-dev-cosmos/src/replayToEth.ts diff --git a/package-lock.json b/package-lock.json index 1ba857b1..11756f6d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1566,7 +1566,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-4.0.1.tgz", "integrity": "sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==", - "dev": true, "bin": { "rlp": "bin/rlp" }, @@ -1627,7 +1626,6 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-8.1.0.tgz", "integrity": "sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==", - "dev": true, "dependencies": { "@ethereumjs/rlp": "^4.0.1", "ethereum-cryptography": "^2.0.0", @@ -1641,7 +1639,6 @@ "version": "1.3.3", "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz", "integrity": "sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==", - "dev": true, "engines": { "node": ">= 16" }, @@ -1653,7 +1650,6 @@ "version": "1.3.3", "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.3.3.tgz", "integrity": "sha512-LJaN3HwRbfQK0X1xFSi0Q9amqOgzQnnDngIt+ZlsBC3Bm7/nE7K0kwshZHyaru79yIVRv/e1mQAjZyuZG6jOFQ==", - "dev": true, "dependencies": { "@noble/curves": "~1.3.0", "@noble/hashes": "~1.3.2", @@ -1667,7 +1663,6 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.2.2.tgz", "integrity": "sha512-HYf9TUXG80beW+hGAt3TRM8wU6pQoYur9iNypTROm42dorCGmLnFe3eWjz3gOq6G62H2WRh0FCzAR1PI+29zIA==", - "dev": true, "dependencies": { "@noble/hashes": "~1.3.2", "@scure/base": "~1.1.4" @@ -1680,7 +1675,6 @@ "version": "2.1.3", "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.1.3.tgz", "integrity": "sha512-BlwbIL7/P45W8FGW2r7LGuvoEZ+7PWsniMvQ4p5s2xCyw9tmaDlpfsN9HjAucbF+t/qpVHwZUisgfK24TCW8aA==", - "dev": true, "dependencies": { "@noble/curves": "1.3.0", "@noble/hashes": "1.3.3", @@ -4054,6 +4048,18 @@ "node": ">=10" } }, + "node_modules/@metamask/abi-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@metamask/abi-utils/-/abi-utils-3.0.0.tgz", + "integrity": "sha512-a/l0DiSIr7+CBYVpHygUa3ztSlYLFCQMsklLna+t6qmNY9+eIO5TedNxhyIyvaJ+4cN7TLy0NQFbp9FV3X2ktg==", + "dependencies": { + "@metamask/superstruct": "^3.1.0", + "@metamask/utils": "^11.0.1" + }, + "engines": { + "node": "^18.18 || ^20.14 || >=22" + } + }, "node_modules/@metamask/eth-sig-util": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@metamask/eth-sig-util/-/eth-sig-util-4.0.1.tgz", @@ -4070,6 +4076,181 @@ "node": ">=12.0.0" } }, + "node_modules/@metamask/superstruct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@metamask/superstruct/-/superstruct-3.1.0.tgz", + "integrity": "sha512-N08M56HdOgBfRKkrgCMZvQppkZGcArEop3kixNEtVbJKm6P9Cfg0YkI6X0s1g78sNrj2fWUwvJADdZuzJgFttA==", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@metamask/utils": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/@metamask/utils/-/utils-11.0.1.tgz", + "integrity": "sha512-tZlBvEJ6VhhfEiMV+Ad8rWRMjHKpbMogG01YU22JlsIeJptgIdZX1G8jJzhZH0Gxrixa2BeARh7m9lZWQo6rMg==", + "dependencies": { + "@ethereumjs/tx": "^4.2.0", + "@metamask/superstruct": "^3.1.0", + "@noble/hashes": "^1.3.1", + "@scure/base": "^1.1.3", + "@types/debug": "^4.1.7", + "debug": "^4.3.4", + "pony-cause": "^2.1.10", + "semver": "^7.5.4", + "uuid": "^9.0.1" + }, + "engines": { + "node": "^18.18 || ^20.14 || >=22" + } + }, + "node_modules/@metamask/utils/node_modules/@ethereumjs/common": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-3.2.0.tgz", + "integrity": "sha512-pksvzI0VyLgmuEF2FA/JR/4/y6hcPq8OUail3/AvycBaW1d5VSauOZzqGvJ3RTmR4MU35lWE8KseKOsEhrFRBA==", + "dependencies": { + "@ethereumjs/util": "^8.1.0", + "crc-32": "^1.2.0" + } + }, + "node_modules/@metamask/utils/node_modules/@ethereumjs/tx": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-4.2.0.tgz", + "integrity": "sha512-1nc6VO4jtFd172BbSnTnDQVr9IYBFl1y4xPzZdtkrkKIncBCkdbgfdRV+MiTkJYAtTxvV12GRZLqBFT1PNK6Yw==", + "dependencies": { + "@ethereumjs/common": "^3.2.0", + "@ethereumjs/rlp": "^4.0.1", + "@ethereumjs/util": "^8.1.0", + "ethereum-cryptography": "^2.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@metamask/utils/node_modules/@noble/curves": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", + "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", + "dependencies": { + "@noble/hashes": "1.4.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@metamask/utils/node_modules/@noble/curves/node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@metamask/utils/node_modules/@noble/hashes": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.0.tgz", + "integrity": "sha512-HXydb0DgzTpDPwbVeDGCG1gIu7X6+AuU6Zl6av/E/KG8LMsvPntvq+w17CHRpKBmN6Ybdrt1eP3k4cj8DJa78w==", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@metamask/utils/node_modules/@scure/bip32": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", + "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", + "dependencies": { + "@noble/curves": "~1.4.0", + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@metamask/utils/node_modules/@scure/bip32/node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@metamask/utils/node_modules/@scure/bip39": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", + "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", + "dependencies": { + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@metamask/utils/node_modules/@scure/bip39/node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@metamask/utils/node_modules/ethereum-cryptography": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", + "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", + "dependencies": { + "@noble/curves": "1.4.2", + "@noble/hashes": "1.4.0", + "@scure/bip32": "1.4.0", + "@scure/bip39": "1.3.0" + } + }, + "node_modules/@metamask/utils/node_modules/ethereum-cryptography/node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@metamask/utils/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@metamask/utils/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/@multiversx/sdk-bls-wasm": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/@multiversx/sdk-bls-wasm/-/sdk-bls-wasm-0.3.5.tgz", @@ -4544,7 +4725,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.3.0.tgz", "integrity": "sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==", - "dev": true, "dependencies": { "@noble/hashes": "1.3.3" }, @@ -4556,7 +4736,6 @@ "version": "1.3.3", "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz", "integrity": "sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==", - "dev": true, "engines": { "node": ">= 16" }, @@ -7639,6 +7818,14 @@ "@types/node": "*" } }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dependencies": { + "@types/ms": "*" + } + }, "node_modules/@types/form-data": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz", @@ -7781,6 +7968,11 @@ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==", "dev": true }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==" + }, "node_modules/@types/node": { "version": "20.11.30", "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.30.tgz", @@ -11155,7 +11347,6 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", - "dev": true, "bin": { "crc32": "bin/crc32.njs" }, @@ -15664,8 +15855,7 @@ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "extraneous": true, "os": [ - "darwin", - "linux" + "darwin" ], "engines": { "node": "^8.16.0 || ^10.6.0 || >=11.0.0" @@ -24064,8 +24254,7 @@ "node_modules/micro-ftch": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.3.1.tgz", - "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==", - "dev": true + "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==" }, "node_modules/micromatch": { "version": "4.0.5", @@ -27246,6 +27435,14 @@ "node": ">=4" } }, + "node_modules/pony-cause": { + "version": "2.1.11", + "resolved": "https://registry.npmjs.org/pony-cause/-/pony-cause-2.1.11.tgz", + "integrity": "sha512-M7LhCsdNbNgiLYiP4WjsfLUuFmCfnjdF6jKe2R9NKl4WFN+HZPGHJZ9lnLP7f9ZnKe3U9nuWD0szirmj+migUg==", + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/possible-typed-array-names": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", @@ -33964,8 +34161,10 @@ "@confio/relayer": "^0.10.0", "@cosmjs/cosmwasm-stargate": "^0.31.1", "@cosmjs/stargate": "^0.31.1", + "@metamask/abi-utils": "^3.0.0", "@types/sinon": "^17.0.2", "bech32": "^2.0.0", + "cosmjs-types": "^0.9.0", "docker-compose": "^0.24.3", "node-fetch": "^2.7.0", "reconnecting-websocket": "^4.4.0", @@ -33983,6 +34182,11 @@ "version": "2.0.0", "license": "MIT" }, + "packages/axelar-local-dev-cosmos/node_modules/cosmjs-types": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/cosmjs-types/-/cosmjs-types-0.9.0.tgz", + "integrity": "sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ==" + }, "packages/axelar-local-dev-cosmos/node_modules/node-fetch": { "version": "2.7.0", "license": "MIT", diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh new file mode 100755 index 00000000..cc29d122 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +DENOM=ubld +CHAIN_ID=agoriclocal +MONIKER=agoric +HOME=/root/private/.agoric + +# Removing the existing directory to start with a clean slate +rm -rf ${HOME}/* + +mnemonic="soap hub stick bomb dish index wing shield cruel board siren force glory assault rotate busy area topple resource okay clown wedding hint unhappy" +echo ${mnemonic} | tr -d "\n" > ${HOME}/mnemonic.txt +echo "Added new key 'owner'" diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml new file mode 100644 index 00000000..ad3f1589 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml @@ -0,0 +1,31 @@ +version: "3.8" +services: + agoric: + image: ghcr.io/agoric/agoric-3-proposals:latest + container_name: agoric + command: "/root/private/bin/init_agoric.sh" + volumes: + - "./bin:/root/private/bin" + - "./.agoric:/root/private/.agoric" + labels: + - "traefik.enable=true" + + # RPC + - "traefik.http.routers.agoric-rpc.rule=Host(`localhost`) && PathPrefix(`/agoric-rpc`)" + - "traefik.http.routers.agoric-rpc.entrypoints=web" + - "traefik.http.routers.agoric-rpc.service=agoric-rpc" + - "traefik.http.services.agoric-rpc.loadbalancer.server.port=26657" + - "traefik.http.middlewares.agoric-rpc.stripprefix.prefixes=/agoric-rpc" + - "traefik.http.routers.agoric-rpc.middlewares=agoric-rpc" + + # LCD + - "traefik.http.routers.agoric-lcd.rule=Host(`localhost`) && PathPrefix(`/agoric-lcd`)" + - "traefik.http.routers.agoric-lcd.entrypoints=web" + - "traefik.http.routers.agoric-lcd.service=agoric-lcd" + - "traefik.http.services.agoric-lcd.loadbalancer.server.port=1317" + - "traefik.http.middlewares.agoric-lcd.stripprefix.prefixes=/agoric-lcd" + - "traefik.http.routers.agoric-lcd.middlewares=agoric-lcd" +networks: + default: + name: traefik_default + external: true diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh b/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh index 0ca10418..03af217b 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh +++ b/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh @@ -88,5 +88,5 @@ cat /root/private/bin/libs/evm-rpc.toml >> "$HOME"/config/config.toml axelard start --home ${HOME} \ --minimum-gas-prices 0${DENOM} \ --moniker ${MONIKER} \ ---rpc.laddr "tcp://0.0.0.0:26657" +--rpc.laddr "tcp://0.0.0.0:26657" diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/bin/setup.sh b/packages/axelar-local-dev-cosmos/docker/axelar/bin/setup.sh index 7ba1eff0..5f6e25e2 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/bin/setup.sh +++ b/packages/axelar-local-dev-cosmos/docker/axelar/bin/setup.sh @@ -1,7 +1,7 @@ #!/bin/sh EVM_CHAIN=ethereum -COSMOS_CHAIN=wasm +COSMOS_CHAIN=agoric DIR="$(dirname "$0")" echo "#### 1. Adding EVM chain ####" diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/register-asset.sh b/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/register-asset.sh index 7830117c..52f890dd 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/register-asset.sh +++ b/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/register-asset.sh @@ -4,7 +4,8 @@ CHAIN_ID=axelar HOME=/root/private/.axelar DEFAULT_KEYS_FLAGS="--keyring-backend test --home ${HOME}" CHAIN=$1 -DENOM=${2:-uwasm} +# DENOM=${2:-uwasm} +DENOM=${2:-ibc/295548A78785A1007F232DE286149A6FF512F180AF5657780FC89C009E2C348F} DIR="$(dirname "$0")" if [ -z "$CHAIN" ] @@ -16,7 +17,7 @@ fi echo "Registering asset ${CHAIN} ${DENOM}" docker exec axelar /bin/sh -c "axelard tx axelarnet register-asset ${CHAIN} ${DENOM} --is-native-asset --generate-only \ --chain-id ${CHAIN_ID} --from \$(axelard keys show governance -a ${DEFAULT_KEYS_FLAGS}) ${DEFAULT_KEYS_FLAGS} \ ---output json --gas 500000 &> ${HOME}/unsigned_msg.json" +--output json --gas 500000 > ${HOME}/unsigned_msg.json" docker exec axelar /bin/sh -c "cat ${HOME}/unsigned_msg.json" echo "Registered asset ${CHAIN} ${DENOM}" diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index c2834bc9..217dd3ba 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -18,13 +18,15 @@ "build:ts": "rm -rf dist && tsc", "build:contract": "hardhat clean && hardhat compile", "start": "./scripts/clean.sh && ts-node scripts/start.ts", - "stop": "ts-node scripts/stop.ts" + "stop": "ts-node scripts/stop.ts", + "relay": "ts-node scripts/relay.ts" }, "dependencies": { "@axelar-network/axelar-local-dev": "^2.3.2", "@confio/relayer": "^0.10.0", "@cosmjs/cosmwasm-stargate": "^0.31.1", "@cosmjs/stargate": "^0.31.1", + "@metamask/abi-utils": "^3.0.0", "@types/sinon": "^17.0.2", "bech32": "^2.0.0", "docker-compose": "^0.24.3", diff --git a/packages/axelar-local-dev-cosmos/scripts/relay.ts b/packages/axelar-local-dev-cosmos/scripts/relay.ts new file mode 100644 index 00000000..ba263873 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/relay.ts @@ -0,0 +1,3 @@ +import { relayDataToEth } from "../src/runs"; + +relayDataToEth(); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/e2e/relayer.e2e.ts b/packages/axelar-local-dev-cosmos/src/__tests__/e2e/relayer.e2e.ts index 734fc147..c85c6e35 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/e2e/relayer.e2e.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/e2e/relayer.e2e.ts @@ -77,7 +77,7 @@ describe("Relayer", () => { evmRelayer.setRelayer(RelayerType.Wasm, cosmosRelayer); const message = "hello from ethereum"; - await evmContract.send("wasm", wasmContractAddress, message, { + await evmContract.send("agoric", wasmContractAddress, message, { value: ethers.utils.parseEther("0.001"), }); diff --git a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts index a39a6e45..9fa92700 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts @@ -1,13 +1,14 @@ -import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; -import { GasPrice } from "@cosmjs/stargate"; -import { SigningCosmWasmClient } from "@cosmjs/cosmwasm-stargate"; -import { CosmosChain, CosmosChainInfo } from "../../types"; -import { exportOwnerAccountFromContainer, readFileSync } from "../../utils"; +import { DirectSecp256k1HdWallet } from '@cosmjs/proto-signing'; +import { GasPrice } from '@cosmjs/stargate'; +import { SigningStargateClient } from '@cosmjs/stargate'; +import { CosmosChain, CosmosChainInfo } from '../../types'; +import { exportOwnerAccountFromContainer, readFileSync } from '../../utils'; +import { stringToPath } from '@cosmjs/crypto'; export class CosmosClient { public chainInfo: Required; public owner: DirectSecp256k1HdWallet; - public client: SigningCosmWasmClient; + public client: SigningStargateClient; public gasPrice: GasPrice; /** @@ -20,7 +21,7 @@ export class CosmosClient { private constructor( chainInfo: Required, owner: DirectSecp256k1HdWallet, - client: SigningCosmWasmClient, + client: SigningStargateClient, gasPrice: GasPrice = GasPrice.fromString(`1${chainInfo.denom}`) ) { this.chainInfo = chainInfo; @@ -38,12 +39,12 @@ export class CosmosClient { * @returns A promise that resolves to an instance of CosmosClient. */ static async create( - chain: CosmosChain = "wasm", + chain: CosmosChain = 'agoric', mnemonic?: string, - config: Omit = { prefix: chain }, + config: Omit = { prefix: chain }, gasPrice?: GasPrice ) { - const defaultDenom = chain === "wasm" ? "uwasm" : "uaxl"; + const defaultDenom = chain === 'agoric' ? 'ubld' : 'uaxl'; const chainInfo = { denom: config.denom || defaultDenom, lcdUrl: config.lcdUrl || `http://localhost/${chain}-lcd`, @@ -58,13 +59,31 @@ export class CosmosClient { _mnemonic = response.mnemonic; } - const owner = await CosmosClient.createOrImportAccount(chain, _mnemonic); + const getAgoricSigner = async () => { + const Agoric = { + Bech32MainPrefix: 'agoric', + CoinType: 564, + }; + const hdPath = (coinType = 118, account = 0) => + stringToPath(`m/44'/${coinType}'/${account}'/0/0`); + + return DirectSecp256k1HdWallet.fromMnemonic(_mnemonic, { + prefix: Agoric.Bech32MainPrefix, + hdPaths: [hdPath(Agoric.CoinType, 0), hdPath(Agoric.CoinType, 1)], + }); + }; + let owner; + if (chain === 'agoric') { + owner = await getAgoricSigner(); + } else { + owner = await CosmosClient.createOrImportAccount(chain, _mnemonic); + } const address = await owner .getAccounts() .then((accounts) => accounts[0].address); - const client = await SigningCosmWasmClient.connectWithSigner( + const client = await SigningStargateClient.connectWithSigner( chainInfo.rpcUrl, owner, { gasPrice: gasPrice } @@ -123,7 +142,7 @@ export class CosmosClient { * Retrieves the chain information of the CosmosClient instance. * @returns An object containing the chain's information, excluding the owner's details. */ - getChainInfo(): Omit { + getChainInfo(): Omit { return { prefix: this.chainInfo.prefix, denom: this.chainInfo.denom, @@ -158,7 +177,7 @@ export class CosmosClient { ) .then((res) => { if (res.code !== 0) { - throw new Error(res.rawLog || "Failed to fund wallet"); + throw new Error(res.rawLog || 'Failed to fund wallet'); } return res; }); @@ -170,15 +189,15 @@ export class CosmosClient { * @returns A promise that resolves to the upload transaction result. * @throws An error if the upload fails. */ - async uploadWasm(path: string) { - const wasm = readFileSync(path); + // async uploadWasm(path: string) { + // const wasm = readFileSync(path); - return this.client.upload( - this.getOwnerAccount(), - new Uint8Array(wasm), - 1.8 - ); - } + // return this.client.upload( + // this.getOwnerAccount(), + // new Uint8Array(wasm), + // 1.8 + // ); + // } getOwnerAccount() { return this.chainInfo.owner.address; @@ -191,8 +210,8 @@ export class CosmosClient { * @returns A promise that resolves to an object containing the new client and its address. */ async createFundedSigningClient( - chain: CosmosChain = "wasm", - amount: string = "10000000" + chain: CosmosChain = 'wasm', + amount: string = '10000000' ) { const wallet = await DirectSecp256k1HdWallet.generate(12, { prefix: chain, @@ -201,7 +220,7 @@ export class CosmosClient { await this.fundWallet(account.address, amount); - const client = await SigningCosmWasmClient.connectWithSigner( + const client = await SigningStargateClient.connectWithSigner( this.chainInfo.rpcUrl, wallet, { diff --git a/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts b/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts index d336693f..c345fd0a 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts @@ -2,7 +2,7 @@ import path from "path"; import fs from "fs"; import { Order } from "cosmjs-types/ibc/core/channel/v1/channel"; import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; -import { IbcClient, Link, RelayedHeights } from "@confio/relayer"; +import { IbcClient, Link, NoopLogger, RelayedHeights } from "@confio/relayer"; import { ChannelPair } from "@confio/relayer/build/lib/link"; import { CosmosClient } from "../cosmos/CosmosClient"; import { RelayerAccountManager } from "."; @@ -12,6 +12,7 @@ import { Path } from "../../path"; export class IBCRelayerClient { axelarClient: CosmosClient; wasmClient: CosmosClient; + logger: NoopLogger; link?: Link; public channel?: ChannelPair; public lastRelayedHeight: RelayedHeights = {}; @@ -24,6 +25,13 @@ export class IBCRelayerClient { ) { this.axelarClient = axelarClient; this.wasmClient = wasmClient; + this.logger = { + info: console.log, + error: console.log, + warn: console.log, + verbose: console.log, + debug: console.log, + } as NoopLogger; this.relayerAccountManager = new RelayerAccountManager( this.axelarClient, this.wasmClient, @@ -33,9 +41,9 @@ export class IBCRelayerClient { static async create(mnemonic?: string) { const axelarClient = await CosmosClient.create("axelar"); - const wasmClient = await CosmosClient.create("wasm"); + const wasmClient = await CosmosClient.create("agoric"); const relayer = await RelayerAccountManager.createRelayerAccount( - "wasm", + "agoric", mnemonic ); @@ -51,7 +59,6 @@ export class IBCRelayerClient { prefix, } ); - return IbcClient.connectWithSigner( client.chainInfo.rpcUrl, relayer, @@ -60,6 +67,7 @@ export class IBCRelayerClient { gasPrice: client.gasPrice, estimatedBlockTime: 400, estimatedIndexerTime: 60, + logger: this.logger, } ); } @@ -111,9 +119,10 @@ export class IBCRelayerClient { axelarIBCClient, wasmIBCClient, connection.axelar.connectionId, - connection.wasm.connectionId + connection.wasm.connectionId, + this.logger, ); - } catch (e) {} + } catch (e) { } } if (!this.link) { diff --git a/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts b/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts index 54838ffc..ff34db2d 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts @@ -49,11 +49,11 @@ export class RelayerAccountManager { * @param prefix chain prefix. Available options: wasm, axelar * @returns relayer address */ - async getRelayerAddress(prefix: CosmosChain = "wasm"): Promise { + async getRelayerAddress(prefix: CosmosChain = "agoric"): Promise { const accounts = await this.relayerAccount.getAccounts(); const relayerAddress = accounts[0].address; - if (prefix === "wasm") { + if (prefix === "agoric") { return relayerAddress; } return convertCosmosAddress(relayerAddress, prefix); @@ -83,7 +83,7 @@ export class RelayerAccountManager { async fundRelayer( amount = RelayerAccountManager.DEFAULT_FUND_AMOUNT ): Promise { - const relayerAddress = await this.getRelayerAddress("wasm"); + const relayerAddress = await this.getRelayerAddress("agoric"); const relayerAxelarAddress = await this.getRelayerAddress("axelar"); // Fund the relayer address on wasm @@ -97,7 +97,7 @@ export class RelayerAccountManager { * @returns relayer fund on wasm and axelar */ async getRelayerFund() { - const relayerAddress = await this.getRelayerAddress("wasm"); + const relayerAddress = await this.getRelayerAddress("agoric"); const relayerAxelarAddress = await this.getRelayerAddress("axelar"); const balance = await this.wasmClient.getBalance(relayerAddress); diff --git a/packages/axelar-local-dev-cosmos/src/config/wasm/config.ts b/packages/axelar-local-dev-cosmos/src/config/wasm/config.ts index e52be70a..c6963fc6 100644 --- a/packages/axelar-local-dev-cosmos/src/config/wasm/config.ts +++ b/packages/axelar-local-dev-cosmos/src/config/wasm/config.ts @@ -2,17 +2,17 @@ import path from "path"; import { ChainConfig, CosmosChainInfo } from "../../types"; import { Path } from "../../path"; -export const defaultWasmConfig: ChainConfig = { - dockerPath: Path.docker("wasm"), +export const defaultAgoricConfig: ChainConfig = { + dockerPath: Path.docker("agoric"), lcdWaitTimeout: 180000, rpcWaitTimeout: 180000, onCompleted: () => {}, }; -export const defaultWasmChainInfo: Omit = { - prefix: "wasm", - denom: "uwasm", - lcdUrl: "http://localhost/wasm-lcd", - rpcUrl: "http://localhost/wasm-rpc", - wsUrl: "ws://localhost/wasm-rpc/websocket", +export const defaultAgoricChainInfo: Omit = { + prefix: "agoric", + denom: "ubld", + lcdUrl: "http://localhost/agoric-lcd", + rpcUrl: "http://localhost/agoric-rpc", + wsUrl: "ws://localhost/agoric-rpc/websocket", }; diff --git a/packages/axelar-local-dev-cosmos/src/replayToEth.ts b/packages/axelar-local-dev-cosmos/src/replayToEth.ts new file mode 100644 index 00000000..69092c8e --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/replayToEth.ts @@ -0,0 +1,190 @@ +import { defaultAxelarChainInfo, AxelarRelayerService, startChains } from './index'; +import { SigningStargateClient } from '@cosmjs/stargate'; +import { encode } from '@metamask/abi-utils'; + +import { + evmRelayer, + createNetwork, + deployContract, + relay, + RelayerType, +} from '@axelar-network/axelar-local-dev'; + +import SendReceive from '../artifacts/src/__tests__/contracts/SendReceive.sol/SendReceive.json'; + +export const relayDataToEth = async () => { + // Start both Axelar and Wasm Chains + // await startChains(); + + // Initialize the Axelar Relayer Service with default configuration + const axelarRelayer = await AxelarRelayerService.create( + defaultAxelarChainInfo + ); + + const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); + const ethereumContract = await deployContract( + ethereumNetwork.userWallets[0], + SendReceive, + [ + ethereumNetwork.gateway.address, + ethereumNetwork.gasService.address, + 'Ethereum', + ] + ); + + const ibcRelayer = axelarRelayer.ibcRelayer; + + console.log('IBC RELAYER', JSON.stringify(ibcRelayer.srcChannelId)); + + const IBC_DENOM_AXL_USDC = + 'ubld'; + // 'ibc/295548A78785A1007F232DE286149A6FF512F180AF5657780FC89C009E2C348F'; + const AMOUNT_IN_ATOMIC_UNITS = '1000000'; + const CHANNEL_ID = ibcRelayer.srcChannelId; + const DENOM = 'ubld'; + const AXELAR_GMP_ADDRESS = + 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5'; + + const signer = ibcRelayer.wasmClient; + const senderAddress = 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl'; + + // TODO + const DESTINATION_ADDRESS = ethereumContract.address; + const DESTINATION_CHAIN = 'Ethereum'; + + const payload = encode(['string', 'string'], ['agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', 'Hello, world!']); + + const memo = { + destination_chain: DESTINATION_CHAIN, + destination_address: DESTINATION_ADDRESS, + payload: Array.from(payload), + fee: null, + type: 1, + }; + + const message = [ + { + typeUrl: '/ibc.applications.transfer.v1.MsgTransfer', + value: { + sender: senderAddress, + receiver: AXELAR_GMP_ADDRESS, + token: { + denom: IBC_DENOM_AXL_USDC, + amount: AMOUNT_IN_ATOMIC_UNITS, + }, + timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, + sourceChannel: CHANNEL_ID, + sourcePort: 'transfer', + memo: JSON.stringify(memo), + }, + }, + ]; + + + const fee = { + gas: '250000', + amount: [{ denom: DENOM, amount: '30000' }], + }; + + console.log('Preparing to send tokens...'); + const signingClient = await SigningStargateClient.connectWithSigner( + 'http://localhost/agoric-rpc', + signer.owner + ); + // Set up the Relayer for Wasm Chain + evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); + + console.log('Sending transaction...', message); + const response = await signingClient.signAndBroadcast( + senderAddress, + message, + fee + ); + console.log('transaction response', response); + + // Relay messages between Ethereum and Agoric chains + await relay({ + agoric: axelarRelayer, + evm: evmRelayer, + }); + + // Setup for Ethereum Network and Wasm chain relayer + // + + // // Deploy Smart Contract on the EVM (Ethereum Virtual Machine) + // // const ethereumContract = await deployContract( + // // ethereumNetwork.userWallets[0], + // // SendReceive, + // // [ + // // ethereumNetwork.gateway.address, + // // ethereumNetwork.gasService.address, + // // 'Ethereum', + // // ] + // // ); + + // // Deploy Contract on the Wasm Chain + // const wasmFilePath = path.resolve(__dirname, '../wasm/send_receive.wasm'); + // const wasmUploadResponse = await wasmClient1.uploadWasm(wasmFilePath); + + // // Instantiate the Wasm Contract + // const { client: wasmClient, address: wasmSenderAddress } = + // await wasmClient1.createFundedSigningClient(); + + // const wasmContractInstantiation = await wasmClient.instantiate( + // wasmSenderAddress, + // wasmUploadResponse.codeId, + // { + // channel: ibcRelayer.srcChannelId, + // }, + // 'send_receive', + // 'auto' + // ); + // // ============ SETUP END ============ + + // const messageToEthereum = 'Hello from Ethereum'; + // const messageToWasm = 'Hello from Wasm'; + + // // Send a message from Wasm Chain to Ethereum Chain + // const wasmTransaction = await wasmClient.execute( + // wasmSenderAddress, + // wasmContractInstantiation.contractAddress, + // { + // send_message_evm: { + // destination_chain: 'Ethereum', + // destination_address: ethereumContract.address, + // message: messageToWasm, + // }, + // }, + // 'auto', + // 'test', + // [{ amount: '100000', denom: 'uwasm' }] + // ); + // console.log('Wasm Chain Transaction Hash:', wasmTransaction.transactionHash); + + // // Send a message from Ethereum Chain to Wasm Chain + // const ethereumTransaction = await ethereumContract.send( + // 'agoric', + // wasmContractInstantiation.contractAddress, + // messageToEthereum, + // { + // value: ethers.utils.parseEther('0.001'), + // } + // ); + // console.log('Ethereum Chain Transaction Hash:', ethereumTransaction.hash); + + + + // // Verify the message on the Ethereum contract + const ethereumMessage = await ethereumContract.storedMessage(); + console.log('Message on Ethereum Contract:', ethereumMessage); + + // // Verify the message on the Wasm contract + // const wasmResponse = await wasmClient1.client.queryContractSmart( + // wasmContractInstantiation.contractAddress, + // { + // get_stored_message: {}, + // } + // ); + + // console.log('Message on Wasm Contract:', wasmResponse); +}; diff --git a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts index ee0c4cfa..f19493a1 100644 --- a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts @@ -41,7 +41,7 @@ export class AxelarRelayerService extends Relayer { ibcRelayer?: IBCRelayerService ) { const axelarListener = new AxelarListener(axelarConfig); - const wasmClient = await CosmosClient.create("wasm"); + const wasmClient = await CosmosClient.create("agoric"); const _ibcRelayer = ibcRelayer || (await IBCRelayerService.create()); await _ibcRelayer.createIBCChannelIfNeeded(); @@ -65,6 +65,7 @@ export class AxelarRelayerService extends Relayer { } private async handleContractCallEvent(args: any) { + console.log('fraz1', args) this.updateCallContractEvents(args); await this.execute(this.commands); } @@ -81,7 +82,7 @@ export class AxelarRelayerService extends Relayer { } private async executeEvmToWasm(command: RelayCommand) { - const toExecute = command["wasm"]; + const toExecute = command["agoric"]; if (!toExecute || toExecute?.length === 0) return; await this.executeWasmExecutable(toExecute); @@ -142,7 +143,7 @@ export class AxelarRelayerService extends Relayer { ) { const { args } = event; const contractCallArgs: CallContractArgs = { - from: "wasm", + from: "agoric", to: args.destinationChain, sourceAddress: args.sender, destinationContractAddress: args.contractAddress, diff --git a/packages/axelar-local-dev-cosmos/src/services/DockerService.ts b/packages/axelar-local-dev-cosmos/src/services/DockerService.ts index a79e6e93..2882cad9 100644 --- a/packages/axelar-local-dev-cosmos/src/services/DockerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/DockerService.ts @@ -4,26 +4,26 @@ import { execSync } from "child_process"; import { logger } from "@axelar-network/axelar-local-dev"; import { IDockerComposeOptions, v2 as compose, ps } from "docker-compose"; import { CosmosChain, ChainConfig, CosmosChainInfo } from "../types"; -import { defaultAxelarConfig, defaultWasmConfig } from "../config"; +import { defaultAxelarConfig, defaultAgoricConfig } from "../config"; import { Path } from "../path"; import { retry, exportOwnerAccountFromContainer } from "../utils"; export class DockerService { private axelarConfig: ChainConfig; - private wasmConfig: ChainConfig; + private agoricConfig: ChainConfig; constructor(axelarConfig?: ChainConfig, wasmConfig?: ChainConfig) { this.axelarConfig = axelarConfig || defaultAxelarConfig; - this.wasmConfig = wasmConfig || defaultWasmConfig; + this.agoricConfig = wasmConfig || defaultAgoricConfig; } async startChains() { await this.startTraefik(); - const [axelar, wasm] = await Promise.all([ + const [axelar, agoric] = await Promise.all([ this.start("axelar", this.axelarConfig), - this.start("wasm", this.wasmConfig), + this.start("agoric", this.agoricConfig), ]); - return [axelar, wasm]; + return [axelar, agoric]; } async start( @@ -82,7 +82,7 @@ export class DockerService { await retry(async () => { logger.log("Stopping all containers..."); await this.stop("axelar"); - await this.stop("wasm"); + await this.stop("agoric"); await this.stopTraefik(); logger.log("All containers stopped"); }); @@ -112,11 +112,11 @@ export class DockerService { } private getChainDenom(chain: CosmosChain): string { - return chain === "axelar" ? "uaxl" : "uwasm"; + return chain === "axelar" ? "uaxl" : "ubld"; } private getChainConfig(chain: CosmosChain): ChainConfig { - return chain === "axelar" ? defaultAxelarConfig : defaultWasmConfig; + return chain === "axelar" ? defaultAxelarConfig : defaultAgoricConfig; } async waitForRpc(chain: CosmosChain, timeout = 120000): Promise { @@ -139,7 +139,6 @@ export class DockerService { throw new Error(`${chain} rpc server failed to start in ${timeout}ms`); } } - async waitForLcd(chain: CosmosChain, timeout = 60000): Promise { const testUrl = "cosmos/base/tendermint/v1beta1/node_info"; const start = Date.now(); @@ -150,7 +149,7 @@ export class DockerService { try { result = await fetch(url).then((res: any) => res.json()); network = result.default_node_info.network; - if (network === chain) { + if (network.startsWith(chain)) { break; } } catch (e) { @@ -158,7 +157,7 @@ export class DockerService { } await new Promise((resolve) => setTimeout(resolve, interval)); } - if (network !== chain) { + if (!network.startsWith(chain)) { throw new Error(`${chain} lcd server failed to start in ${timeout}ms`); } } diff --git a/packages/axelar-local-dev-cosmos/src/services/IBCRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/IBCRelayerService.ts index 2c61cdc9..afb9c902 100644 --- a/packages/axelar-local-dev-cosmos/src/services/IBCRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/IBCRelayerService.ts @@ -19,11 +19,11 @@ export class IBCRelayerService { } static async create(testMnemonic?: string) { - const wasmClient = await CosmosClient.create("wasm"); + const agoricClient = await CosmosClient.create("agoric"); const axelarClient = await CosmosClient.create("axelar"); const relayerClient = await IBCRelayerClient.create(testMnemonic); - return new IBCRelayerService(wasmClient, axelarClient, relayerClient); + return new IBCRelayerService(agoricClient, axelarClient, relayerClient); } public async relay() { diff --git a/packages/axelar-local-dev-cosmos/src/types.ts b/packages/axelar-local-dev-cosmos/src/types.ts index e9e41429..1238502b 100644 --- a/packages/axelar-local-dev-cosmos/src/types.ts +++ b/packages/axelar-local-dev-cosmos/src/types.ts @@ -20,7 +20,7 @@ export type ChainConfig = { onCompleted: (chainInfo: CosmosChainInfo) => void; }; -export type CosmosChain = "axelar" | "wasm"; +export type CosmosChain = "axelar" | "wasm" | "agoric"; export type ChainDenom = T extends "axelar" ? "uaxl" diff --git a/packages/axelar-local-dev/src/relay/Relayer.ts b/packages/axelar-local-dev/src/relay/Relayer.ts index 4a2cf225..85eacc73 100644 --- a/packages/axelar-local-dev/src/relay/Relayer.ts +++ b/packages/axelar-local-dev/src/relay/Relayer.ts @@ -8,6 +8,7 @@ export enum RelayerType { Aptos = 'aptos', Near = 'near', Wasm = 'wasm', + Agoric = 'agoric', MultiversX = 'multiversx', } export type RelayerMap = Partial> & { [key: string]: Relayer | undefined }; @@ -46,6 +47,7 @@ export abstract class Relayer { this.commands['sui'] = []; this.commands['near'] = []; this.commands['wasm'] = []; + this.commands['agoric'] = []; this.commands['multiversx'] = []; // Update all events at the source chains await this.updateEvents(); From 00569902372a882c5a9724e8c2dcf7d38d354fe2 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Fri, 17 Jan 2025 15:00:27 +0500 Subject: [PATCH 02/93] minor updates --- package-lock.json | 6 ------ .../docker/agoric/bin/init_agoric.sh | 1 - .../docker/agoric/docker-compose.yaml | 4 +++- packages/axelar-local-dev-cosmos/scripts/relay.ts | 2 +- packages/axelar-local-dev-cosmos/src/Command.ts | 14 +++----------- .../src/clients/cosmos/CosmosClient.ts | 2 +- .../src/{replayToEth.ts => relayToEth.ts} | 3 ++- 7 files changed, 10 insertions(+), 22 deletions(-) rename packages/axelar-local-dev-cosmos/src/{replayToEth.ts => relayToEth.ts} (98%) diff --git a/package-lock.json b/package-lock.json index 11756f6d..14e20c29 100644 --- a/package-lock.json +++ b/package-lock.json @@ -34164,7 +34164,6 @@ "@metamask/abi-utils": "^3.0.0", "@types/sinon": "^17.0.2", "bech32": "^2.0.0", - "cosmjs-types": "^0.9.0", "docker-compose": "^0.24.3", "node-fetch": "^2.7.0", "reconnecting-websocket": "^4.4.0", @@ -34182,11 +34181,6 @@ "version": "2.0.0", "license": "MIT" }, - "packages/axelar-local-dev-cosmos/node_modules/cosmjs-types": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/cosmjs-types/-/cosmjs-types-0.9.0.tgz", - "integrity": "sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ==" - }, "packages/axelar-local-dev-cosmos/node_modules/node-fetch": { "version": "2.7.0", "license": "MIT", diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh index cc29d122..e6d34ab4 100755 --- a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh +++ b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh @@ -7,7 +7,6 @@ HOME=/root/private/.agoric # Removing the existing directory to start with a clean slate rm -rf ${HOME}/* - mnemonic="soap hub stick bomb dish index wing shield cruel board siren force glory assault rotate busy area topple resource okay clown wedding hint unhappy" echo ${mnemonic} | tr -d "\n" > ${HOME}/mnemonic.txt echo "Added new key 'owner'" diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml index ad3f1589..ed7f9039 100644 --- a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml @@ -3,7 +3,9 @@ services: agoric: image: ghcr.io/agoric/agoric-3-proposals:latest container_name: agoric - command: "/root/private/bin/init_agoric.sh" + entrypoint: ["/bin/sh", "-c", "/root/private/bin/init_agoric.sh && exec \"$@\"", "--"] + command: ["/bin/bash", "-c", "./start_agd.sh"] + # entrypoint: "/root/private/bin/init_agoric.sh && /bin/bash -c ./start_agd.sh" volumes: - "./bin:/root/private/bin" - "./.agoric:/root/private/.agoric" diff --git a/packages/axelar-local-dev-cosmos/scripts/relay.ts b/packages/axelar-local-dev-cosmos/scripts/relay.ts index ba263873..a8dc8fcd 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relay.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relay.ts @@ -1,3 +1,3 @@ -import { relayDataToEth } from "../src/runs"; +import { relayDataToEth } from "../src/relayToEth"; relayDataToEth(); diff --git a/packages/axelar-local-dev-cosmos/src/Command.ts b/packages/axelar-local-dev-cosmos/src/Command.ts index 0032d597..59c26292 100644 --- a/packages/axelar-local-dev-cosmos/src/Command.ts +++ b/packages/axelar-local-dev-cosmos/src/Command.ts @@ -5,7 +5,6 @@ const { defaultAbiCoder } = ethers.utils; import { CallContractArgs, RelayData } from "@axelar-network/axelar-local-dev"; import { decodeVersionedPayload } from "./utils"; import { CosmosClient } from "./clients"; -import { ExecuteResult } from "@cosmjs/cosmwasm-stargate"; //An internal class for handling axelar commands. export class Command { @@ -20,7 +19,7 @@ export class Command { name: string, data: any[], dataSignature: string[], - post: (wasmClient: CosmosClient) => Promise, + post: (wasmClient: CosmosClient) => Promise, chain: string | null = null ) { this.commandId = commandId; @@ -65,16 +64,9 @@ export class Command { }, }; - const tx = await client.execute( - senderAddress, - args.destinationContractAddress, - msg, - "auto", - "call_contract: evm_to_wasm", - [{ amount: "100000", denom: wasmClient.chainInfo.denom }] - ); + const tx = "TODO" - relayData.callContract[commandId].execution = tx.transactionHash; + // relayData.callContract[commandId].execution = tx.transactionHash; return tx; }, diff --git a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts index 9fa92700..0d5a756c 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts @@ -67,7 +67,7 @@ export class CosmosClient { const hdPath = (coinType = 118, account = 0) => stringToPath(`m/44'/${coinType}'/${account}'/0/0`); - return DirectSecp256k1HdWallet.fromMnemonic(_mnemonic, { + return DirectSecp256k1HdWallet.fromMnemonic(_mnemonic || '', { prefix: Agoric.Bech32MainPrefix, hdPaths: [hdPath(Agoric.CoinType, 0), hdPath(Agoric.CoinType, 1)], }); diff --git a/packages/axelar-local-dev-cosmos/src/replayToEth.ts b/packages/axelar-local-dev-cosmos/src/relayToEth.ts similarity index 98% rename from packages/axelar-local-dev-cosmos/src/replayToEth.ts rename to packages/axelar-local-dev-cosmos/src/relayToEth.ts index 69092c8e..0bd6204c 100644 --- a/packages/axelar-local-dev-cosmos/src/replayToEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayToEth.ts @@ -10,7 +10,6 @@ import { RelayerType, } from '@axelar-network/axelar-local-dev'; -import SendReceive from '../artifacts/src/__tests__/contracts/SendReceive.sol/SendReceive.json'; export const relayDataToEth = async () => { // Start both Axelar and Wasm Chains @@ -21,6 +20,8 @@ export const relayDataToEth = async () => { defaultAxelarChainInfo ); + const SendReceive = require('../artifacts/src/__tests__/contracts/SendReceive.sol/SendReceive.json'); + const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); const ethereumContract = await deployContract( ethereumNetwork.userWallets[0], From 813e3a0b23a9cbef41d377724bf17cf3195acd17 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Fri, 17 Jan 2025 15:23:07 +0500 Subject: [PATCH 03/93] update readme --- packages/axelar-local-dev-cosmos/README.md | 107 ++++++------------ .../axelar-local-dev-cosmos/README_OLD.md | 84 ++++++++++++++ 2 files changed, 118 insertions(+), 73 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/README_OLD.md diff --git a/packages/axelar-local-dev-cosmos/README.md b/packages/axelar-local-dev-cosmos/README.md index 6c145c3f..d24d12bd 100644 --- a/packages/axelar-local-dev-cosmos/README.md +++ b/packages/axelar-local-dev-cosmos/README.md @@ -1,84 +1,45 @@ -# Axelar Local Dev Cosmos +# Agoric <=> EVM -Axelar Local Dev Cosmos offers a comprehensive suite of tools for local development involving Cosmos chains. With this package, developers can easily deploy WebAssembly (Wasm) contracts on a Wasm chain and seamlessly send cross-chain messages to the Ethereum Virtual Machine (EVM) chain. +This updates the `axelar-local-dev` repository to use agoric chain instead of wasm chain in `agoric-local-dev-cosmos` package. -> **Note:** This package is currently under development. Some functionalities might be unstable. +This repository does not demonstrate a token trasnfer to eth but rather a message transfer -## Prerequisite - -- Docker installed and running on your local machine. - -## Quick Start - -### Start Wasm and Axelar Chain - -Run the following command to pull the Docker image, set up the chains, and establish IBC connections: +## Steps to run +- In root of the workspace run: ```bash -npm run start + npm install + npm run build ``` - -Alternatively, you can start the chains programmatically: - -```ts -import { startChains } from "@axelar-network/axelar-local-dev-cosmos"; - -startChains(); +- Change to `axelar-local-dev-cosmos` dir +```bash + cd packages/axelar-local-dev-cosmos ``` - -## Running IBC Relayer and Axelar Event Listener - -After setting up the chains, follow these steps to run the IBC Relayer and Axelar Event Listener: - -**Create Axelar Relayer Service** for initailizing the IBC channels and keep listening to incoming events: - -```ts -import { - defaultAxelarChainInfo, - AxelarRelayerService, -} from "@axelar-network/axelar-local-dev-cosmos"; - -const axelarRelayerService = await AxelarRelayerService.create( - defaultAxelarChainInfo -); +- start the agoric and axelar chains using: +```bash + npm run start ``` - -## Relaying Messages - -To relay messages after they have been submitted on the Ethereum or Wasm chains, use the following method: - -```ts -import { - evmRelayer, - createNetwork, - relay, - RelayerType, -} from "@axelar-network/axelar-local-dev"; -import { - defaultAxelarChainInfo, - AxelarRelayerService, -} from "@axelar-network/axelar-local-dev-cosmos"; - -// Setup for Ethereum Network and Wasm chain relayer -const evmNetwork = await createNetwork({ name: "Ethereum" }); -const wasmRelayer = await AxelarRelayerService.create(defaultAxelarChainInfo); - -// Deploy contracts, send messages, and call the relay function -// ... - -evmRelayer.setRelayer(RelayerType.Wasm, wasmRelayer); -await relay({ - wasm: wasmRelayer, - evm: evmRelayer, -}); - -// Verify results on the destination chain -// ... +- start the relaying process using +```bash + npm run relay +``` +- you should see this in the logs: +``` +Message on Ethereum Contract: [ + 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', + 'Hello, world!', + sender: 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', + message: 'Hello, world!' +] ``` -### Examples - -- We currently support `Ethereum` as the destination chain for messages originating from the Wasm chain. -- For implementation details, see our [Local Example](docs/example.md) and [Axelar Example](https://github.com/axelarnetwork/axelar-examples/tree/feat/add-cosmos-examples/examples/cosmos/call-contract). +> **Note:** the `npm run relay` command will not exit by itself after receiving the message on ethereum and must be manually exited) +## Main file +The main file to look out for is the `packages/axelar-local-dev-cosmos/src/relayToEth.ts` in which the majority of the work is being done. -> The Local Example utilizes the same contracts as in the Axelar Examples. +This file is responsible for +- starting up an ethereum chain instance +- adding a solidity contract to that instance (which receives the message from cosmos) +- setting up a relayer between axelar and ethereum + axelar and agoric +- sending an IBC transaction from agoric to axelar +- finally, relaying the packets from agoric <=> axelar <=> ethereum diff --git a/packages/axelar-local-dev-cosmos/README_OLD.md b/packages/axelar-local-dev-cosmos/README_OLD.md new file mode 100644 index 00000000..6c145c3f --- /dev/null +++ b/packages/axelar-local-dev-cosmos/README_OLD.md @@ -0,0 +1,84 @@ +# Axelar Local Dev Cosmos + +Axelar Local Dev Cosmos offers a comprehensive suite of tools for local development involving Cosmos chains. With this package, developers can easily deploy WebAssembly (Wasm) contracts on a Wasm chain and seamlessly send cross-chain messages to the Ethereum Virtual Machine (EVM) chain. + +> **Note:** This package is currently under development. Some functionalities might be unstable. + +## Prerequisite + +- Docker installed and running on your local machine. + +## Quick Start + +### Start Wasm and Axelar Chain + +Run the following command to pull the Docker image, set up the chains, and establish IBC connections: + +```bash +npm run start +``` + +Alternatively, you can start the chains programmatically: + +```ts +import { startChains } from "@axelar-network/axelar-local-dev-cosmos"; + +startChains(); +``` + +## Running IBC Relayer and Axelar Event Listener + +After setting up the chains, follow these steps to run the IBC Relayer and Axelar Event Listener: + +**Create Axelar Relayer Service** for initailizing the IBC channels and keep listening to incoming events: + +```ts +import { + defaultAxelarChainInfo, + AxelarRelayerService, +} from "@axelar-network/axelar-local-dev-cosmos"; + +const axelarRelayerService = await AxelarRelayerService.create( + defaultAxelarChainInfo +); +``` + +## Relaying Messages + +To relay messages after they have been submitted on the Ethereum or Wasm chains, use the following method: + +```ts +import { + evmRelayer, + createNetwork, + relay, + RelayerType, +} from "@axelar-network/axelar-local-dev"; +import { + defaultAxelarChainInfo, + AxelarRelayerService, +} from "@axelar-network/axelar-local-dev-cosmos"; + +// Setup for Ethereum Network and Wasm chain relayer +const evmNetwork = await createNetwork({ name: "Ethereum" }); +const wasmRelayer = await AxelarRelayerService.create(defaultAxelarChainInfo); + +// Deploy contracts, send messages, and call the relay function +// ... + +evmRelayer.setRelayer(RelayerType.Wasm, wasmRelayer); +await relay({ + wasm: wasmRelayer, + evm: evmRelayer, +}); + +// Verify results on the destination chain +// ... +``` + +### Examples + +- We currently support `Ethereum` as the destination chain for messages originating from the Wasm chain. +- For implementation details, see our [Local Example](docs/example.md) and [Axelar Example](https://github.com/axelarnetwork/axelar-examples/tree/feat/add-cosmos-examples/examples/cosmos/call-contract). + +> The Local Example utilizes the same contracts as in the Axelar Examples. From 4b379f530bfc7a06ead87d3b5768ef7392e57a1e Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Fri, 17 Jan 2025 15:31:03 +0500 Subject: [PATCH 04/93] readme fix --- README.md | 81 ++++++------- README_OLD.md | 52 +++++++++ packages/axelar-local-dev-cosmos/README.md | 107 ++++++++++++------ .../axelar-local-dev-cosmos/README_OLD.md | 84 -------------- 4 files changed, 162 insertions(+), 162 deletions(-) create mode 100644 README_OLD.md delete mode 100644 packages/axelar-local-dev-cosmos/README_OLD.md diff --git a/README.md b/README.md index e1045933..d24d12bd 100644 --- a/README.md +++ b/README.md @@ -1,52 +1,45 @@ -# Axelar Local Cross-Chain Dev Environment +# Agoric <=> EVM -Welcome to the Axelar Local Development Environment! This monorepo contains essential packages to facilitate local cross-chain development: +This updates the `axelar-local-dev` repository to use agoric chain instead of wasm chain in `agoric-local-dev-cosmos` package. -- **Core Package**: [@axelar-network/axelar-local-dev](./packages/axelar-local-dev/) -- **Optional Packages**: - - [@axelar-network/axelar-local-dev-aptos](./packages/axelar-local-dev-aptos/) - - [@axelar-network/axelar-local-dev-near](./packages/axelar-local-dev-near/) - - [@axelar-network/axelar-local-dev-sui](./packages/axelar-local-dev-sui/) - - [@axelar-network/axelar-local-dev-cosmos](./packages/axelar-local-dev-cosmos/) - - [@axelar-network/axelar-local-dev-multiversx](./packages/axelar-local-dev-multiversx/) +This repository does not demonstrate a token trasnfer to eth but rather a message transfer -The `axelar-local-dev` package is all you need for cross-chain applications between EVM chains. However, if you wish to explore cross-chain applications between EVM chains and other chain stacks, check out our specific guides: - -- [EVM <-> Aptos Integration Guide](./packages/axelar-local-dev-aptos/README.md#configuration) -- [EVM <-> Near Integration Guide](./packages/axelar-local-dev-near/README.md#configuration) -- [Evm <-> Sui Integration Guide](./packages/axelar-local-dev-sui/README.md) -- [Evm <-> Cosmos Integration Guide](./packages/axelar-local-dev-cosmos/README.md) -- [EVM <-> MultiversX Integration Guide](./packages/axelar-local-dev-multiversx/README.md#configuration) - -## Prerequisites - -- This project is developed with Ethers.js version 5. Please note that it may not function correctly if you are using Ethers.js version 6 or later. It is recommended to use version 5 to ensure compatibility and proper operation of the project. - -## Installation - -To install the core package, use the following command: +## Steps to run +- In root of the workspace run: ```bash -npm install @axelar-network/axelar-local-dev + npm install + npm run build +``` +- Change to `axelar-local-dev-cosmos` dir +```bash + cd packages/axelar-local-dev-cosmos +``` +- start the agoric and axelar chains using: +```bash + npm run start +``` +- start the relaying process using +```bash + npm run relay +``` +- you should see this in the logs: +``` +Message on Ethereum Contract: [ + 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', + 'Hello, world!', + sender: 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', + message: 'Hello, world!' +] ``` -## Practical Examples - -Visit our [axelar-examples repo](https://github.com/axelarnetwork/axelar-examples/) repository to see practical applications of this local development environment. - -## Usage & Documentation - -- [Executing Cross-Chain Transactions Guide](./docs/guide_basic.md) -- [Setting Up a Standalone Cross-Chain Environment](./docs/guide_create_and_exports.md) -- [API Reference](./docs/api_reference.md) - -## Supported Chain Stacks - -We currently support the following chain stacks: +> **Note:** the `npm run relay` command will not exit by itself after receiving the message on ethereum and must be manually exited) +## Main file +The main file to look out for is the `packages/axelar-local-dev-cosmos/src/relayToEth.ts` in which the majority of the work is being done. -- [EVM](./packages/axelar-local-dev/) -- [Aptos](./packages/axelar-local-dev-aptos/) -- [Near](./packages/axelar-local-dev-near/) -- [Sui](./packages/axelar-local-dev-sui/) -- [Cosmos](./packages/axelar-local-dev-cosmos/) -- [MultiversX](./packages/axelar-local-dev-multiversx/) +This file is responsible for +- starting up an ethereum chain instance +- adding a solidity contract to that instance (which receives the message from cosmos) +- setting up a relayer between axelar and ethereum + axelar and agoric +- sending an IBC transaction from agoric to axelar +- finally, relaying the packets from agoric <=> axelar <=> ethereum diff --git a/README_OLD.md b/README_OLD.md new file mode 100644 index 00000000..e1045933 --- /dev/null +++ b/README_OLD.md @@ -0,0 +1,52 @@ +# Axelar Local Cross-Chain Dev Environment + +Welcome to the Axelar Local Development Environment! This monorepo contains essential packages to facilitate local cross-chain development: + +- **Core Package**: [@axelar-network/axelar-local-dev](./packages/axelar-local-dev/) +- **Optional Packages**: + - [@axelar-network/axelar-local-dev-aptos](./packages/axelar-local-dev-aptos/) + - [@axelar-network/axelar-local-dev-near](./packages/axelar-local-dev-near/) + - [@axelar-network/axelar-local-dev-sui](./packages/axelar-local-dev-sui/) + - [@axelar-network/axelar-local-dev-cosmos](./packages/axelar-local-dev-cosmos/) + - [@axelar-network/axelar-local-dev-multiversx](./packages/axelar-local-dev-multiversx/) + +The `axelar-local-dev` package is all you need for cross-chain applications between EVM chains. However, if you wish to explore cross-chain applications between EVM chains and other chain stacks, check out our specific guides: + +- [EVM <-> Aptos Integration Guide](./packages/axelar-local-dev-aptos/README.md#configuration) +- [EVM <-> Near Integration Guide](./packages/axelar-local-dev-near/README.md#configuration) +- [Evm <-> Sui Integration Guide](./packages/axelar-local-dev-sui/README.md) +- [Evm <-> Cosmos Integration Guide](./packages/axelar-local-dev-cosmos/README.md) +- [EVM <-> MultiversX Integration Guide](./packages/axelar-local-dev-multiversx/README.md#configuration) + +## Prerequisites + +- This project is developed with Ethers.js version 5. Please note that it may not function correctly if you are using Ethers.js version 6 or later. It is recommended to use version 5 to ensure compatibility and proper operation of the project. + +## Installation + +To install the core package, use the following command: + +```bash +npm install @axelar-network/axelar-local-dev +``` + +## Practical Examples + +Visit our [axelar-examples repo](https://github.com/axelarnetwork/axelar-examples/) repository to see practical applications of this local development environment. + +## Usage & Documentation + +- [Executing Cross-Chain Transactions Guide](./docs/guide_basic.md) +- [Setting Up a Standalone Cross-Chain Environment](./docs/guide_create_and_exports.md) +- [API Reference](./docs/api_reference.md) + +## Supported Chain Stacks + +We currently support the following chain stacks: + +- [EVM](./packages/axelar-local-dev/) +- [Aptos](./packages/axelar-local-dev-aptos/) +- [Near](./packages/axelar-local-dev-near/) +- [Sui](./packages/axelar-local-dev-sui/) +- [Cosmos](./packages/axelar-local-dev-cosmos/) +- [MultiversX](./packages/axelar-local-dev-multiversx/) diff --git a/packages/axelar-local-dev-cosmos/README.md b/packages/axelar-local-dev-cosmos/README.md index d24d12bd..6c145c3f 100644 --- a/packages/axelar-local-dev-cosmos/README.md +++ b/packages/axelar-local-dev-cosmos/README.md @@ -1,45 +1,84 @@ -# Agoric <=> EVM +# Axelar Local Dev Cosmos -This updates the `axelar-local-dev` repository to use agoric chain instead of wasm chain in `agoric-local-dev-cosmos` package. +Axelar Local Dev Cosmos offers a comprehensive suite of tools for local development involving Cosmos chains. With this package, developers can easily deploy WebAssembly (Wasm) contracts on a Wasm chain and seamlessly send cross-chain messages to the Ethereum Virtual Machine (EVM) chain. -This repository does not demonstrate a token trasnfer to eth but rather a message transfer +> **Note:** This package is currently under development. Some functionalities might be unstable. -## Steps to run +## Prerequisite + +- Docker installed and running on your local machine. + +## Quick Start + +### Start Wasm and Axelar Chain + +Run the following command to pull the Docker image, set up the chains, and establish IBC connections: -- In root of the workspace run: -```bash - npm install - npm run build -``` -- Change to `axelar-local-dev-cosmos` dir -```bash - cd packages/axelar-local-dev-cosmos -``` -- start the agoric and axelar chains using: ```bash - npm run start +npm run start ``` -- start the relaying process using -```bash - npm run relay + +Alternatively, you can start the chains programmatically: + +```ts +import { startChains } from "@axelar-network/axelar-local-dev-cosmos"; + +startChains(); ``` -- you should see this in the logs: + +## Running IBC Relayer and Axelar Event Listener + +After setting up the chains, follow these steps to run the IBC Relayer and Axelar Event Listener: + +**Create Axelar Relayer Service** for initailizing the IBC channels and keep listening to incoming events: + +```ts +import { + defaultAxelarChainInfo, + AxelarRelayerService, +} from "@axelar-network/axelar-local-dev-cosmos"; + +const axelarRelayerService = await AxelarRelayerService.create( + defaultAxelarChainInfo +); ``` -Message on Ethereum Contract: [ - 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', - 'Hello, world!', - sender: 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', - message: 'Hello, world!' -] + +## Relaying Messages + +To relay messages after they have been submitted on the Ethereum or Wasm chains, use the following method: + +```ts +import { + evmRelayer, + createNetwork, + relay, + RelayerType, +} from "@axelar-network/axelar-local-dev"; +import { + defaultAxelarChainInfo, + AxelarRelayerService, +} from "@axelar-network/axelar-local-dev-cosmos"; + +// Setup for Ethereum Network and Wasm chain relayer +const evmNetwork = await createNetwork({ name: "Ethereum" }); +const wasmRelayer = await AxelarRelayerService.create(defaultAxelarChainInfo); + +// Deploy contracts, send messages, and call the relay function +// ... + +evmRelayer.setRelayer(RelayerType.Wasm, wasmRelayer); +await relay({ + wasm: wasmRelayer, + evm: evmRelayer, +}); + +// Verify results on the destination chain +// ... ``` -> **Note:** the `npm run relay` command will not exit by itself after receiving the message on ethereum and must be manually exited) -## Main file -The main file to look out for is the `packages/axelar-local-dev-cosmos/src/relayToEth.ts` in which the majority of the work is being done. +### Examples + +- We currently support `Ethereum` as the destination chain for messages originating from the Wasm chain. +- For implementation details, see our [Local Example](docs/example.md) and [Axelar Example](https://github.com/axelarnetwork/axelar-examples/tree/feat/add-cosmos-examples/examples/cosmos/call-contract). -This file is responsible for -- starting up an ethereum chain instance -- adding a solidity contract to that instance (which receives the message from cosmos) -- setting up a relayer between axelar and ethereum + axelar and agoric -- sending an IBC transaction from agoric to axelar -- finally, relaying the packets from agoric <=> axelar <=> ethereum +> The Local Example utilizes the same contracts as in the Axelar Examples. diff --git a/packages/axelar-local-dev-cosmos/README_OLD.md b/packages/axelar-local-dev-cosmos/README_OLD.md deleted file mode 100644 index 6c145c3f..00000000 --- a/packages/axelar-local-dev-cosmos/README_OLD.md +++ /dev/null @@ -1,84 +0,0 @@ -# Axelar Local Dev Cosmos - -Axelar Local Dev Cosmos offers a comprehensive suite of tools for local development involving Cosmos chains. With this package, developers can easily deploy WebAssembly (Wasm) contracts on a Wasm chain and seamlessly send cross-chain messages to the Ethereum Virtual Machine (EVM) chain. - -> **Note:** This package is currently under development. Some functionalities might be unstable. - -## Prerequisite - -- Docker installed and running on your local machine. - -## Quick Start - -### Start Wasm and Axelar Chain - -Run the following command to pull the Docker image, set up the chains, and establish IBC connections: - -```bash -npm run start -``` - -Alternatively, you can start the chains programmatically: - -```ts -import { startChains } from "@axelar-network/axelar-local-dev-cosmos"; - -startChains(); -``` - -## Running IBC Relayer and Axelar Event Listener - -After setting up the chains, follow these steps to run the IBC Relayer and Axelar Event Listener: - -**Create Axelar Relayer Service** for initailizing the IBC channels and keep listening to incoming events: - -```ts -import { - defaultAxelarChainInfo, - AxelarRelayerService, -} from "@axelar-network/axelar-local-dev-cosmos"; - -const axelarRelayerService = await AxelarRelayerService.create( - defaultAxelarChainInfo -); -``` - -## Relaying Messages - -To relay messages after they have been submitted on the Ethereum or Wasm chains, use the following method: - -```ts -import { - evmRelayer, - createNetwork, - relay, - RelayerType, -} from "@axelar-network/axelar-local-dev"; -import { - defaultAxelarChainInfo, - AxelarRelayerService, -} from "@axelar-network/axelar-local-dev-cosmos"; - -// Setup for Ethereum Network and Wasm chain relayer -const evmNetwork = await createNetwork({ name: "Ethereum" }); -const wasmRelayer = await AxelarRelayerService.create(defaultAxelarChainInfo); - -// Deploy contracts, send messages, and call the relay function -// ... - -evmRelayer.setRelayer(RelayerType.Wasm, wasmRelayer); -await relay({ - wasm: wasmRelayer, - evm: evmRelayer, -}); - -// Verify results on the destination chain -// ... -``` - -### Examples - -- We currently support `Ethereum` as the destination chain for messages originating from the Wasm chain. -- For implementation details, see our [Local Example](docs/example.md) and [Axelar Example](https://github.com/axelarnetwork/axelar-examples/tree/feat/add-cosmos-examples/examples/cosmos/call-contract). - -> The Local Example utilizes the same contracts as in the Axelar Examples. From 58a94b8f6c8057cea5ab54b10df7132f77e6fc2b Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Mon, 17 Feb 2025 17:53:17 +0500 Subject: [PATCH 05/93] relayer modified --- package-lock.json | 11 + .../docker/axelar/Dockerfile | 2 +- .../docker/axelar/Makefile | 0 .../docker/axelar/bin/init_axelar.sh | 50 ++- .../docker/axelar/bin/steps/ibc-transfer.sh | 17 + .../docker/axelar/bin/steps/register-asset.sh | 8 +- .../docker/axelar/docker-compose.yaml | 4 +- packages/axelar-local-dev-cosmos/package.json | 1 + .../contracts/ContractCallWithToken.sol | 118 ++++++ .../src/listeners/eventTypes.ts | 20 +- .../src/listeners/parser.ts | 31 +- .../src/relayTokensToEth.ts | 381 ++++++++++++++++++ .../src/services/AxelarRelayerService.ts | 78 +++- .../src/services/DockerService.ts | 2 +- 14 files changed, 695 insertions(+), 28 deletions(-) mode change 100644 => 100755 packages/axelar-local-dev-cosmos/docker/axelar/Dockerfile mode change 100644 => 100755 packages/axelar-local-dev-cosmos/docker/axelar/Makefile create mode 100755 packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/ibc-transfer.sh mode change 100644 => 100755 packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml create mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol create mode 100644 packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts diff --git a/package-lock.json b/package-lock.json index 14e20c29..1b855632 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8402,6 +8402,16 @@ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", "dev": true }, + "node_modules/@updated-axelar-network/axelar-gmp-sdk-solidity": { + "name": "@axelar-network/axelar-gmp-sdk-solidity", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/@axelar-network/axelar-gmp-sdk-solidity/-/axelar-gmp-sdk-solidity-6.0.4.tgz", + "integrity": "sha512-o8pv+krIAlEwzid0Ac8qwykDsavc+1DRPvyFQ3V0R0zTQFtYLJIIXXXt7FRb8b+LJDAuX+E0bB3N2X+hlcxk/g==", + "dev": true, + "engines": { + "node": ">=18" + } + }, "node_modules/@yarnpkg/lockfile": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", @@ -34172,6 +34182,7 @@ "devDependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "^5.6.2", "@types/node-fetch": "^2.6.5", + "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "jest": "^29.7.0", "ts-jest": "^29.1.1", "ts-node": "^10.9.1" diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/Dockerfile b/packages/axelar-local-dev-cosmos/docker/axelar/Dockerfile old mode 100644 new mode 100755 index 517bebbe..bbe00310 --- a/packages/axelar-local-dev-cosmos/docker/axelar/Dockerfile +++ b/packages/axelar-local-dev-cosmos/docker/axelar/Dockerfile @@ -4,7 +4,7 @@ FROM ubuntu:22.04 # Define a build argument for architecture ARG ARCH=amd64 -RUN apt update && apt install -y wget +RUN apt update && apt install -y wget jq # Download axelar binary for alpine image RUN wget https://github.com/axelarnetwork/axelar-core/releases/download/v0.34.1/axelard-linux-${ARCH}-v0.34.1 -O axelard \ diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/Makefile b/packages/axelar-local-dev-cosmos/docker/axelar/Makefile old mode 100644 new mode 100755 diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh b/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh index 03af217b..226572f7 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh +++ b/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh @@ -9,7 +9,7 @@ HOME=/root/private/.axelar rm -rf ${HOME}/* DEFAULT_KEYS_FLAGS="--keyring-backend test --home ${HOME}" -ASSETS="100000000000000000000${DENOM}" +ASSETS="100000000000000000000${DENOM},10000000000000000uausdc" # Initializing a new blockchain with identifier ${CHAIN_ID} in the specified home directory axelard init "$MONIKER" --chain-id ${CHAIN_ID} --home ${HOME} > /dev/null 2>&1 && echo "Initialized new blockchain with chain ID ${CHAIN_ID}" @@ -21,6 +21,51 @@ sed -i '/\[api\]/,/\[/ s/swagger = false/swagger = true/' "$HOME"/config/app.tom # staking/governance token is hardcoded in config, change this sed -i "s/\"stake\"/\"$DENOM\"/" "$HOME"/config/genesis.json && echo "Updated staking token to $DENOM" +final_output=$( + jq '.app_state.nexus.chain_states += + [{ + "chain": { + "name": "agoric", + "supports_foreign_assets": true, + "key_type": "KEY_TYPE_NONE", + "module": "axelarnet" + }, + "activated": false, + "assets": [ + { + "denom": "ubld", + "is_native_asset": true + }, + { + "denom": "uausdc", + "is_native_asset": false + } + ], + "maintainer_states": [] + }, + { + "chain": { + "name": "Ethereum", + "supports_foreign_assets": true, + "key_type": "KEY_TYPE_MULTISIG", + "module": "evm" + }, + "activated": false, + "assets": [ + { + "denom": "uausdc", + "is_native_asset": false + } + ], + "maintainer_states": [] + }] + ' "$HOME"/config/genesis.json | jq '.app_state.nexus.chain_states[0].assets += + [{ + "denom": "uausdc", + "is_native_asset": false + }]') +echo $final_output | jq . > "$HOME"/config/genesis.json + # Adding a new key named 'owner' with a test keyring-backend in the specified home directory # and storing the mnemonic in the mnemonic.txt file @@ -88,5 +133,6 @@ cat /root/private/bin/libs/evm-rpc.toml >> "$HOME"/config/config.toml axelard start --home ${HOME} \ --minimum-gas-prices 0${DENOM} \ --moniker ${MONIKER} \ ---rpc.laddr "tcp://0.0.0.0:26657" +--rpc.laddr "tcp://0.0.0.0:26657" \ +--log_level debug diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/ibc-transfer.sh b/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/ibc-transfer.sh new file mode 100755 index 00000000..fa8f0719 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/ibc-transfer.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +CHAIN_ID=axelar +HOME=/root/private/.axelar +DEFAULT_KEYS_FLAGS="--keyring-backend test --home ${HOME}" +DENOM=uausdc +DIR="$(dirname "$0")" + +IBC_COMMAND="axelard tx ibc-transfer transfer transfer channel-0 agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl 10000000000uausdc" + +echo "Transferring asset ${DENOM}" +docker exec axelar /bin/sh -c "$IBC_COMMAND --generate-only --from \$(axelard keys show governance -a ${DEFAULT_KEYS_FLAGS}) ${DEFAULT_KEYS_FLAGS} \ +--output json --gas 500000 > ${HOME}/unsigned_msg.json" +docker exec axelar /bin/sh -c "cat ${HOME}/unsigned_msg.json" +echo "Transferred asset ${DENOM}" + +sh "$DIR/../libs/broadcast-unsigned-multi-tx.sh" diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/register-asset.sh b/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/register-asset.sh index 52f890dd..d6a9e98d 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/register-asset.sh +++ b/packages/axelar-local-dev-cosmos/docker/axelar/bin/steps/register-asset.sh @@ -4,8 +4,7 @@ CHAIN_ID=axelar HOME=/root/private/.axelar DEFAULT_KEYS_FLAGS="--keyring-backend test --home ${HOME}" CHAIN=$1 -# DENOM=${2:-uwasm} -DENOM=${2:-ibc/295548A78785A1007F232DE286149A6FF512F180AF5657780FC89C009E2C348F} +DENOM=${2:-uausdc} DIR="$(dirname "$0")" if [ -z "$CHAIN" ] @@ -14,9 +13,10 @@ then exit 1 fi +REGISTER="axelard tx axelarnet register-asset ${CHAIN} ${DENOM} --chain-id ${CHAIN_ID} " + echo "Registering asset ${CHAIN} ${DENOM}" -docker exec axelar /bin/sh -c "axelard tx axelarnet register-asset ${CHAIN} ${DENOM} --is-native-asset --generate-only \ ---chain-id ${CHAIN_ID} --from \$(axelard keys show governance -a ${DEFAULT_KEYS_FLAGS}) ${DEFAULT_KEYS_FLAGS} \ +docker exec axelar /bin/sh -c "$REGISTER --generate-only --from \$(axelard keys show governance -a ${DEFAULT_KEYS_FLAGS}) ${DEFAULT_KEYS_FLAGS} \ --output json --gas 500000 > ${HOME}/unsigned_msg.json" docker exec axelar /bin/sh -c "cat ${HOME}/unsigned_msg.json" echo "Registered asset ${CHAIN} ${DENOM}" diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml old mode 100644 new mode 100755 index fd994077..15f79428 --- a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml @@ -1,9 +1,9 @@ version: "3.8" services: axelar: - image: nptytn/local-axelard:v0.0.5 + build: . container_name: axelar - command: "/root/private/bin/init_axelar.sh" + entrypoint: ["sh", "-l", "-c", "/root/private/bin/init_axelar.sh"] volumes: - "./bin:/root/private/bin" - "./.axelar:/root/private/.axelar" diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index 217dd3ba..f8851ac9 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -39,6 +39,7 @@ "description": "", "devDependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "^5.6.2", + "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "@types/node-fetch": "^2.6.5", "jest": "^29.7.0", "ts-jest": "^29.1.1", diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol new file mode 100644 index 00000000..5061e524 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol @@ -0,0 +1,118 @@ +//SPDX-License-Identifier: MIT +pragma solidity ^0.8.0; + +import { AxelarExecutableWithToken } from '@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol'; +import { IERC20 } from '@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol'; +import { IAxelarGasService } from '@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol'; + +/** + * @title Call Contract With Token + * @notice Send a token along with an Axelar GMP message between two blockchains + */ +contract CallContractWithToken is AxelarExecutableWithToken { + IAxelarGasService public immutable gasService; + + event Executed(bytes32 commandId, string sourceChain, string sourceAddress, bytes payload); + event ExecutedWithToken(bytes32 commandId, string sourceChain, string sourceAddress, bytes payload, string tokenSymbol, uint256 amount); + + struct Message { + string sender; + string message; + } + + Message public storedMessage; // message received from _execute + /** + * + * @param _gateway address of axl gateway on deployed chain + * @param _gasReceiver address of axl gas service on deployed chain + */ + constructor(address _gateway, address _gasReceiver) AxelarExecutableWithToken(_gateway) { + gasService = IAxelarGasService(_gasReceiver); + + storedMessage = Message('fraz', 'init'); + } + + /** + * @notice trigger interchain tx from src chain + * @dev destinationAddresses will be passed in as gmp message in this tx + * @param destinationChain name of the dest chain (ex. "Fantom") + * @param destinationAddress address on dest chain this tx is going to + * @param destinationAddresses recipient addresses receiving sent funds + * @param symbol symbol of token being sent + * @param amount amount of tokens being sent + */ + function sendToMany( + string memory destinationChain, + string memory destinationAddress, + address[] calldata destinationAddresses, + string memory symbol, + uint256 amount + ) external payable { + require(msg.value > 0, 'Gas payment is required'); + + address tokenAddress = gatewayWithToken().tokenAddresses(symbol); + IERC20(tokenAddress).transferFrom(msg.sender, address(this), amount); + IERC20(tokenAddress).approve(address(gatewayWithToken()), amount); + bytes memory payload = abi.encode(destinationAddresses); + gasService.payNativeGasForContractCallWithToken{ value: msg.value }( + address(this), + destinationChain, + destinationAddress, + payload, + symbol, + amount, + msg.sender + ); + gatewayWithToken().callContractWithToken(destinationChain, destinationAddress, payload, symbol, amount); + } + + function _execute( + bytes32 commandId, + string calldata sourceChain, + string calldata sourceAddress, + bytes calldata payload + ) internal override { + emit Executed(commandId, sourceChain, sourceAddress, payload); + } + + /** + * @notice logic to be executed on dest chain + * @dev this is triggered automatically by relayer + * @param payload encoded gmp message sent from src chain + * @param tokenSymbol symbol of token sent from src chain + * @param amount amount of tokens sent from src chain + */ + function _executeWithToken( + bytes32 commandId, + string calldata sourceChain, + string calldata sourceAddress, + bytes calldata payload, + string calldata tokenSymbol, + uint256 amount + ) internal override { + storedMessage = Message('fraz', tokenSymbol); + + address[] memory recipients = abi.decode(payload, (address[])); + address tokenAddress = gatewayWithToken().tokenAddresses(tokenSymbol); + + + uint256 sentAmount = amount / recipients.length; + for (uint256 i = 0; i < recipients.length; i++) { + IERC20(tokenAddress).transfer(recipients[i], sentAmount); + } + + emit ExecutedWithToken(commandId, sourceChain, sourceAddress, payload, tokenSymbol, amount); + } + + function _execute( + string calldata /*sourceChain*/, + string calldata /*sourceAddress*/, + bytes calldata payload + ) public { + (string memory sender, string memory message) = abi.decode( + payload, + (string, string) + ); + storedMessage = Message(sender, message); + } +} \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/src/listeners/eventTypes.ts b/packages/axelar-local-dev-cosmos/src/listeners/eventTypes.ts index 39f64bea..b517f689 100644 --- a/packages/axelar-local-dev-cosmos/src/listeners/eventTypes.ts +++ b/packages/axelar-local-dev-cosmos/src/listeners/eventTypes.ts @@ -3,7 +3,7 @@ import { ContractCallWithTokenSubmitted, IBCEvent, } from "../types"; -import { parseContractCallSubmittedEvent } from "./parser"; +import { parseContractCallSubmittedEvent, parseContractCallWithTokenSubmittedEvent } from "./parser"; export interface AxelarListenerEvent { type: string; @@ -18,3 +18,21 @@ export const AxelarCosmosContractCallEvent: AxelarListenerEvent< topicId: `tm.event='Tx' AND axelar.axelarnet.v1beta1.ContractCallSubmitted.message_id EXISTS`, parseEvent: parseContractCallSubmittedEvent, }; + + +export const AxelarCosmosContractCallWithTokenEvent: AxelarListenerEvent< + IBCEvent +> = { + type: "axelar.axelarnet.v1beta1.ContractCallWithTokenSubmitted", + topicId: `tm.event='Tx' AND axelar.axelarnet.v1beta1.ContractCallWithTokenSubmitted.message_id EXISTS`, + parseEvent: parseContractCallWithTokenSubmittedEvent, +}; + + +export const AxelarTokenSentEvent: AxelarListenerEvent< + IBCEvent +> = { + type: "axelar.axelarnet.v1beta1.TokenSent", + topicId: `tm.event='Tx' AND axelar.axelarnet.v1beta1.TokenSent.message_id EXISTS`, + parseEvent: parseContractCallWithTokenSubmittedEvent, +}; diff --git a/packages/axelar-local-dev-cosmos/src/listeners/parser.ts b/packages/axelar-local-dev-cosmos/src/listeners/parser.ts index bf8b83a7..bc14137c 100644 --- a/packages/axelar-local-dev-cosmos/src/listeners/parser.ts +++ b/packages/axelar-local-dev-cosmos/src/listeners/parser.ts @@ -1,4 +1,4 @@ -import { ContractCallSubmitted, IBCEvent } from "../types"; +import { ContractCallSubmitted, ContractCallWithTokenSubmitted, IBCEvent } from "../types"; const decodeBase64 = (str: string) => { return Buffer.from(str, "base64").toString("hex"); @@ -31,3 +31,32 @@ export function parseContractCallSubmittedEvent( args: data, }); } + + +export function parseContractCallWithTokenSubmittedEvent( + event: any +): Promise> { + const key = "axelar.axelarnet.v1beta1.ContractCallWithTokenSubmitted"; + const asset = JSON.parse(event[`${key}.asset`][0]); + + const data = { + messageId: removeQuote(event[`${key}.message_id`][0]), + sender: removeQuote(event[`${key}.sender`][0]), + sourceChain: removeQuote(event[`${key}.source_chain`][0]), + destinationChain: removeQuote(event[`${key}.destination_chain`][0]), + contractAddress: removeQuote(event[`${key}.contract_address`][0]), + payload: `0x${decodeBase64(removeQuote(event[`${key}.payload`][0]))}`, + payloadHash: `0x${decodeBase64( + removeQuote(event[`${key}.payload_hash`][0]) + )}`, + symbol: asset.denom, + amount: asset.amount, + }; + + return Promise.resolve({ + hash: event["tx.hash"][0], + srcChannel: event?.["write_acknowledgement.packet_src_channel"]?.[0], + destChannel: event?.["write_acknowledgement.packet_dst_channel"]?.[0], + args: data, + }); +} diff --git a/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts b/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts new file mode 100644 index 00000000..47b6caf4 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts @@ -0,0 +1,381 @@ +import { defaultAxelarChainInfo, AxelarRelayerService, startChains } from './index'; +import { SigningStargateClient } from '@cosmjs/stargate'; +import { encode } from '@metamask/abi-utils'; + +import { + evmRelayer, + createNetwork, + deployContract, + relay, + RelayerType, +} from '@axelar-network/axelar-local-dev'; + +import { Contract, ethers } from 'ethers'; + + +export const relayDataToEth = async () => { + // Start both Axelar and Wasm Chains + // await startChains(); + + // Initialize the Axelar Relayer Service with default configuration + const axelarRelayer = await AxelarRelayerService.create( + defaultAxelarChainInfo + ); + + const CallContractWithToken = require('../artifacts/src/__tests__/contracts/ContractCallWithToken.sol/CallContractWithToken.json'); + + const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); + const ethereumContract = await deployContract( + ethereumNetwork.userWallets[0], + CallContractWithToken, + [ + ethereumNetwork.gateway.address, + ethereumNetwork.gasService.address, + ] + ); + + // Deploy tokens + const tokenContract = await ethereumNetwork.deployToken("USDC", "aUSDC", 6, BigInt(100_000e6)); + + const ibcRelayer = axelarRelayer.ibcRelayer; + + console.log('IBC RELAYER', JSON.stringify(ibcRelayer.srcChannelId)); + + const IBC_DENOM_AXL_USDC = + // 'ubld'; + 'ibc/5BDD47E9E73BF91C14497E254F0A751F1A7D3A6084343F66EA7CEE834A384651'; + const AMOUNT_IN_ATOMIC_UNITS = '10' + '000' + '000'; + const FEE = '1' + '000' + '000'; + const CHANNEL_ID = ibcRelayer.srcChannelId; + const DENOM = 'ubld'; + const AXELAR_GMP_ADDRESS = + 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5'; + + const signer = ibcRelayer.wasmClient; + const senderAddress = 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl'; + + const DESTINATION_ADDRESS = ethereumContract.address; + const DESTINATION_CHAIN = 'Ethereum'; + + const ADDRESS_TO_DEPOSIT = '0x20E68F6c276AC6E297aC46c84Ab260928276691D' + + const payload = encode(['address[]'], [[ADDRESS_TO_DEPOSIT]]); + console.log('Balance of account before relaying', (await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT))); + + const memo = { + destination_chain: DESTINATION_CHAIN, + destination_address: DESTINATION_ADDRESS, + payload: Array.from(payload), + fee: { + amount: FEE, + recipient: 'axelar1zl3rxpp70lmte2xr6c4lgske2fyuj3hupcsvcd', + }, + type: 2, + }; + + const message = [ + { + typeUrl: '/ibc.applications.transfer.v1.MsgTransfer', + value: { + sender: senderAddress, + receiver: AXELAR_GMP_ADDRESS, + token: { + denom: IBC_DENOM_AXL_USDC, + amount: AMOUNT_IN_ATOMIC_UNITS, + }, + timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, + sourceChannel: CHANNEL_ID, + sourcePort: 'transfer', + memo: JSON.stringify(memo), + }, + }, + ]; + + + const fee = { + gas: '250000', + amount: [{ denom: DENOM, amount: '30000' }], + }; + + console.log('Preparing to send tokens...'); + const signingClient = await SigningStargateClient.connectWithSigner( + 'http://localhost/agoric-rpc', + signer.owner + ); + // Set up the Relayer for Wasm Chain + evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); + + console.log('Sending transaction...', message); + const response = await signingClient.signAndBroadcast( + senderAddress, + message, + fee + ); + console.log('transaction response', response); + + // Relay messages between Ethereum and Agoric chains + await relay({ + agoric: axelarRelayer, + evm: evmRelayer, + }); + + + console.log('Balance of account after relaying', (await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT))); + const ethereumMessage = await ethereumContract.storedMessage(); + console.log('Message on Ethereum Contract:', ethereumMessage); + +}; + + + + + + + + + + + + + + + + + + + + + +// import { defaultAxelarChainInfo, AxelarRelayerService, startChains } from './index'; +// import { SigningStargateClient } from '@cosmjs/stargate'; +// import { encode } from '@metamask/abi-utils'; + +// import { +// evmRelayer, +// createNetwork, +// deployContract, +// relay, +// RelayerType, +// contracts, +// setupNetwork, +// } from '@axelar-network/axelar-local-dev'; + +// import { Wallet, ethers, getDefaultProvider } from 'ethers'; + +// export const relayDataToEth = async () => { +// // Start both Axelar and Wasm Chains +// // await startChains(); +// const chain: any = { +// "name": "Ethereum", +// "chainId": 2503, +// "gateway": "0x013459EC3E8Aeced878C5C4bFfe126A366cd19E9", +// "gasService": "0x28f8B50E1Be6152da35e923602a2641491E71Ed8", +// "constAddressDeployer": "0x69aeB7Dc4f2A86873Dae8D753DE89326Cf90a77a", +// "create3Deployer": "0x783E7717fD4592814614aFC47ee92568a495Ce0B", +// "interchainTokenService": "0xc66bec212fb265f86703ff82599693Eb020e9f34", +// "interchainTokenFactory": "0x5548588aCE4A15342856BC36576ceA6C97198086", +// "tokens": { +// "aUSDC": "aUSDC" +// }, +// "rpc": "http://127.0.0.1:8500/3", +// wallet: undefined, +// contract: undefined, +// }; +// // Initialize the Axelar Relayer Service with default configuration +// const axelarRelayer = await AxelarRelayerService.create( +// defaultAxelarChainInfo +// ); + +// const SendReceive = require('../artifacts/src/__tests__/contracts/SendReceive.sol/SendReceive.json'); +// const CallContractWithToken = require('../artifacts/src/__tests__/contracts/ContractCallWithToken.sol/CallContractWithToken.json'); +// // const CallContractWithToken = require('../artifacts/src/__tests__/contracts/ContractCallWithToken.sol/ExecutableWithToken.json'); + +// // const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); +// // const ethereumContract = await deployContract( +// // ethereumNetwork.userWallets[0], +// // CallContractWithToken, +// // [ +// // ethereumNetwork.gateway.address, +// // ethereumNetwork.gasService.address, +// // // 'Ethereum', +// // ] +// // ); + +// const wallet = new Wallet('0xe2d761246917948fa57c75ebe690bab0d214d6d968397487c3221b9563d946fe') +// const provider = getDefaultProvider(chain.rpc); +// chain.wallet = wallet.connect(provider); +// await setupNetwork(provider, { +// name: 'Ethereum', +// // ownerKey: chain.wallet, +// chainId: 2503, +// }) + +// // chain.contract = await deployContract(chain.wallet, CallContractWithToken, [chain.gateway, chain.gasService]); + +// const ibcRelayer = axelarRelayer.ibcRelayer; + +// console.log('IBC RELAYER', JSON.stringify(ibcRelayer.srcChannelId)); + +// const IBC_DENOM_AXL_USDC = +// 'ubld'; +// // 'ibc/5BDD47E9E73BF91C14497E254F0A751F1A7D3A6084343F66EA7CEE834A384651'; +// const AMOUNT_IN_ATOMIC_UNITS = '10000000'; +// const CHANNEL_ID = ibcRelayer.srcChannelId; +// const DENOM = 'ubld'; +// const AXELAR_GMP_ADDRESS = +// 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5'; + +// const signer = ibcRelayer.wasmClient; +// const senderAddress = 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl'; +// console.log(1); + +// console.log(await provider.getBlockNumber()) +// // TODO +// // const ethAccount = ethereumNetwork.userWallets[0]; +// // const ethAdd = await ethAccount.getAddress(); +// // if (ethAdd !== ethAccount.address) +// // throw new Error('wth'); +// // const DESTINATION_ADDRESS = chain.contract.address; +// const DESTINATION_ADDRESS = '0x1aD9C268e5CDf4018cd1EBC50b1EBBcf967c34f3'; +// const DESTINATION_CHAIN = 'Ethereum'; + +// const payload = encode(['address[]'], [['0x5B34876FFB1656710fb963ecD199C6f173c29267']]); + +// const memo = { +// destination_chain: DESTINATION_CHAIN, +// destination_address: DESTINATION_ADDRESS, +// payload: Array.from(payload), +// fee: null, +// type: 2, +// }; + +// const message = [ +// { +// typeUrl: '/ibc.applications.transfer.v1.MsgTransfer', +// value: { +// sender: senderAddress, +// receiver: AXELAR_GMP_ADDRESS, +// token: { +// denom: IBC_DENOM_AXL_USDC, +// amount: AMOUNT_IN_ATOMIC_UNITS, +// }, +// timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, +// sourceChannel: CHANNEL_ID, +// sourcePort: 'transfer', +// memo: JSON.stringify(memo), +// }, +// }, +// ]; + + +// const fee = { +// gas: '250000', +// amount: [{ denom: DENOM, amount: '30000' }], +// }; + +// console.log('Preparing to send tokens...'); +// const signingClient = await SigningStargateClient.connectWithSigner( +// 'http://localhost/agoric-rpc', +// signer.owner +// ); +// // Set up the Relayer for Wasm Chain +// evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); + +// console.log('Sending transaction...', message); +// const response = await signingClient.signAndBroadcast( +// senderAddress, +// message, +// fee +// ); +// console.log('transaction response', response); + +// console.log(await provider.getBlockNumber()) +// // Relay messages between Ethereum and Agoric chains +// await relay({ +// agoric: axelarRelayer, +// evm: evmRelayer, +// }); + +// // Setup for Ethereum Network and Wasm chain relayer +// // + +// // // Deploy Smart Contract on the EVM (Ethereum Virtual Machine) +// // // const ethereumContract = await deployContract( +// // // ethereumNetwork.userWallets[0], +// // // SendReceive, +// // // [ +// // // ethereumNetwork.gateway.address, +// // // ethereumNetwork.gasService.address, +// // // 'Ethereum', +// // // ] +// // // ); + +// // // Deploy Contract on the Wasm Chain +// // const wasmFilePath = path.resolve(__dirname, '../wasm/send_receive.wasm'); +// // const wasmUploadResponse = await wasmClient1.uploadWasm(wasmFilePath); + +// // // Instantiate the Wasm Contract +// // const { client: wasmClient, address: wasmSenderAddress } = +// // await wasmClient1.createFundedSigningClient(); + +// // const wasmContractInstantiation = await wasmClient.instantiate( +// // wasmSenderAddress, +// // wasmUploadResponse.codeId, +// // { +// // channel: ibcRelayer.srcChannelId, +// // }, +// // 'send_receive', +// // 'auto' +// // ); +// // // ============ SETUP END ============ + +// // const messageToEthereum = 'Hello from Ethereum'; +// // const messageToWasm = 'Hello from Wasm'; + +// // // Send a message from Wasm Chain to Ethereum Chain +// // const wasmTransaction = await wasmClient.execute( +// // wasmSenderAddress, +// // wasmContractInstantiation.contractAddress, +// // { +// // send_message_evm: { +// // destination_chain: 'Ethereum', +// // destination_address: ethereumContract.address, +// // message: messageToWasm, +// // }, +// // }, +// // 'auto', +// // 'test', +// // [{ amount: '100000', denom: 'uwasm' }] +// // ); +// // console.log('Wasm Chain Transaction Hash:', wasmTransaction.transactionHash); + +// // // Send a message from Ethereum Chain to Wasm Chain +// // const ethereumTransaction = await ethereumContract.send( +// // 'agoric', +// // wasmContractInstantiation.contractAddress, +// // messageToEthereum, +// // { +// // value: ethers.utils.parseEther('0.001'), +// // } +// // ); +// // console.log('Ethereum Chain Transaction Hash:', ethereumTransaction.hash); + + + +// // // Verify the message on the Ethereum contract +// // const ethereumMessage = await chain.contract.storedMessage(); +// // console.log('Message on Ethereum Contract:', ethereumMessage); +// console.log(await provider.getBlockNumber()) +// // console.log(await ethAccount.getBalance()) +// // console.log(await ethereumNetwork.provider.getLogs({fromBlock:0})) + +// // // Verify the message on the Wasm contract +// // const wasmResponse = await wasmClient1.client.queryContractSmart( +// // wasmContractInstantiation.contractAddress, +// // { +// // get_stored_message: {}, +// // } +// // ); + +// // console.log('Message on Wasm Contract:', wasmResponse); +// }; \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts index f19493a1..ec88b7a7 100644 --- a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts @@ -1,5 +1,5 @@ -import { ContractCallSubmitted, CosmosChainInfo, IBCEvent } from "../types"; -import { AxelarCosmosContractCallEvent, AxelarListener } from "../listeners"; +import { ContractCallSubmitted, ContractCallWithTokenSubmitted, CosmosChainInfo, IBCEvent } from "../types"; +import { AxelarCosmosContractCallEvent, AxelarCosmosContractCallWithTokenEvent, AxelarListener, AxelarTokenSentEvent } from "../listeners"; import { CallContractArgs, CallContractWithTokenArgs, @@ -61,15 +61,26 @@ export class AxelarRelayerService extends Relayer { this.handleContractCallEvent.bind(this) ); + this.axelarListener.listen( + AxelarCosmosContractCallWithTokenEvent, + this.handleContractCallWithTokenEvent.bind(this) + ); + + this.listened = true; } private async handleContractCallEvent(args: any) { - console.log('fraz1', args) this.updateCallContractEvents(args); await this.execute(this.commands); } + private async handleContractCallWithTokenEvent(args: any) { + this.updateCallContractWithTokenEvents(args); + await this.execute(this.commands); + } + + async stopListening() { await this.axelarListener.stop(); @@ -167,7 +178,42 @@ export class AxelarRelayerService extends Relayer { this.commands[contractCallArgs.to].push(command); } + private async updateCallContractWithTokenEvents( + event: IBCEvent + ) { + const tokenMap: {[key:string]: string} = { + 'uausdc': 'aUSDC', + } + const { args } = event; + const contractCallWithTokenArgs: CallContractWithTokenArgs = { + from: "agoric", + to: args.destinationChain, + sourceAddress: args.sender, + destinationContractAddress: args.contractAddress, + payload: args.payload, + payloadHash: args.payloadHash, + alias: "??", + destinationTokenSymbol: tokenMap[args.symbol], + amountIn: args.amount, + amountOut: args.amount, + }; + + const commandId = this.getWasmLogID(event); + this.relayData.callContractWithToken[commandId] = contractCallWithTokenArgs; + const command = Command.createEVMContractCallWithTokenCommand( + commandId, + this.relayData, + contractCallWithTokenArgs + ); + + if (!this.commands[contractCallWithTokenArgs.to]) { + this.commands[contractCallWithTokenArgs.to] = []; + } + + this.commands[contractCallWithTokenArgs.to].push(command); + } + private getWasmLogID(event: IBCEvent) { return ethers.utils.id( `${event.args.messageId}-${event.args.sourceChain}-${event.args.destinationChain}` @@ -209,22 +255,22 @@ export class AxelarRelayerService extends Relayer { ): Promise { for (const command of commands) { if (command.post == null) continue; - + const isExecuted = !execution.events.find((event: any) => { return event.event === "Executed" && event.args[0] == command.commandId; }); - - if (isExecuted) { - continue; - } - - try { - const blockLimit = Number( - (await to.provider.getBlock("latest")).gasLimit - ); - return command.post({ - gasLimit: blockLimit, - }); + + if (isExecuted) { + continue; + } + + try { + const blockLimit = Number( + (await to.provider.getBlock("latest")).gasLimit + ); + return command.post({ + gasLimit: blockLimit, + }); } catch (e) { logger.log(e); } diff --git a/packages/axelar-local-dev-cosmos/src/services/DockerService.ts b/packages/axelar-local-dev-cosmos/src/services/DockerService.ts index 2882cad9..cf515857 100644 --- a/packages/axelar-local-dev-cosmos/src/services/DockerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/DockerService.ts @@ -40,7 +40,7 @@ export class DockerService { }; logger.log(`Starting ${chain} container...`); - await compose.upOne(chain, config); + await compose.upOne(chain, config); await this.waitForRpc(chain, options?.rpcWaitTimeout); await this.waitForLcd(chain, options?.lcdWaitTimeout); From 9da1df0829ba69006864f5e648131829976db4b3 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Mon, 17 Feb 2025 23:05:53 +0500 Subject: [PATCH 06/93] minor changes --- README.md | 34 ++++++++++++++++++- packages/axelar-local-dev-cosmos/package.json | 3 +- .../scripts/relayWithTokens.ts | 3 ++ 3 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts diff --git a/README.md b/README.md index d24d12bd..72abcd61 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ This updates the `axelar-local-dev` repository to use agoric chain instead of wa This repository does not demonstrate a token trasnfer to eth but rather a message transfer -## Steps to run +## Steps to run contract call - In root of the workspace run: ```bash @@ -33,6 +33,38 @@ Message on Ethereum Contract: [ ] ``` +## Steps to run contract call with token transfer + +- In root of the workspace run: +```bash + npm install + npm run build +``` +- Change to `axelar-local-dev-cosmos` dir +```bash + cd packages/axelar-local-dev-cosmos +``` +- start the agoric and axelar chains using: +```bash + npm run start +``` +- run the script to start an ibc-transfer +```bash + bash ./docker/axelar/bin/steps/ibc-transfer.sh +``` +- run this script to relay the ibc trasnsaction. +```bash + npm run relayWithTokens +``` +- After that run again to relay the token transfer +```bash + npm run relayWithTokens +``` +- you should see this in the logs: +``` +Balance of account after relaying ... +``` + > **Note:** the `npm run relay` command will not exit by itself after receiving the message on ethereum and must be manually exited) ## Main file The main file to look out for is the `packages/axelar-local-dev-cosmos/src/relayToEth.ts` in which the majority of the work is being done. diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index f8851ac9..ae79e2ce 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -19,7 +19,8 @@ "build:contract": "hardhat clean && hardhat compile", "start": "./scripts/clean.sh && ts-node scripts/start.ts", "stop": "ts-node scripts/stop.ts", - "relay": "ts-node scripts/relay.ts" + "relay": "ts-node scripts/relay.ts", + "relayWithTokens": "ts-node scripts/relayWithTokens.ts" }, "dependencies": { "@axelar-network/axelar-local-dev": "^2.3.2", diff --git a/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts b/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts new file mode 100644 index 00000000..9b12f7b8 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts @@ -0,0 +1,3 @@ +import { relayDataToEth } from "../src/relayTokensToEth"; + +relayDataToEth(); From 305cf4f3d92a44c0e145b8f905bc565fbaa9f342 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 10 Apr 2025 09:15:47 +0500 Subject: [PATCH 07/93] chore: update postinstall command --- .gitignore | 1 + package.json | 2 +- scripts/bootstrap.sh | 9 +++++++++ 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 scripts/bootstrap.sh diff --git a/.gitignore b/.gitignore index 46ed7bb5..607cf4a9 100644 --- a/.gitignore +++ b/.gitignore @@ -142,3 +142,4 @@ packages/axelar-local-dev-near/**/*.wasm # Multiversx localnet localnet.toml +.qodo diff --git a/package.json b/package.json index ad9a6042..14bd8fe0 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "publish": "lerna publish from-package --yes", "version": "lerna version --yes --exact --no-git-tag-version", "bootstrap": "lerna bootstrap", - "postinstall": "lerna bootstrap", + "postinstall": "bash scripts/bootstrap.sh", "link": "lerna link", "test": "lerna run test", "update": "lerna update", diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh new file mode 100644 index 00000000..50625d28 --- /dev/null +++ b/scripts/bootstrap.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +if [ "$CI" = "true" ]; then + echo "Running Lerna bootstrap in CI (skipping optional deps)..." + lerna bootstrap --hoist -- --no-optional +else + echo "Running normal Lerna bootstrap..." + lerna bootstrap +fi From 42a7a7ac00f71a243a70eed88922f30a4cac874a Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 10 Apr 2025 09:53:07 +0500 Subject: [PATCH 08/93] chore(deps): update lerna and other dependencies --- lerna.json | 7 +- package-lock.json | 7029 ++++++++---------------- package.json | 4 +- packages/axelar-local-dev/package.json | 6 +- 4 files changed, 2430 insertions(+), 4616 deletions(-) diff --git a/lerna.json b/lerna.json index 1a01dec7..e8c55eca 100644 --- a/lerna.json +++ b/lerna.json @@ -1,8 +1,5 @@ { "$schema": "node_modules/lerna/schemas/lerna-schema.json", - "useWorkspaces": true, - "version": "2.3.2", - "packages": [ - "packages/*" - ] + "version": "independent", + "packages": ["packages/*"] } diff --git a/package-lock.json b/package-lock.json index 1b855632..2afbf266 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,12 +5,11 @@ "packages": { "": { "name": "axelar-local-dev", - "hasInstallScript": true, "workspaces": [ "packages/*" ], "devDependencies": { - "lerna": "^6.6.1", + "lerna": "^8.2.1", "lerna-update-wizard": "^1.1.2" } }, @@ -317,34 +316,42 @@ "resolved": "https://registry.npmjs.org/cosmjs-types/-/cosmjs-types-0.9.0.tgz", "integrity": "sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ==" }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" + "node_modules/@axelar-network/axelar-cgp-sui/node_modules/elliptic": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", + "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" } }, + "node_modules/@axelar-network/axelar-cgp-sui/node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", + "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==" + }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/node-addon-api": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/secp256k1": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.0.tgz", - "integrity": "sha512-TKWX8xvoGHrxVdqbYeZM9w+izTF4b9z3NhSaDkdn81btvuh+ivbIMGT/zQvDtTFWhRlThpoz6LEYTr7n8A5GcA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.1.tgz", + "integrity": "sha512-lDFs9AAIaWP9UCdtWrotXWWF9t8PWgQDcxqgAnpM9rMqxb3Oaq2J0thzPVSxBwdJgyQtkU/sYtFtbM1RSt/iYA==", "hasInstallScript": true, "dependencies": { - "elliptic": "^6.5.4", + "elliptic": "^6.5.7", "node-addon-api": "^5.0.0", "node-gyp-build": "^4.2.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=18.0.0" } }, "node_modules/@axelar-network/axelar-chains-config": { @@ -409,12 +416,13 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", "dev": true, "dependencies": { - "@babel/highlight": "^7.24.2", + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", "picocolors": "^1.0.0" }, "engines": { @@ -696,18 +704,18 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -723,39 +731,26 @@ } }, "node_modules/@babel/helpers": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.1.tgz", - "integrity": "sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", + "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", "dev": true, "dependencies": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0" + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "node_modules/@babel/parser": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", + "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" + "@babel/types": "^7.27.0" }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.1.tgz", - "integrity": "sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==", - "dev": true, "bin": { "parser": "bin/babel-parser.js" }, @@ -995,14 +990,14 @@ } }, "node_modules/@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" }, "engines": { "node": ">=6.9.0" @@ -1030,14 +1025,13 @@ } }, "node_modules/@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", + "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -1408,16 +1402,57 @@ "node": ">=16" } }, - "node_modules/@elastic/transport/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, "node_modules/@elastic/transport/node_modules/tslib": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, + "node_modules/@emnapi/core": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.4.0.tgz", + "integrity": "sha512-H+N/FqT07NmLmt6OFFtDfwe8PNygprzBikrEMyQfgqSmT0vzE515Pz7R8izwB9q/zsH/MA64AKoul3sA6/CzVg==", + "dev": true, + "dependencies": { + "@emnapi/wasi-threads": "1.0.1", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/core/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true + }, + "node_modules/@emnapi/runtime": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.0.tgz", + "integrity": "sha512-64WYIf4UYcdLnbKn/umDlNjQDSS8AgZrI/R9+x5ilkUVFxXcA1Ebl+gQLc/6mERA4407Xof0R7wEyEuj091CVw==", + "dev": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz", + "integrity": "sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==", + "dev": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -1683,9 +1718,9 @@ } }, "node_modules/@ethersproject/abi": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.7.0.tgz", - "integrity": "sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.8.0.tgz", + "integrity": "sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q==", "funding": [ { "type": "individual", @@ -1697,21 +1732,21 @@ } ], "dependencies": { - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@ethersproject/address": "^5.8.0", + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/constants": "^5.8.0", + "@ethersproject/hash": "^5.8.0", + "@ethersproject/keccak256": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/strings": "^5.8.0" } }, "node_modules/@ethersproject/abstract-provider": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz", - "integrity": "sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.8.0.tgz", + "integrity": "sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg==", "funding": [ { "type": "individual", @@ -1723,19 +1758,19 @@ } ], "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0" + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/networks": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/transactions": "^5.8.0", + "@ethersproject/web": "^5.8.0" } }, "node_modules/@ethersproject/abstract-signer": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz", - "integrity": "sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.8.0.tgz", + "integrity": "sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA==", "funding": [ { "type": "individual", @@ -1747,17 +1782,17 @@ } ], "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0" + "@ethersproject/abstract-provider": "^5.8.0", + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/properties": "^5.8.0" } }, "node_modules/@ethersproject/address": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", - "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.8.0.tgz", + "integrity": "sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA==", "funding": [ { "type": "individual", @@ -1769,17 +1804,17 @@ } ], "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/rlp": "^5.7.0" + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/keccak256": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/rlp": "^5.8.0" } }, "node_modules/@ethersproject/base64": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.7.0.tgz", - "integrity": "sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.8.0.tgz", + "integrity": "sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ==", "funding": [ { "type": "individual", @@ -1791,13 +1826,13 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0" + "@ethersproject/bytes": "^5.8.0" } }, "node_modules/@ethersproject/basex": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", - "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.8.0.tgz", + "integrity": "sha512-PIgTszMlDRmNwW9nhS6iqtVfdTAKosA7llYXNmGPw4YAI1PUyMv28988wAb41/gHF/WqGdoLv0erHaRcHRKW2Q==", "funding": [ { "type": "individual", @@ -1809,14 +1844,14 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/properties": "^5.7.0" + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/properties": "^5.8.0" } }, "node_modules/@ethersproject/bignumber": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", - "integrity": "sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.8.0.tgz", + "integrity": "sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA==", "funding": [ { "type": "individual", @@ -1828,15 +1863,15 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0", "bn.js": "^5.2.1" } }, "node_modules/@ethersproject/bytes": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", - "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.8.0.tgz", + "integrity": "sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A==", "funding": [ { "type": "individual", @@ -1848,13 +1883,13 @@ } ], "dependencies": { - "@ethersproject/logger": "^5.7.0" + "@ethersproject/logger": "^5.8.0" } }, "node_modules/@ethersproject/constants": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz", - "integrity": "sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.8.0.tgz", + "integrity": "sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg==", "funding": [ { "type": "individual", @@ -1866,13 +1901,13 @@ } ], "dependencies": { - "@ethersproject/bignumber": "^5.7.0" + "@ethersproject/bignumber": "^5.8.0" } }, "node_modules/@ethersproject/contracts": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.7.0.tgz", - "integrity": "sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.8.0.tgz", + "integrity": "sha512-0eFjGz9GtuAi6MZwhb4uvUM216F38xiuR0yYCjKJpNfSEy4HUM8hvqqBj9Jmm0IUz8l0xKEhWwLIhPgxNY0yvQ==", "funding": [ { "type": "individual", @@ -1884,22 +1919,22 @@ } ], "dependencies": { - "@ethersproject/abi": "^5.7.0", - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0" + "@ethersproject/abi": "^5.8.0", + "@ethersproject/abstract-provider": "^5.8.0", + "@ethersproject/abstract-signer": "^5.8.0", + "@ethersproject/address": "^5.8.0", + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/constants": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/transactions": "^5.8.0" } }, "node_modules/@ethersproject/hash": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", - "integrity": "sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.8.0.tgz", + "integrity": "sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA==", "funding": [ { "type": "individual", @@ -1911,21 +1946,21 @@ } ], "dependencies": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@ethersproject/abstract-signer": "^5.8.0", + "@ethersproject/address": "^5.8.0", + "@ethersproject/base64": "^5.8.0", + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/keccak256": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/strings": "^5.8.0" } }, "node_modules/@ethersproject/hdnode": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", - "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.8.0.tgz", + "integrity": "sha512-4bK1VF6E83/3/Im0ERnnUeWOY3P1BZml4ZD3wcH8Ys0/d1h1xaFt6Zc+Dh9zXf9TapGro0T4wvO71UTCp3/uoA==", "funding": [ { "type": "individual", @@ -1937,24 +1972,24 @@ } ], "dependencies": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" + "@ethersproject/abstract-signer": "^5.8.0", + "@ethersproject/basex": "^5.8.0", + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/pbkdf2": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/sha2": "^5.8.0", + "@ethersproject/signing-key": "^5.8.0", + "@ethersproject/strings": "^5.8.0", + "@ethersproject/transactions": "^5.8.0", + "@ethersproject/wordlists": "^5.8.0" } }, "node_modules/@ethersproject/json-wallets": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz", - "integrity": "sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.8.0.tgz", + "integrity": "sha512-HxblNck8FVUtNxS3VTEYJAcwiKYsBIF77W15HufqlBF9gGfhmYOJtYZp8fSDZtn9y5EaXTE87zDwzxRoTFk11w==", "funding": [ { "type": "individual", @@ -1966,25 +2001,25 @@ } ], "dependencies": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", + "@ethersproject/abstract-signer": "^5.8.0", + "@ethersproject/address": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/hdnode": "^5.8.0", + "@ethersproject/keccak256": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/pbkdf2": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/random": "^5.8.0", + "@ethersproject/strings": "^5.8.0", + "@ethersproject/transactions": "^5.8.0", "aes-js": "3.0.0", "scrypt-js": "3.0.1" } }, "node_modules/@ethersproject/keccak256": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", - "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.8.0.tgz", + "integrity": "sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng==", "funding": [ { "type": "individual", @@ -1996,14 +2031,14 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", + "@ethersproject/bytes": "^5.8.0", "js-sha3": "0.8.0" } }, "node_modules/@ethersproject/logger": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", - "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.8.0.tgz", + "integrity": "sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA==", "funding": [ { "type": "individual", @@ -2016,9 +2051,9 @@ ] }, "node_modules/@ethersproject/networks": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz", - "integrity": "sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.8.0.tgz", + "integrity": "sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg==", "funding": [ { "type": "individual", @@ -2030,13 +2065,13 @@ } ], "dependencies": { - "@ethersproject/logger": "^5.7.0" + "@ethersproject/logger": "^5.8.0" } }, "node_modules/@ethersproject/pbkdf2": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", - "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.8.0.tgz", + "integrity": "sha512-wuHiv97BrzCmfEaPbUFpMjlVg/IDkZThp9Ri88BpjRleg4iePJaj2SW8AIyE8cXn5V1tuAaMj6lzvsGJkGWskg==", "funding": [ { "type": "individual", @@ -2048,14 +2083,14 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/sha2": "^5.7.0" + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/sha2": "^5.8.0" } }, "node_modules/@ethersproject/properties": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", - "integrity": "sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.8.0.tgz", + "integrity": "sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw==", "funding": [ { "type": "individual", @@ -2067,13 +2102,13 @@ } ], "dependencies": { - "@ethersproject/logger": "^5.7.0" + "@ethersproject/logger": "^5.8.0" } }, "node_modules/@ethersproject/providers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", - "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.8.0.tgz", + "integrity": "sha512-3Il3oTzEx3o6kzcg9ZzbE+oCZYyY+3Zh83sKkn4s1DZfTUjIegHnN2Cm0kbn9YFy45FDVcuCLLONhU7ny0SsCw==", "funding": [ { "type": "individual", @@ -2085,32 +2120,52 @@ } ], "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0", + "@ethersproject/abstract-provider": "^5.8.0", + "@ethersproject/abstract-signer": "^5.8.0", + "@ethersproject/address": "^5.8.0", + "@ethersproject/base64": "^5.8.0", + "@ethersproject/basex": "^5.8.0", + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/constants": "^5.8.0", + "@ethersproject/hash": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/networks": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/random": "^5.8.0", + "@ethersproject/rlp": "^5.8.0", + "@ethersproject/sha2": "^5.8.0", + "@ethersproject/strings": "^5.8.0", + "@ethersproject/transactions": "^5.8.0", + "@ethersproject/web": "^5.8.0", "bech32": "1.1.4", - "ws": "7.4.6" + "ws": "8.18.0" + } + }, + "node_modules/@ethersproject/providers/node_modules/ws": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, "node_modules/@ethersproject/random": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", - "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.8.0.tgz", + "integrity": "sha512-E4I5TDl7SVqyg4/kkA/qTfuLWAQGXmSOgYyO01So8hLfwgKvYK5snIlzxJMk72IFdG/7oh8yuSqY2KX7MMwg+A==", "funding": [ { "type": "individual", @@ -2122,14 +2177,14 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0" } }, "node_modules/@ethersproject/rlp": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", - "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.8.0.tgz", + "integrity": "sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q==", "funding": [ { "type": "individual", @@ -2141,14 +2196,14 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0" } }, "node_modules/@ethersproject/sha2": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.7.0.tgz", - "integrity": "sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.8.0.tgz", + "integrity": "sha512-dDOUrXr9wF/YFltgTBYS0tKslPEKr6AekjqDW2dbn1L1xmjGR+9GiKu4ajxovnrDbwxAKdHjW8jNcwfz8PAz4A==", "funding": [ { "type": "individual", @@ -2160,15 +2215,15 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0", "hash.js": "1.1.7" } }, "node_modules/@ethersproject/signing-key": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.7.0.tgz", - "integrity": "sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.8.0.tgz", + "integrity": "sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w==", "funding": [ { "type": "individual", @@ -2180,18 +2235,37 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/properties": "^5.8.0", "bn.js": "^5.2.1", - "elliptic": "6.5.4", + "elliptic": "6.6.1", "hash.js": "1.1.7" } }, + "node_modules/@ethersproject/signing-key/node_modules/elliptic": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", + "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" + } + }, + "node_modules/@ethersproject/signing-key/node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", + "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==" + }, "node_modules/@ethersproject/solidity": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.7.0.tgz", - "integrity": "sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.8.0.tgz", + "integrity": "sha512-4CxFeCgmIWamOHwYN9d+QWGxye9qQLilpgTU0XhYs1OahkclF+ewO+3V1U0mvpiuQxm5EHHmv8f7ClVII8EHsA==", "funding": [ { "type": "individual", @@ -2203,18 +2277,18 @@ } ], "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/keccak256": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/sha2": "^5.8.0", + "@ethersproject/strings": "^5.8.0" } }, "node_modules/@ethersproject/strings": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz", - "integrity": "sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.8.0.tgz", + "integrity": "sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg==", "funding": [ { "type": "individual", @@ -2226,15 +2300,15 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/constants": "^5.8.0", + "@ethersproject/logger": "^5.8.0" } }, "node_modules/@ethersproject/transactions": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz", - "integrity": "sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.8.0.tgz", + "integrity": "sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg==", "funding": [ { "type": "individual", @@ -2246,21 +2320,21 @@ } ], "dependencies": { - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0" + "@ethersproject/address": "^5.8.0", + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/constants": "^5.8.0", + "@ethersproject/keccak256": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/rlp": "^5.8.0", + "@ethersproject/signing-key": "^5.8.0" } }, "node_modules/@ethersproject/units": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", - "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.8.0.tgz", + "integrity": "sha512-lxq0CAnc5kMGIiWW4Mr041VT8IhNM+Pn5T3haO74XZWFulk7wH1Gv64HqE96hT4a7iiNMdOCFEBgaxWuk8ETKQ==", "funding": [ { "type": "individual", @@ -2272,15 +2346,15 @@ } ], "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/constants": "^5.8.0", + "@ethersproject/logger": "^5.8.0" } }, "node_modules/@ethersproject/wallet": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.7.0.tgz", - "integrity": "sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.8.0.tgz", + "integrity": "sha512-G+jnzmgg6UxurVKRKvw27h0kvG75YKXZKdlLYmAHeF32TGUzHkOFd7Zn6QHOTYRFWnfjtSSFjBowKo7vfrXzPA==", "funding": [ { "type": "individual", @@ -2292,27 +2366,27 @@ } ], "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/json-wallets": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" + "@ethersproject/abstract-provider": "^5.8.0", + "@ethersproject/abstract-signer": "^5.8.0", + "@ethersproject/address": "^5.8.0", + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/hash": "^5.8.0", + "@ethersproject/hdnode": "^5.8.0", + "@ethersproject/json-wallets": "^5.8.0", + "@ethersproject/keccak256": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/random": "^5.8.0", + "@ethersproject/signing-key": "^5.8.0", + "@ethersproject/transactions": "^5.8.0", + "@ethersproject/wordlists": "^5.8.0" } }, "node_modules/@ethersproject/web": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", - "integrity": "sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.8.0.tgz", + "integrity": "sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw==", "funding": [ { "type": "individual", @@ -2324,17 +2398,17 @@ } ], "dependencies": { - "@ethersproject/base64": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@ethersproject/base64": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/strings": "^5.8.0" } }, "node_modules/@ethersproject/wordlists": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", - "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.8.0.tgz", + "integrity": "sha512-2df9bbXicZws2Sb5S6ET493uJ0Z84Fjr3pC4tu/qlnZERibZCeUVuqdtt+7Tv9xxhUxHoIekIA7avrKUWHrezg==", "funding": [ { "type": "individual", @@ -2346,11 +2420,11 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/hash": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/properties": "^5.8.0", + "@ethersproject/strings": "^5.8.0" } }, "node_modules/@fastify/busboy": { @@ -2361,12 +2435,6 @@ "node": ">=14" } }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.14", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", @@ -2427,9 +2495,9 @@ } }, "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, "engines": { "node": ">=12" @@ -3338,21 +3406,88 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@lerna/child-process": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/@lerna/child-process/-/child-process-6.6.2.tgz", - "integrity": "sha512-QyKIWEnKQFnYu2ey+SAAm1A5xjzJLJJj3bhIZd3QKyXKKjaJ0hlxam/OsWSltxTNbcyH1jRJjC6Cxv31usv0Ag==", + "node_modules/@lerna/create": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/@lerna/create/-/create-8.2.1.tgz", + "integrity": "sha512-Cz2u/fwc03D1EE6VFZCLMmI8FIUtGmxHQ3ECeNblsxv9i0YSKWe4Xm18sjO1xltG/K5ByiH8/HMeY9dlyAv22A==", "dev": true, "dependencies": { - "chalk": "^4.1.0", - "execa": "^5.0.0", - "strong-log-transformer": "^2.1.0" + "@npmcli/arborist": "7.5.4", + "@npmcli/package-json": "5.2.0", + "@npmcli/run-script": "8.1.0", + "@nx/devkit": ">=17.1.2 < 21", + "@octokit/plugin-enterprise-rest": "6.0.1", + "@octokit/rest": "20.1.2", + "aproba": "2.0.0", + "byte-size": "8.1.1", + "chalk": "4.1.0", + "clone-deep": "4.0.1", + "cmd-shim": "6.0.3", + "color-support": "1.1.3", + "columnify": "1.6.0", + "console-control-strings": "^1.1.0", + "conventional-changelog-core": "5.0.1", + "conventional-recommended-bump": "7.0.1", + "cosmiconfig": "9.0.0", + "dedent": "1.5.3", + "execa": "5.0.0", + "fs-extra": "^11.2.0", + "get-stream": "6.0.0", + "git-url-parse": "14.0.0", + "glob-parent": "6.0.2", + "globby": "11.1.0", + "graceful-fs": "4.2.11", + "has-unicode": "2.0.1", + "ini": "^1.3.8", + "init-package-json": "6.0.3", + "inquirer": "^8.2.4", + "is-ci": "3.0.1", + "is-stream": "2.0.0", + "js-yaml": "4.1.0", + "libnpmpublish": "9.0.9", + "load-json-file": "6.2.0", + "lodash": "^4.17.21", + "make-dir": "4.0.0", + "minimatch": "3.0.5", + "multimatch": "5.0.0", + "node-fetch": "2.6.7", + "npm-package-arg": "11.0.2", + "npm-packlist": "8.0.2", + "npm-registry-fetch": "^17.1.0", + "nx": ">=17.1.2 < 21", + "p-map": "4.0.0", + "p-map-series": "2.1.0", + "p-queue": "6.6.2", + "p-reduce": "^2.1.0", + "pacote": "^18.0.6", + "pify": "5.0.0", + "read-cmd-shim": "4.0.0", + "resolve-from": "5.0.0", + "rimraf": "^4.4.1", + "semver": "^7.3.4", + "set-blocking": "^2.0.0", + "signal-exit": "3.0.7", + "slash": "^3.0.0", + "ssri": "^10.0.6", + "string-width": "^4.2.3", + "strong-log-transformer": "2.1.0", + "tar": "6.2.1", + "temp-dir": "1.0.0", + "upath": "2.0.1", + "uuid": "^10.0.0", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "5.0.1", + "wide-align": "1.1.5", + "write-file-atomic": "5.0.1", + "write-pkg": "4.0.0", + "yargs": "17.7.2", + "yargs-parser": "21.1.1" }, "engines": { - "node": "^14.17.0 || >=16.0.0" + "node": ">=18.0.0" } }, - "node_modules/@lerna/child-process/node_modules/ansi-styles": { + "node_modules/@lerna/create/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -3367,10 +3502,10 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@lerna/child-process/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/@lerna/create/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "dependencies": { "ansi-styles": "^4.1.0", @@ -3383,7 +3518,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@lerna/child-process/node_modules/color-convert": { + "node_modules/@lerna/create/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -3395,657 +3530,224 @@ "node": ">=7.0.0" } }, - "node_modules/@lerna/child-process/node_modules/color-name": { + "node_modules/@lerna/create/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/@lerna/child-process/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/child-process/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/@lerna/create/node_modules/execa": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", + "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/@lerna/create": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/@lerna/create/-/create-6.6.2.tgz", - "integrity": "sha512-xQ+1Y7D+9etvUlE+unhG/TwmM6XBzGIdFBaNoW8D8kyOa9M2Jf3vdEtAxVa7mhRz66CENfhL/+I/QkVaa7pwbQ==", + "node_modules/@lerna/create/node_modules/get-stream": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", + "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", "dev": true, - "dependencies": { - "@lerna/child-process": "6.6.2", - "dedent": "^0.7.0", - "fs-extra": "^9.1.0", - "init-package-json": "^3.0.2", - "npm-package-arg": "8.1.1", - "p-reduce": "^2.1.0", - "pacote": "15.1.1", - "pify": "^5.0.0", - "semver": "^7.3.4", - "slash": "^3.0.0", - "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "^4.0.0", - "yargs-parser": "20.2.4" - }, "engines": { - "node": "^14.17.0 || >=16.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@lerna/create/node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "node_modules/@lerna/create/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "node_modules/@lerna/create/node_modules/glob": { + "version": "9.3.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", + "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", "dev": true, "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "fs.realpath": "^1.0.0", + "minimatch": "^8.0.2", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" }, "engines": { - "node": ">=10" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@lerna/create/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/@lerna/create/node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "balanced-match": "^1.0.0" } }, - "node_modules/@lerna/create/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/@lerna/create/node_modules/glob/node_modules/minimatch": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@lerna/create/node_modules/yallist": { + "node_modules/@lerna/create/node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@lerna/legacy-package-management": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/@lerna/legacy-package-management/-/legacy-package-management-6.6.2.tgz", - "integrity": "sha512-0hZxUPKnHwehUO2xC4ldtdX9bW0W1UosxebDIQlZL2STnZnA2IFmIk2lJVUyFW+cmTPQzV93jfS0i69T9Z+teg==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "@npmcli/arborist": "6.2.3", - "@npmcli/run-script": "4.1.7", - "@nrwl/devkit": ">=15.5.2 < 16", - "@octokit/rest": "19.0.3", - "byte-size": "7.0.0", - "chalk": "4.1.0", - "clone-deep": "4.0.1", - "cmd-shim": "5.0.0", - "columnify": "1.6.0", - "config-chain": "1.1.12", - "conventional-changelog-core": "4.2.4", - "conventional-recommended-bump": "6.1.0", - "cosmiconfig": "7.0.0", - "dedent": "0.7.0", - "dot-prop": "6.0.1", - "execa": "5.0.0", - "file-url": "3.0.0", - "find-up": "5.0.0", - "fs-extra": "9.1.0", - "get-port": "5.1.1", - "get-stream": "6.0.0", - "git-url-parse": "13.1.0", - "glob-parent": "5.1.2", - "globby": "11.1.0", - "graceful-fs": "4.2.10", - "has-unicode": "2.0.1", - "inquirer": "8.2.4", - "is-ci": "2.0.0", - "is-stream": "2.0.0", - "libnpmpublish": "7.1.4", - "load-json-file": "6.2.0", - "make-dir": "3.1.0", - "minimatch": "3.0.5", - "multimatch": "5.0.0", - "node-fetch": "2.6.7", - "npm-package-arg": "8.1.1", - "npm-packlist": "5.1.1", - "npm-registry-fetch": "14.0.3", - "npmlog": "6.0.2", - "p-map": "4.0.0", - "p-map-series": "2.1.0", - "p-queue": "6.6.2", - "p-waterfall": "2.1.1", - "pacote": "15.1.1", - "pify": "5.0.0", - "pretty-format": "29.4.3", - "read-cmd-shim": "3.0.0", - "read-package-json": "5.0.1", - "resolve-from": "5.0.0", - "semver": "7.3.8", - "signal-exit": "3.0.7", - "slash": "3.0.0", - "ssri": "9.0.1", - "strong-log-transformer": "2.1.0", - "tar": "6.1.11", - "temp-dir": "1.0.0", - "tempy": "1.0.0", - "upath": "2.0.1", - "uuid": "8.3.2", - "write-file-atomic": "4.0.1", - "write-pkg": "4.0.0", - "yargs": "16.2.0" - }, "engines": { - "node": "^14.17.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/@lerna/legacy-package-management/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/@lerna/create/node_modules/is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@lerna/legacy-package-management/node_modules/chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "node_modules/@lerna/create/node_modules/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": "*" } }, - "node_modules/@lerna/legacy-package-management/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/@lerna/create/node_modules/minipass": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", + "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=8" } }, - "node_modules/@lerna/legacy-package-management/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@lerna/legacy-package-management/node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "node_modules/@lerna/legacy-package-management/node_modules/execa": { + "node_modules/@lerna/create/node_modules/resolve-from": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", - "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "node": ">=8" } }, - "node_modules/@lerna/legacy-package-management/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "node_modules/@lerna/create/node_modules/rimraf": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", + "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", "dev": true, "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "glob": "^9.2.0" + }, + "bin": { + "rimraf": "dist/cjs/src/bin.js" }, "engines": { - "node": ">=10" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@lerna/legacy-package-management/node_modules/get-stream": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", - "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", + "node_modules/@lerna/create/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@lerna/legacy-package-management/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/@lerna/create/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 6" + "node": ">=8" } }, - "node_modules/@lerna/legacy-package-management/node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/@lerna/legacy-package-management/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/@lerna/create/node_modules/uuid": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", + "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", "dev": true, - "engines": { - "node": ">=8" + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" } }, - "node_modules/@lerna/legacy-package-management/node_modules/inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "node_modules/@lerna/create/node_modules/write-file-atomic": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=12.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@lerna/legacy-package-management/node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/@lerna/create/node_modules/write-file-atomic/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@lerna/legacy-package-management/node_modules/is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "node_modules/@lerna/create/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/make-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", - "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/make-fetch-happen/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/make-fetch-happen/node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/make-fetch-happen/node_modules/ssri/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/minipass": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", - "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/minipass-fetch/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/npm-registry-fetch": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz", - "integrity": "sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==", - "dev": true, - "dependencies": { - "make-fetch-happen": "^11.0.0", - "minipass": "^4.0.0", - "minipass-fetch": "^3.0.0", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^10.0.0", - "proc-log": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/npm-registry-fetch/node_modules/npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/pretty-format": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.4.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", - "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/write-file-atomic": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.1.tgz", - "integrity": "sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16" - } - }, - "node_modules/@lerna/legacy-package-management/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@lerna/legacy-package-management/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/@metamask/abi-utils": { @@ -4260,9 +3962,9 @@ } }, "node_modules/@multiversx/sdk-core": { - "version": "12.19.1", - "resolved": "https://registry.npmjs.org/@multiversx/sdk-core/-/sdk-core-12.19.1.tgz", - "integrity": "sha512-r0TxikABzUs5tVbUKAJBrERhAEedMuBIh4ZgFuvdpP8y5UQXR/b6RxhG9ApwPLYdlhkvCnpB/jDeqdhphv4zPw==", + "version": "12.19.3", + "resolved": "https://registry.npmjs.org/@multiversx/sdk-core/-/sdk-core-12.19.3.tgz", + "integrity": "sha512-QplpEKmUapjRybfyBQV3T/t6+glZyrEKrhoIf90qWA7yxkC/lEu65yMPFsqcMyHj4nCIMmbPYYkoRi0QL4E/Kw==", "dependencies": { "@multiversx/sdk-transaction-decoder": "1.0.2", "bech32": "1.1.4", @@ -4270,7 +3972,7 @@ "buffer": "6.0.3", "json-duplicate-key-handle": "1.0.0", "keccak": "3.0.2", - "protobufjs": "7.2.4" + "protobufjs": "^7.3.2" }, "peerDependencies": { "bignumber.js": "^9.0.1" @@ -4291,14 +3993,14 @@ } }, "node_modules/@multiversx/sdk-core/node_modules/long": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", - "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==" + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/long/-/long-5.3.1.tgz", + "integrity": "sha512-ka87Jz3gcx/I7Hal94xaN2tZEOPoUOEVftkQqZx2EeQRN7LGdfLlI3FvZ+7WDplm+vK2Urx9ULrvSowtdCieng==" }, "node_modules/@multiversx/sdk-core/node_modules/protobufjs": { - "version": "7.2.4", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.4.tgz", - "integrity": "sha512-AT+RJgD2sH8phPmCf7OUZR8xGdcJRga4+1cOaXJ64hvcSkVhNcRHOwIxUatPH15+nj59WAGTDv3LSGZPEQbJaQ==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.4.0.tgz", + "integrity": "sha512-mRUWCc3KUU4w1jU8sGxICXH/gNS94DvI1gxqDvBzhj1JpcsimQkYiOJfwsPUykUI5ZaspFbSgmBLER8IrQ3tqw==", "hasInstallScript": true, "dependencies": { "@protobufjs/aspromise": "^1.1.2", @@ -4319,25 +4021,17 @@ } }, "node_modules/@multiversx/sdk-network-providers": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@multiversx/sdk-network-providers/-/sdk-network-providers-2.4.1.tgz", - "integrity": "sha512-AyKLxt51v4Y94NC3/0witz7XPpZ6+2mOi8CVW+j7HP6RtDl5vJinxCriSKb0Z/PzV6LdmJmwCW5iDRebMIk6fg==", + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@multiversx/sdk-network-providers/-/sdk-network-providers-2.9.3.tgz", + "integrity": "sha512-oBrXbNaaHQymd8EqUQPW0bpZu9JaTz6TOaV8MzNCzUo0Xe3a2QxaQ7f0I5OYzD7k0TxPqLv4hQhfIsh3+ifmPw==", "dependencies": { - "axios": "1.6.5", "bech32": "1.1.4", "bignumber.js": "9.0.1", "buffer": "6.0.3", "json-bigint": "1.0.0" - } - }, - "node_modules/@multiversx/sdk-network-providers/node_modules/axios": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.5.tgz", - "integrity": "sha512-Ii012v05KEVuUoFWmMW/UQv9aRIc3ZwkWDcM+h5Il8izZCtRVpDUfwpoFf7eOtajT3QiGR4yDUx7lPqHJULgbg==", - "dependencies": { - "follow-redirects": "^1.15.4", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" + }, + "peerDependencies": { + "axios": "^1.7.4" } }, "node_modules/@multiversx/sdk-network-providers/node_modules/bignumber.js": { @@ -4492,6 +4186,17 @@ "url": "https://paulmillr.com/funding/" } }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.4.tgz", + "integrity": "sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==", + "dev": true, + "dependencies": { + "@emnapi/core": "^1.1.0", + "@emnapi/runtime": "^1.1.0", + "@tybys/wasm-util": "^0.9.0" + } + }, "node_modules/@near-js/accounts": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/@near-js/accounts/-/accounts-0.1.4.tgz", @@ -5404,76 +5109,97 @@ "node": ">= 10" } }, - "node_modules/@npmcli/arborist": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-6.2.3.tgz", - "integrity": "sha512-lpGOC2ilSJXcc2zfW9QtukcCTcMbl3fVI0z4wvFB2AFIl0C+Q6Wv7ccrpdrQa8rvJ1ZVuc6qkX7HVTyKlzGqKA==", + "node_modules/@npmcli/agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", "dev": true, "dependencies": { - "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/fs": "^3.1.0", - "@npmcli/installed-package-contents": "^2.0.0", - "@npmcli/map-workspaces": "^3.0.2", - "@npmcli/metavuln-calculator": "^5.0.0", - "@npmcli/name-from-folder": "^2.0.0", - "@npmcli/node-gyp": "^3.0.0", - "@npmcli/package-json": "^3.0.0", - "@npmcli/query": "^3.0.0", - "@npmcli/run-script": "^6.0.0", - "bin-links": "^4.0.1", - "cacache": "^17.0.4", - "common-ancestor-path": "^1.0.1", - "hosted-git-info": "^6.1.1", - "json-parse-even-better-errors": "^3.0.0", - "json-stringify-nice": "^1.1.4", - "minimatch": "^6.1.6", - "nopt": "^7.0.0", - "npm-install-checks": "^6.0.0", - "npm-package-arg": "^10.1.0", - "npm-pick-manifest": "^8.0.1", - "npm-registry-fetch": "^14.0.3", - "npmlog": "^7.0.1", - "pacote": "^15.0.8", - "parse-conflict-json": "^3.0.0", - "proc-log": "^3.0.0", - "promise-all-reject-late": "^1.0.0", - "promise-call-limit": "^1.0.1", - "read-package-json-fast": "^3.0.2", - "semver": "^7.3.7", - "ssri": "^10.0.1", - "treeverse": "^3.0.0", - "walk-up-path": "^1.0.0" - }, - "bin": { - "arborist": "bin/index.js" + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/arborist/node_modules/@npmcli/run-script": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", - "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", + "node_modules/@npmcli/agent/node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "dev": true, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dev": true, "dependencies": { - "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^6.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^3.0.0", - "which": "^3.0.0" + "agent-base": "^7.1.2", + "debug": "4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">= 14" } }, - "node_modules/@npmcli/arborist/node_modules/are-we-there-yet": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.2.tgz", - "integrity": "sha512-ncSWAawFhKMJDTdoAeOV+jyW1VCMj5QIAwULIBV0SSR7B/RLPPEQiknKcg/RIIZlUQrxELpsxMiTUoAQ4sIUyg==", + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true + }, + "node_modules/@npmcli/arborist": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-7.5.4.tgz", + "integrity": "sha512-nWtIc6QwwoUORCRNzKx4ypHqCk3drI+5aeYdMTQQiRCcn4lOOgfQh7WyZobGYTxXPSq1VwV53lkpN/BRlRk08g==", "dev": true, + "dependencies": { + "@isaacs/string-locale-compare": "^1.1.0", + "@npmcli/fs": "^3.1.1", + "@npmcli/installed-package-contents": "^2.1.0", + "@npmcli/map-workspaces": "^3.0.2", + "@npmcli/metavuln-calculator": "^7.1.1", + "@npmcli/name-from-folder": "^2.0.0", + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/package-json": "^5.1.0", + "@npmcli/query": "^3.1.0", + "@npmcli/redact": "^2.0.0", + "@npmcli/run-script": "^8.1.0", + "bin-links": "^4.0.4", + "cacache": "^18.0.3", + "common-ancestor-path": "^1.0.1", + "hosted-git-info": "^7.0.2", + "json-parse-even-better-errors": "^3.0.2", + "json-stringify-nice": "^1.1.4", + "lru-cache": "^10.2.2", + "minimatch": "^9.0.4", + "nopt": "^7.2.1", + "npm-install-checks": "^6.2.0", + "npm-package-arg": "^11.0.2", + "npm-pick-manifest": "^9.0.1", + "npm-registry-fetch": "^17.0.1", + "pacote": "^18.0.6", + "parse-conflict-json": "^3.0.0", + "proc-log": "^4.2.0", + "proggy": "^2.0.0", + "promise-all-reject-late": "^1.0.0", + "promise-call-limit": "^3.0.1", + "read-package-json-fast": "^3.0.2", + "semver": "^7.3.7", + "ssri": "^10.0.6", + "treeverse": "^3.0.0", + "walk-up-path": "^3.0.1" + }, + "bin": { + "arborist": "bin/index.js" + }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@npmcli/arborist/node_modules/brace-expansion": { @@ -5485,90 +5211,32 @@ "balanced-match": "^1.0.0" } }, - "node_modules/@npmcli/arborist/node_modules/gauge": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.1.tgz", - "integrity": "sha512-CmykPMJGuNan/3S4kZOpvvPYSNqSHANiWnh9XcMU2pSjtBfF0XzZ2p1bFAxTbnFxyBuPxQYHhzwaoOmUdqzvxQ==", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^4.0.1", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/@npmcli/arborist/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true }, "node_modules/@npmcli/arborist/node_modules/minimatch": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", - "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@npmcli/arborist/node_modules/npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/arborist/node_modules/npmlog": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz", - "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==", - "dev": true, - "dependencies": { - "are-we-there-yet": "^4.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^5.0.0", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/@npmcli/arborist/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -5576,67 +5244,10 @@ "node": ">=10" } }, - "node_modules/@npmcli/arborist/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@npmcli/arborist/node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/arborist/node_modules/validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", - "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/arborist/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/which.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/arborist/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@npmcli/fs": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", - "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", + "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", "dev": true, "dependencies": { "semver": "^7.3.5" @@ -5645,26 +5256,11 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/fs/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@npmcli/fs/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -5672,108 +5268,97 @@ "node": ">=10" } }, - "node_modules/@npmcli/fs/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@npmcli/git": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", - "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz", + "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==", "dev": true, "dependencies": { - "@npmcli/promise-spawn": "^6.0.0", - "lru-cache": "^7.4.4", - "npm-pick-manifest": "^8.0.0", - "proc-log": "^3.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "ini": "^4.1.3", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^9.0.0", + "proc-log": "^4.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "node_modules/@npmcli/git/node_modules/ini": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", + "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", "dev": true, "engines": { - "node": ">=12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/git/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/@npmcli/git/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, "engines": { - "node": ">=10" + "node": ">=16" } }, - "node_modules/@npmcli/git/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true + }, + "node_modules/@npmcli/git/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { "node": ">=10" } }, "node_modules/@npmcli/git/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/git/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@npmcli/installed-package-contents": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz", - "integrity": "sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", + "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", "dev": true, "dependencies": { "npm-bundled": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" }, "bin": { - "installed-package-contents": "lib/index.js" + "installed-package-contents": "bin/index.js" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/@npmcli/map-workspaces": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.4.tgz", - "integrity": "sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz", + "integrity": "sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA==", "dev": true, "dependencies": { "@npmcli/name-from-folder": "^2.0.0", @@ -5795,31 +5380,29 @@ } }, "node_modules/@npmcli/map-workspaces/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@npmcli/map-workspaces/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -5832,40 +5415,26 @@ } }, "node_modules/@npmcli/metavuln-calculator": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-5.0.1.tgz", - "integrity": "sha512-qb8Q9wIIlEPj3WeA1Lba91R4ZboPL0uspzV0F9uwP+9AYMVB2zOoa7Pbk12g6D2NHAinSbHh6QYmGuRyHZ874Q==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-7.1.1.tgz", + "integrity": "sha512-Nkxf96V0lAx3HCpVda7Vw4P23RILgdi/5K1fmj2tZkWIYLpXAN8k2UVVOsW16TsS5F8Ws2I7Cm+PU1/rsVF47g==", "dev": true, "dependencies": { - "cacache": "^17.0.0", + "cacache": "^18.0.0", "json-parse-even-better-errors": "^3.0.0", - "pacote": "^15.0.0", + "pacote": "^18.0.0", + "proc-log": "^4.1.0", "semver": "^7.3.5" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@npmcli/metavuln-calculator/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@npmcli/metavuln-calculator/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -5873,26 +5442,6 @@ "node": ">=10" } }, - "node_modules/@npmcli/metavuln-calculator/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "deprecated": "This functionality has been moved to @npmcli/fs", - "dev": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/@npmcli/name-from-folder": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz", @@ -5912,20 +5461,21 @@ } }, "node_modules/@npmcli/package-json": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-3.1.1.tgz", - "integrity": "sha512-+UW0UWOYFKCkvszLoTwrYGrjNrT8tI5Ckeb/h+Z1y1fsNJEctl7HmerA5j2FgmoqFaLI2gsA1X9KgMFqx/bRmA==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.0.tgz", + "integrity": "sha512-qe/kiqqkW0AGtvBjL8TJKZk/eBBSpnJkUWvHdQ9jM2lKHXRYYJuyNpJPlJw3c8QjC2ow6NZYiLExhUaeJelbxQ==", "dev": true, "dependencies": { - "@npmcli/git": "^4.1.0", + "@npmcli/git": "^5.0.0", "glob": "^10.2.2", + "hosted-git-info": "^7.0.0", "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^5.0.0", - "npm-normalize-package-bin": "^3.0.1", - "proc-log": "^3.0.0" + "normalize-package-data": "^6.0.0", + "proc-log": "^4.0.0", + "semver": "^7.5.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@npmcli/package-json/node_modules/brace-expansion": { @@ -5938,31 +5488,29 @@ } }, "node_modules/@npmcli/package-json/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@npmcli/package-json/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -5974,31 +5522,52 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@npmcli/promise-spawn": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", - "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", + "node_modules/@npmcli/package-json/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "which": "^3.0.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" + } + }, + "node_modules/@npmcli/promise-spawn": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz", + "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==", + "dev": true, + "dependencies": { + "which": "^4.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "engines": { + "node": ">=16" } }, "node_modules/@npmcli/promise-spawn/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.13.0 || >=18.0.0" } }, "node_modules/@npmcli/query": { @@ -6013,113 +5582,116 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@npmcli/redact": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz", + "integrity": "sha512-YgsR5jCQZhVmTJvjduTOIHph0L73pK8xwMVaDY0PatySqVM9AZj93jpoXYSJqfHFxFkN9dmqTw6OiqExsS3LPw==", + "dev": true, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/@npmcli/run-script": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.1.7.tgz", - "integrity": "sha512-WXr/MyM4tpKA4BotB81NccGAv8B48lNH0gRoILucbcAhTQXLCoi6HflMV3KdXubIqvP9SuLsFn68Z7r4jl+ppw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz", + "integrity": "sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==", "dev": true, "dependencies": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/package-json": "^5.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "node-gyp": "^10.0.0", + "proc-log": "^4.0.0", + "which": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/run-script/node_modules/@npmcli/node-gyp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", - "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", + "node_modules/@npmcli/run-script/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=16" } }, - "node_modules/@npmcli/run-script/node_modules/@npmcli/promise-spawn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", - "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, "dependencies": { - "infer-owner": "^1.0.4" + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/run-script/node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/@npmcli/run-script/node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "node_modules/@npmcli/run-script/node_modules/read-package-json-fast": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", - "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", + "node_modules/@nx/devkit": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/devkit/-/devkit-20.7.2.tgz", + "integrity": "sha512-6qsQ49T1hWQ8s4JMvGX9k3tpjY4kwr+/2CE1ZCy1txJVFflDatJxdV3fMqUDqo6n81yB6AmVqoSQjQkO6fCRRQ==", "dev": true, "dependencies": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" + "ejs": "^3.1.7", + "enquirer": "~2.3.6", + "ignore": "^5.0.4", + "minimatch": "9.0.3", + "semver": "^7.5.3", + "tmp": "~0.2.1", + "tslib": "^2.3.0", + "yargs-parser": "21.1.1" }, - "engines": { - "node": ">=10" + "peerDependencies": { + "nx": ">= 19 <= 21" } }, - "node_modules/@nrwl/cli": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/cli/-/cli-15.9.7.tgz", - "integrity": "sha512-1jtHBDuJzA57My5nLzYiM372mJW0NY6rFKxlWt5a0RLsAZdPTHsd8lE3Gs9XinGC1jhXbruWmhhnKyYtZvX/zA==", + "node_modules/@nx/devkit/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "nx": "15.9.7" + "balanced-match": "^1.0.0" } }, - "node_modules/@nrwl/devkit": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/devkit/-/devkit-15.9.7.tgz", - "integrity": "sha512-Sb7Am2TMT8AVq8e+vxOlk3AtOA2M0qCmhBzoM1OJbdHaPKc0g0UgSnWRml1kPGg5qfPk72tWclLoZJ5/ut0vTg==", + "node_modules/@nx/devkit/node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "dependencies": { - "ejs": "^3.1.7", - "ignore": "^5.0.4", - "semver": "7.5.4", - "tmp": "~0.2.1", - "tslib": "^2.3.0" + "ansi-colors": "^4.1.1" }, - "peerDependencies": { - "nx": ">= 14.1 <= 16" + "engines": { + "node": ">=8.6" } }, - "node_modules/@nrwl/devkit/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/@nx/devkit/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@nrwl/devkit/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/@nx/devkit/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -6127,22 +5699,25 @@ "node": ">=10" } }, - "node_modules/@nrwl/devkit/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "node_modules/@nx/devkit/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true }, - "node_modules/@nrwl/devkit/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/@nx/devkit/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } }, - "node_modules/@nrwl/nx-darwin-arm64": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/nx-darwin-arm64/-/nx-darwin-arm64-15.9.7.tgz", - "integrity": "sha512-aBUgnhlkrgC0vu0fK6eb9Vob7eFnkuknrK+YzTjmLrrZwj7FGNAeyGXSlyo1dVokIzjVKjJg2saZZ0WQbfuCJw==", + "node_modules/@nx/nx-darwin-arm64": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-20.7.2.tgz", + "integrity": "sha512-ejcAkFpKUR8rsmL86NjBA8WwUf5RlxxlS/3Vz6V59ZJVPsjxsTephyV8z+y8WEyWP4GaDycsc608Me8kijp5EQ==", "cpu": [ "arm64" ], @@ -6155,10 +5730,10 @@ "node": ">= 10" } }, - "node_modules/@nrwl/nx-darwin-x64": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/nx-darwin-x64/-/nx-darwin-x64-15.9.7.tgz", - "integrity": "sha512-L+elVa34jhGf1cmn38Z0sotQatmLovxoASCIw5r1CBZZeJ5Tg7Y9nOwjRiDixZxNN56hPKXm6xl9EKlVHVeKlg==", + "node_modules/@nx/nx-darwin-x64": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-20.7.2.tgz", + "integrity": "sha512-e9FC7QMolZ+RslMOzm4x9ysIIsaTo3Bojcmt6IZ0WofjPqWTvHyMK95Gwz1I3qt0PDygKS5qtmlI1ganybyfpQ==", "cpu": [ "x64" ], @@ -6171,10 +5746,26 @@ "node": ">= 10" } }, - "node_modules/@nrwl/nx-linux-arm-gnueabihf": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-15.9.7.tgz", - "integrity": "sha512-pqmfqqEUGFu6PmmHKyXyUw1Al0Ki8PSaR0+ndgCAb1qrekVDGDfznJfaqxN0JSLeolPD6+PFtLyXNr9ZyPFlFg==", + "node_modules/@nx/nx-freebsd-x64": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-20.7.2.tgz", + "integrity": "sha512-KJ9bqwiOeZPXLvCecfFsFtuSxccZ+0wC/waDGY0Ds2bSevNyb3P3c3HoZJskyQj+roZ5IlawKPO9brE6SKAS9A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nx/nx-linux-arm-gnueabihf": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-20.7.2.tgz", + "integrity": "sha512-2j7z7rS7NEtvfosLZn6pzr+WnDQ/XtW3a+o/XMgcD8PkfWFOiAzK1DL8DvXE3G1MJq62jSzw+euahpYHLIkH0w==", "cpu": [ "arm" ], @@ -6187,10 +5778,10 @@ "node": ">= 10" } }, - "node_modules/@nrwl/nx-linux-arm64-gnu": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-15.9.7.tgz", - "integrity": "sha512-NYOa/eRrqmM+In5g3M0rrPVIS9Z+q6fvwXJYf/KrjOHqqan/KL+2TOfroA30UhcBrwghZvib7O++7gZ2hzwOnA==", + "node_modules/@nx/nx-linux-arm64-gnu": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-20.7.2.tgz", + "integrity": "sha512-tIgHCRe9M4SZ+seG98jE/FoG4/pfvGoEny/TV5V0tYvpMfUlKAU0GdcnP6YZCrQR9iRF6ZsuCZbPf7IuACyXdA==", "cpu": [ "arm64" ], @@ -6203,10 +5794,10 @@ "node": ">= 10" } }, - "node_modules/@nrwl/nx-linux-arm64-musl": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-arm64-musl/-/nx-linux-arm64-musl-15.9.7.tgz", - "integrity": "sha512-zyStqjEcmbvLbejdTOrLUSEdhnxNtdQXlmOuymznCzYUEGRv+4f7OAepD3yRoR0a/57SSORZmmGQB7XHZoYZJA==", + "node_modules/@nx/nx-linux-arm64-musl": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-20.7.2.tgz", + "integrity": "sha512-/r4TNzyjhic7DZei6DXfbsfONDp40LbHjn/XcrJ53yI1UHGFunUUQYEDeBbgOcqs0IkRitNSgTDgpkG9UvJ65Q==", "cpu": [ "arm64" ], @@ -6219,10 +5810,10 @@ "node": ">= 10" } }, - "node_modules/@nrwl/nx-linux-x64-gnu": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-x64-gnu/-/nx-linux-x64-gnu-15.9.7.tgz", - "integrity": "sha512-saNK5i2A8pKO3Il+Ejk/KStTApUpWgCxjeUz9G+T8A+QHeDloZYH2c7pU/P3jA9QoNeKwjVO9wYQllPL9loeVg==", + "node_modules/@nx/nx-linux-x64-gnu": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-20.7.2.tgz", + "integrity": "sha512-s/cMSJlJeF+Io+3bWy+wJSemBwKL/IAcXUxLXRSDuaPXv7AoDWctmbfcyLqQJ7Ufcioivvil0XTtD/vkJI0x3A==", "cpu": [ "x64" ], @@ -6235,10 +5826,10 @@ "node": ">= 10" } }, - "node_modules/@nrwl/nx-linux-x64-musl": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-x64-musl/-/nx-linux-x64-musl-15.9.7.tgz", - "integrity": "sha512-extIUThYN94m4Vj4iZggt6hhMZWQSukBCo8pp91JHnDcryBg7SnYmnikwtY1ZAFyyRiNFBLCKNIDFGkKkSrZ9Q==", + "node_modules/@nx/nx-linux-x64-musl": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-20.7.2.tgz", + "integrity": "sha512-9ZdPQwD4LDhwMOQ1NyYRDNr+6FVOdFeibkO+nN4nhkNBFxK6w2iprebrUKeOvQ1yHttt2YSC5p9bqxP7DVtE7w==", "cpu": [ "x64" ], @@ -6251,10 +5842,10 @@ "node": ">= 10" } }, - "node_modules/@nrwl/nx-win32-arm64-msvc": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-15.9.7.tgz", - "integrity": "sha512-GSQ54hJ5AAnKZb4KP4cmBnJ1oC4ILxnrG1mekxeM65c1RtWg9NpBwZ8E0gU3xNrTv8ZNsBeKi/9UhXBxhsIh8A==", + "node_modules/@nx/nx-win32-arm64-msvc": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-20.7.2.tgz", + "integrity": "sha512-fSd44rmECiw/HZD9f0mNPRF8zwtx3N3TNU7CRohZtRBVotUgOuQU1XONi1J0V117g8q4VQmmaAO9eMdVxM2ZuQ==", "cpu": [ "arm64" ], @@ -6267,10 +5858,10 @@ "node": ">= 10" } }, - "node_modules/@nrwl/nx-win32-x64-msvc": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/nx-win32-x64-msvc/-/nx-win32-x64-msvc-15.9.7.tgz", - "integrity": "sha512-x6URof79RPd8AlapVbPefUD3ynJZpmah3tYaYZ9xZRMXojVtEHV8Qh5vysKXQ1rNYJiiB8Ah6evSKWLbAH60tw==", + "node_modules/@nx/nx-win32-x64-msvc": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-20.7.2.tgz", + "integrity": "sha512-/ApoP28ztk/MSNGHnZ/t4bfvjHwU5kmQan2O3aTOj84vZHOlIk57SncVeCsVnT4XQihNjaSw3cbqLi2PZ+rRUw==", "cpu": [ "x64" ], @@ -6283,77 +5874,64 @@ "node": ">= 10" } }, - "node_modules/@nrwl/tao": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-15.9.7.tgz", - "integrity": "sha512-OBnHNvQf3vBH0qh9YnvBQQWyyFZ+PWguF6dJ8+1vyQYlrLVk/XZ8nJ4ukWFb+QfPv/O8VBmqaofaOI9aFC4yTw==", - "dev": true, - "dependencies": { - "nx": "15.9.7" - }, - "bin": { - "tao": "index.js" - } - }, "node_modules/@octokit/auth-token": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.4.tgz", - "integrity": "sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz", + "integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==", "dev": true, "engines": { - "node": ">= 14" + "node": ">= 18" } }, "node_modules/@octokit/core": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.4.tgz", - "integrity": "sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.2.1.tgz", + "integrity": "sha512-dKYCMuPO1bmrpuogcjQ8z7ICCH3FP6WmxpwC03yjzGfZhj9fTJg6+bS1+UAplekbN2C+M61UNllGOOoAfGCrdQ==", "dev": true, "dependencies": { - "@octokit/auth-token": "^3.0.0", - "@octokit/graphql": "^5.0.0", - "@octokit/request": "^6.0.0", - "@octokit/request-error": "^3.0.0", - "@octokit/types": "^9.0.0", + "@octokit/auth-token": "^4.0.0", + "@octokit/graphql": "^7.1.0", + "@octokit/request": "^8.4.1", + "@octokit/request-error": "^5.1.1", + "@octokit/types": "^13.0.0", "before-after-hook": "^2.2.0", "universal-user-agent": "^6.0.0" }, "engines": { - "node": ">= 14" + "node": ">= 18" } }, "node_modules/@octokit/endpoint": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.6.tgz", - "integrity": "sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==", + "version": "9.0.6", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.6.tgz", + "integrity": "sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw==", "dev": true, "dependencies": { - "@octokit/types": "^9.0.0", - "is-plain-object": "^5.0.0", + "@octokit/types": "^13.1.0", "universal-user-agent": "^6.0.0" }, "engines": { - "node": ">= 14" + "node": ">= 18" } }, "node_modules/@octokit/graphql": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.6.tgz", - "integrity": "sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.1.1.tgz", + "integrity": "sha512-3mkDltSfcDUoa176nlGoA32RGjeWjl3K7F/BwHwRMJUW/IteSa4bnSV8p2ThNkcIcZU2umkZWxwETSSCJf2Q7g==", "dev": true, "dependencies": { - "@octokit/request": "^6.0.0", - "@octokit/types": "^9.0.0", + "@octokit/request": "^8.4.1", + "@octokit/types": "^13.0.0", "universal-user-agent": "^6.0.0" }, "engines": { - "node": ">= 14" + "node": ">= 18" } }, "node_modules/@octokit/openapi-types": { - "version": "18.1.1", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.1.1.tgz", - "integrity": "sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw==", + "version": "24.2.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-24.2.0.tgz", + "integrity": "sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg==", "dev": true }, "node_modules/@octokit/plugin-enterprise-rest": { @@ -6363,128 +5941,98 @@ "dev": true }, "node_modules/@octokit/plugin-paginate-rest": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-3.1.0.tgz", - "integrity": "sha512-+cfc40pMzWcLkoDcLb1KXqjX0jTGYXjKuQdFQDc6UAknISJHnZTiBqld6HDwRJvD4DsouDKrWXNbNV0lE/3AXA==", + "version": "11.4.4-cjs.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-11.4.4-cjs.2.tgz", + "integrity": "sha512-2dK6z8fhs8lla5PaOTgqfCGBxgAv/le+EhPs27KklPhm1bKObpu6lXzwfUEQ16ajXzqNrKMujsFyo9K2eaoISw==", "dev": true, "dependencies": { - "@octokit/types": "^6.41.0" + "@octokit/types": "^13.7.0" }, "engines": { - "node": ">= 14" + "node": ">= 18" }, "peerDependencies": { - "@octokit/core": ">=4" - } - }, - "node_modules/@octokit/plugin-paginate-rest/node_modules/@octokit/openapi-types": { - "version": "12.11.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz", - "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==", - "dev": true - }, - "node_modules/@octokit/plugin-paginate-rest/node_modules/@octokit/types": { - "version": "6.41.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz", - "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==", - "dev": true, - "dependencies": { - "@octokit/openapi-types": "^12.11.0" + "@octokit/core": "5" } }, "node_modules/@octokit/plugin-request-log": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", - "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-4.0.1.tgz", + "integrity": "sha512-GihNqNpGHorUrO7Qa9JbAl0dbLnqJVrV8OXe2Zm5/Y4wFkZQDfTreBzVmiRfJVfE4mClXdihHnbpyyO9FSX4HA==", "dev": true, + "engines": { + "node": ">= 18" + }, "peerDependencies": { - "@octokit/core": ">=3" + "@octokit/core": "5" } }, "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-6.8.1.tgz", - "integrity": "sha512-QrlaTm8Lyc/TbU7BL/8bO49vp+RZ6W3McxxmmQTgYxf2sWkO8ZKuj4dLhPNJD6VCUW1hetCmeIM0m6FTVpDiEg==", + "version": "13.3.2-cjs.1", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-13.3.2-cjs.1.tgz", + "integrity": "sha512-VUjIjOOvF2oELQmiFpWA1aOPdawpyaCUqcEBc/UOUnj3Xp6DJGrJ1+bjUIIDzdHjnFNO6q57ODMfdEZnoBkCwQ==", "dev": true, "dependencies": { - "@octokit/types": "^8.1.1", - "deprecation": "^2.3.1" + "@octokit/types": "^13.8.0" }, "engines": { - "node": ">= 14" + "node": ">= 18" }, "peerDependencies": { - "@octokit/core": ">=3" - } - }, - "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/openapi-types": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-14.0.0.tgz", - "integrity": "sha512-HNWisMYlR8VCnNurDU6os2ikx0s0VyEjDYHNS/h4cgb8DeOxQ0n72HyinUtdDVxJhFy3FWLGl0DJhfEWk3P5Iw==", - "dev": true - }, - "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-8.2.1.tgz", - "integrity": "sha512-8oWMUji8be66q2B9PmEIUyQm00VPDPun07umUWSaCwxmeaquFBro4Hcc3ruVoDo3zkQyZBlRvhIMEYS3pBhanw==", - "dev": true, - "dependencies": { - "@octokit/openapi-types": "^14.0.0" + "@octokit/core": "^5" } }, "node_modules/@octokit/request": { - "version": "6.2.8", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.8.tgz", - "integrity": "sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.4.1.tgz", + "integrity": "sha512-qnB2+SY3hkCmBxZsR/MPCybNmbJe4KAlfWErXq+rBKkQJlbjdJeS85VI9r8UqeLYLvnAenU8Q1okM/0MBsAGXw==", "dev": true, "dependencies": { - "@octokit/endpoint": "^7.0.0", - "@octokit/request-error": "^3.0.0", - "@octokit/types": "^9.0.0", - "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.7", + "@octokit/endpoint": "^9.0.6", + "@octokit/request-error": "^5.1.1", + "@octokit/types": "^13.1.0", "universal-user-agent": "^6.0.0" }, "engines": { - "node": ">= 14" + "node": ">= 18" } }, "node_modules/@octokit/request-error": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz", - "integrity": "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.1.1.tgz", + "integrity": "sha512-v9iyEQJH6ZntoENr9/yXxjuezh4My67CBSu9r6Ve/05Iu5gNgnisNWOsoJHTP6k0Rr0+HQIpnH+kyammu90q/g==", "dev": true, "dependencies": { - "@octokit/types": "^9.0.0", + "@octokit/types": "^13.1.0", "deprecation": "^2.0.0", "once": "^1.4.0" }, "engines": { - "node": ">= 14" + "node": ">= 18" } }, "node_modules/@octokit/rest": { - "version": "19.0.3", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.3.tgz", - "integrity": "sha512-5arkTsnnRT7/sbI4fqgSJ35KiFaN7zQm0uQiQtivNQLI8RQx8EHwJCajcTUwmaCMNDg7tdCvqAnc7uvHHPxrtQ==", + "version": "20.1.2", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-20.1.2.tgz", + "integrity": "sha512-GmYiltypkHHtihFwPRxlaorG5R9VAHuk/vbszVoRTGXnAsY60wYLkh/E2XiFmdZmqrisw+9FaazS1i5SbdWYgA==", "dev": true, "dependencies": { - "@octokit/core": "^4.0.0", - "@octokit/plugin-paginate-rest": "^3.0.0", - "@octokit/plugin-request-log": "^1.0.4", - "@octokit/plugin-rest-endpoint-methods": "^6.0.0" + "@octokit/core": "^5.0.2", + "@octokit/plugin-paginate-rest": "11.4.4-cjs.2", + "@octokit/plugin-request-log": "^4.0.0", + "@octokit/plugin-rest-endpoint-methods": "13.3.2-cjs.1" }, "engines": { - "node": ">= 14" + "node": ">= 18" } }, "node_modules/@octokit/types": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz", - "integrity": "sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==", + "version": "13.10.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.10.0.tgz", + "integrity": "sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA==", "dev": true, "dependencies": { - "@octokit/openapi-types": "^18.0.0" + "@octokit/openapi-types": "^24.2.0" } }, "node_modules/@open-rpc/client-js": { @@ -6506,30 +6054,6 @@ "ws": "*" } }, - "node_modules/@parcel/watcher": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.0.4.tgz", - "integrity": "sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "node-addon-api": "^3.2.1", - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher/node_modules/node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true - }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", @@ -6738,142 +6262,77 @@ } }, "node_modules/@sigstore/bundle": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", - "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", - "dev": true, - "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/protobuf-specs": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", - "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz", - "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz", + "integrity": "sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA==", "dev": true, "dependencies": { - "@sigstore/bundle": "^1.1.0", - "@sigstore/protobuf-specs": "^0.2.0", - "make-fetch-happen": "^11.0.1" + "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "node_modules/@sigstore/core": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz", + "integrity": "sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==", "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/sign/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "node_modules/@sigstore/protobuf-specs": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.3.tgz", + "integrity": "sha512-RpacQhBlwpBWd7KEJsRKcBQalbV28fvkxwTOJIqhIuDysMMaJW47V4OqW30iJB9uRpqOSxxEAQFdr8tTattReQ==", "dev": true, "engines": { - "node": ">=8" + "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@sigstore/sign/node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "node_modules/@sigstore/sign": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz", + "integrity": "sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==", "dev": true, "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.3.2", + "make-fetch-happen": "^13.0.1", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1" }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/@sigstore/sign/node_modules/minipass-fetch/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/sign/node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "node_modules/@sigstore/tuf": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz", + "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==", "dev": true, "dependencies": { - "minipass": "^7.0.3" + "@sigstore/protobuf-specs": "^0.3.2", + "tuf-js": "^2.2.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@sigstore/sign/node_modules/ssri/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/tuf": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz", - "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==", + "node_modules/@sigstore/verify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz", + "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==", "dev": true, "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0", - "tuf-js": "^1.1.7" + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.1.0", + "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@sinclair/typebox": { @@ -6960,15 +6419,6 @@ "node": ">=10" } }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, "node_modules/@truffle/error": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@truffle/error/-/error-0.1.1.tgz", @@ -7055,7 +6505,22 @@ "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, - "node_modules/@truffle/interface-adapter/node_modules/ethereum-cryptography": { + "node_modules/@truffle/interface-adapter/node_modules/eth-lib/node_modules/elliptic": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", + "dev": true, + "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" + } + }, + "node_modules/@truffle/interface-adapter/node_modules/ethereum-cryptography": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", @@ -7647,25 +7112,25 @@ "dev": true }, "node_modules/@tufjs/canonical-json": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", - "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", + "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@tufjs/models": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", - "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz", + "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==", "dev": true, "dependencies": { - "@tufjs/canonical-json": "1.0.0", - "minimatch": "^9.0.0" + "@tufjs/canonical-json": "2.0.0", + "minimatch": "^9.0.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@tufjs/models/node_modules/brace-expansion": { @@ -7678,9 +7143,9 @@ } }, "node_modules/@tufjs/models/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -7692,6 +7157,21 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/@tybys/wasm-util": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", + "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", + "dev": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tybys/wasm-util/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true + }, "node_modules/@typechain/ethers-v5": { "version": "10.2.1", "resolved": "https://registry.npmjs.org/@typechain/ethers-v5/-/ethers-v5-10.2.1.tgz", @@ -7836,11 +7316,12 @@ } }, "node_modules/@types/fs-extra": { - "version": "9.0.13", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.13.tgz", - "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-11.0.4.tgz", + "integrity": "sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==", "dev": true, "dependencies": { + "@types/jsonfile": "*", "@types/node": "*" } }, @@ -7915,6 +7396,15 @@ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, + "node_modules/@types/jsonfile": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/@types/jsonfile/-/jsonfile-6.1.4.tgz", + "integrity": "sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/keccak": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/keccak/-/keccak-3.0.4.tgz", @@ -7997,12 +7487,6 @@ "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", "dev": true }, - "node_modules/@types/parse-json": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", - "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", - "dev": true - }, "node_modules/@types/pbkdf2": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.2.tgz", @@ -8419,16 +7903,16 @@ "dev": true }, "node_modules/@yarnpkg/parsers": { - "version": "3.0.0-rc.46", - "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.46.tgz", - "integrity": "sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.2.tgz", + "integrity": "sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==", "dev": true, "dependencies": { "js-yaml": "^3.10.0", "tslib": "^2.4.0" }, "engines": { - "node": ">=14.15.0" + "node": ">=18.12.0" } }, "node_modules/@yarnpkg/parsers/node_modules/argparse": { @@ -8473,15 +7957,15 @@ "dev": true }, "node_modules/@yarnpkg/parsers/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true }, "node_modules/@zkochan/js-yaml": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz", - "integrity": "sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg==", + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz", + "integrity": "sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==", "dev": true, "dependencies": { "argparse": "^2.0.1" @@ -8607,18 +8091,6 @@ "node": ">= 6.0.0" } }, - "node_modules/agentkeepalive": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", - "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", - "dev": true, - "dependencies": { - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, "node_modules/aggregate-error": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", @@ -8834,19 +8306,6 @@ "form-data": "^4.0.0" } }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/arg": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", @@ -9149,9 +8608,9 @@ "dev": true }, "node_modules/axios": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", - "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", + "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", @@ -9427,9 +8886,9 @@ } }, "node_modules/bin-links": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-4.0.3.tgz", - "integrity": "sha512-obsRaULtJurnfox/MDwgq6Yo9kzbv1CPTk/1/s7Z/61Lezc8IKkFCOXNeVLXz0456WRzBQmSsDWlai2tIhBsfA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-4.0.4.tgz", + "integrity": "sha512-cMtq4W5ZsEwcutJrVId+a/tjt8GSbS+h0oNkdl6+6rBuEv8Ot33Bevj5KPm40t309zuhVic8NjpuL42QCiJWWA==", "dev": true, "dependencies": { "cmd-shim": "^6.0.0", @@ -9441,24 +8900,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/bin-links/node_modules/cmd-shim": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.2.tgz", - "integrity": "sha512-+FFYbB0YLaAkhkcrjkyNLYDiOsFSfRjwjY19LXk/psmMx1z00xlCv7hhQoTGXXIKi+YXHL/iiFo8NqMVQX9nOw==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/bin-links/node_modules/read-cmd-shim": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz", - "integrity": "sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/bin-links/node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", @@ -9587,9 +9028,9 @@ "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" }, "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dev": true, "dependencies": { "bytes": "3.1.2", @@ -9600,7 +9041,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -9641,21 +9082,6 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/body-parser/node_modules/statuses": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", @@ -9791,12 +9217,12 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -9894,9 +9320,9 @@ } }, "node_modules/browserify-sign/node_modules/elliptic": { - "version": "6.5.5", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.5.tgz", - "integrity": "sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==", + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", "dev": true, "dependencies": { "bn.js": "^4.11.9", @@ -10116,55 +9542,13 @@ "node": ">=6.14.2" } }, - "node_modules/builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "dependencies": { - "semver": "^7.0.0" - } - }, - "node_modules/builtins/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/builtins/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/builtins/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/byte-size": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-7.0.0.tgz", - "integrity": "sha512-NNiBxKgxybMBtWdmvx7ZITJi4ZG+CYUgwOSZTfqB1qogkRHrhbQE/R2r5Fh94X+InN5MCYz6SvB/ejHMj/HbsQ==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-8.1.1.tgz", + "integrity": "sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12.17" } }, "node_modules/bytes": { @@ -10177,17 +9561,17 @@ } }, "node_modules/cacache": { - "version": "17.1.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", - "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "version": "18.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", + "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", "dev": true, "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", "glob": "^10.2.2", - "lru-cache": "^7.7.1", + "lru-cache": "^10.0.1", "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", + "minipass-collect": "^2.0.1", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "p-map": "^4.0.0", @@ -10196,7 +9580,7 @@ "unique-filename": "^3.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/cacache/node_modules/brace-expansion": { @@ -10209,40 +9593,35 @@ } }, "node_modules/cacache/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true }, "node_modules/cacache/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -10254,18 +9633,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/cacache/node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/cacheable-lookup": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", @@ -10786,18 +10153,6 @@ "node": ">=6" } }, - "node_modules/clone-deep/node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/clone-response": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", @@ -10811,15 +10166,12 @@ } }, "node_modules/cmd-shim": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-5.0.0.tgz", - "integrity": "sha512-qkCtZ59BidfEwHltnJwkyVZn+XQojdAySM1D1gSeh11Z4pW1Kpolkyo53L5noc0nrxmIvyFwTmJRo4xs7FFLPw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.3.tgz", + "integrity": "sha512-FMabTRlc5t5zjdenF6mS0MBeFZm0XqHqeOkcskKFb/LYCcRQ5fVgLOHVc4Lq9CqABd9zhjwPjMBCJvMCziSVtA==", "dev": true, - "dependencies": { - "mkdirp-infer-owner": "^2.0.0" - }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/co": { @@ -10996,18 +10348,6 @@ "dot-prop": "^5.1.0" } }, - "node_modules/compare-func/node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dev": true, - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -11029,16 +10369,6 @@ "typedarray": "^0.0.6" } }, - "node_modules/config-chain": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz", - "integrity": "sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA==", - "dev": true, - "dependencies": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, "node_modules/console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", @@ -11098,41 +10428,37 @@ } }, "node_modules/conventional-changelog-angular": { - "version": "5.0.12", - "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.12.tgz", - "integrity": "sha512-5GLsbnkR/7A89RyHLvvoExbiGbd9xKdKqDTrArnPbOqBqG/2wIosu0fHwpeIRI8Tl94MhVNBXcLJZl92ZQ5USw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-7.0.0.tgz", + "integrity": "sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==", "dev": true, "dependencies": { - "compare-func": "^2.0.0", - "q": "^1.5.1" + "compare-func": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=16" } }, "node_modules/conventional-changelog-core": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz", - "integrity": "sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-5.0.1.tgz", + "integrity": "sha512-Rvi5pH+LvgsqGwZPZ3Cq/tz4ty7mjijhr3qR4m9IBXNbxGGYgTVVO+duXzz9aArmHxFtwZ+LRkrNIMDQzgoY4A==", "dev": true, "dependencies": { "add-stream": "^1.0.0", - "conventional-changelog-writer": "^5.0.0", - "conventional-commits-parser": "^3.2.0", - "dateformat": "^3.0.0", - "get-pkg-repo": "^4.0.0", - "git-raw-commits": "^2.0.8", + "conventional-changelog-writer": "^6.0.0", + "conventional-commits-parser": "^4.0.0", + "dateformat": "^3.0.3", + "get-pkg-repo": "^4.2.1", + "git-raw-commits": "^3.0.0", "git-remote-origin-url": "^2.0.0", - "git-semver-tags": "^4.1.1", - "lodash": "^4.17.15", - "normalize-package-data": "^3.0.0", - "q": "^1.5.1", + "git-semver-tags": "^5.0.0", + "normalize-package-data": "^3.0.3", "read-pkg": "^3.0.0", - "read-pkg-up": "^3.0.0", - "through2": "^4.0.0" + "read-pkg-up": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=14" } }, "node_modules/conventional-changelog-core/node_modules/hosted-git-info": { @@ -11175,13 +10501,10 @@ } }, "node_modules/conventional-changelog-core/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -11196,90 +10519,97 @@ "dev": true }, "node_modules/conventional-changelog-preset-loader": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz", - "integrity": "sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-3.0.0.tgz", + "integrity": "sha512-qy9XbdSLmVnwnvzEisjxdDiLA4OmV3o8db+Zdg4WiFw14fP3B6XNz98X0swPPpkTd/pc1K7+adKgEDM1JCUMiA==", "dev": true, "engines": { - "node": ">=10" + "node": ">=14" } }, "node_modules/conventional-changelog-writer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-5.0.1.tgz", - "integrity": "sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz", + "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==", "dev": true, "dependencies": { - "conventional-commits-filter": "^2.0.7", - "dateformat": "^3.0.0", + "conventional-commits-filter": "^3.0.0", + "dateformat": "^3.0.3", "handlebars": "^4.7.7", "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "semver": "^6.0.0", - "split": "^1.0.0", - "through2": "^4.0.0" + "meow": "^8.1.2", + "semver": "^7.0.0", + "split": "^1.0.1" }, "bin": { "conventional-changelog-writer": "cli.js" }, + "engines": { + "node": ">=14" + } + }, + "node_modules/conventional-changelog-writer/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { "node": ">=10" } }, "node_modules/conventional-commits-filter": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz", - "integrity": "sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz", + "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==", "dev": true, "dependencies": { "lodash.ismatch": "^4.4.0", - "modify-values": "^1.0.0" + "modify-values": "^1.0.1" }, "engines": { - "node": ">=10" + "node": ">=14" } }, "node_modules/conventional-commits-parser": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz", - "integrity": "sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz", + "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==", "dev": true, "dependencies": { "is-text-path": "^1.0.1", - "JSONStream": "^1.0.4", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0" + "JSONStream": "^1.3.5", + "meow": "^8.1.2", + "split2": "^3.2.2" }, "bin": { "conventional-commits-parser": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=14" } }, "node_modules/conventional-recommended-bump": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz", - "integrity": "sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-7.0.1.tgz", + "integrity": "sha512-Ft79FF4SlOFvX4PkwFDRnaNiIVX7YbmqGU0RwccUaiGvgp3S0a8ipR2/Qxk31vclDNM+GSdJOVs2KrsUCjblVA==", "dev": true, "dependencies": { "concat-stream": "^2.0.0", - "conventional-changelog-preset-loader": "^2.3.4", - "conventional-commits-filter": "^2.0.7", - "conventional-commits-parser": "^3.2.0", - "git-raw-commits": "^2.0.8", - "git-semver-tags": "^4.1.1", - "meow": "^8.0.0", - "q": "^1.5.1" + "conventional-changelog-preset-loader": "^3.0.0", + "conventional-commits-filter": "^3.0.0", + "conventional-commits-parser": "^4.0.0", + "git-raw-commits": "^3.0.0", + "git-semver-tags": "^5.0.0", + "meow": "^8.1.2" }, "bin": { "conventional-recommended-bump": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=14" } }, "node_modules/convert-source-map": { @@ -11329,19 +10659,29 @@ } }, "node_modules/cosmiconfig": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", - "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", + "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", "dev": true, "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" }, "engines": { - "node": ">=10" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "node_modules/cosmjs-types": { @@ -11532,9 +10872,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -11576,15 +10916,6 @@ "node": "*" } }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/cssesc": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", @@ -11698,11 +11029,11 @@ "dev": true }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -11784,9 +11115,9 @@ } }, "node_modules/dedent": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", - "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", "dev": true, "peerDependencies": { "babel-plugin-macros": "^3.1.0" @@ -11895,28 +11226,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/del": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", - "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", - "dev": true, - "dependencies": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", - "rimraf": "^3.0.2", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -11925,12 +11234,6 @@ "node": ">=0.4.0" } }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -11999,10 +11302,9 @@ } }, "node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "dev": true, + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", "engines": { "node": ">=0.3.1" } @@ -12056,17 +11358,6 @@ "node": ">= 6.0.0" } }, - "node_modules/docker-compose/node_modules/yaml": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.1.tgz", - "integrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==", - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14" - } - }, "node_modules/doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -12086,27 +11377,41 @@ "dev": true }, "node_modules/dot-prop": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz", - "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", "dev": true, "dependencies": { "is-obj": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", + "engines": { + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://dotenvx.com" } }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "node_modules/dotenv-expand": { + "version": "11.0.7", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", + "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", "dev": true, + "dependencies": { + "dotenv": "^16.4.5" + }, "engines": { - "node": ">=10" + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" } }, "node_modules/duplexer": { @@ -12168,9 +11473,9 @@ "dev": true }, "node_modules/ejs": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.9.tgz", - "integrity": "sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==", + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", "dev": true, "dependencies": { "jake": "^10.8.5" @@ -12230,9 +11535,9 @@ "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, "engines": { "node": ">= 0.8" @@ -12291,9 +11596,9 @@ } }, "node_modules/envinfo": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.11.1.tgz", - "integrity": "sha512-8PiZgZNIB4q/Lw4AhOvAfB/ityHAd2bli3lESSWmWSzSsl5dKpy5N1d1Rfkd2teq/g9xN90lc6o98DOjMeYHpg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", + "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", "dev": true, "bin": { "envinfo": "dist/cli.js" @@ -13392,9 +12697,9 @@ } }, "node_modules/ethers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", - "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.8.0.tgz", + "integrity": "sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==", "funding": [ { "type": "individual", @@ -13406,36 +12711,36 @@ } ], "dependencies": { - "@ethersproject/abi": "5.7.0", - "@ethersproject/abstract-provider": "5.7.0", - "@ethersproject/abstract-signer": "5.7.0", - "@ethersproject/address": "5.7.0", - "@ethersproject/base64": "5.7.0", - "@ethersproject/basex": "5.7.0", - "@ethersproject/bignumber": "5.7.0", - "@ethersproject/bytes": "5.7.0", - "@ethersproject/constants": "5.7.0", - "@ethersproject/contracts": "5.7.0", - "@ethersproject/hash": "5.7.0", - "@ethersproject/hdnode": "5.7.0", - "@ethersproject/json-wallets": "5.7.0", - "@ethersproject/keccak256": "5.7.0", - "@ethersproject/logger": "5.7.0", - "@ethersproject/networks": "5.7.1", - "@ethersproject/pbkdf2": "5.7.0", - "@ethersproject/properties": "5.7.0", - "@ethersproject/providers": "5.7.2", - "@ethersproject/random": "5.7.0", - "@ethersproject/rlp": "5.7.0", - "@ethersproject/sha2": "5.7.0", - "@ethersproject/signing-key": "5.7.0", - "@ethersproject/solidity": "5.7.0", - "@ethersproject/strings": "5.7.0", - "@ethersproject/transactions": "5.7.0", - "@ethersproject/units": "5.7.0", - "@ethersproject/wallet": "5.7.0", - "@ethersproject/web": "5.7.1", - "@ethersproject/wordlists": "5.7.0" + "@ethersproject/abi": "5.8.0", + "@ethersproject/abstract-provider": "5.8.0", + "@ethersproject/abstract-signer": "5.8.0", + "@ethersproject/address": "5.8.0", + "@ethersproject/base64": "5.8.0", + "@ethersproject/basex": "5.8.0", + "@ethersproject/bignumber": "5.8.0", + "@ethersproject/bytes": "5.8.0", + "@ethersproject/constants": "5.8.0", + "@ethersproject/contracts": "5.8.0", + "@ethersproject/hash": "5.8.0", + "@ethersproject/hdnode": "5.8.0", + "@ethersproject/json-wallets": "5.8.0", + "@ethersproject/keccak256": "5.8.0", + "@ethersproject/logger": "5.8.0", + "@ethersproject/networks": "5.8.0", + "@ethersproject/pbkdf2": "5.8.0", + "@ethersproject/properties": "5.8.0", + "@ethersproject/providers": "5.8.0", + "@ethersproject/random": "5.8.0", + "@ethersproject/rlp": "5.8.0", + "@ethersproject/sha2": "5.8.0", + "@ethersproject/signing-key": "5.8.0", + "@ethersproject/solidity": "5.8.0", + "@ethersproject/strings": "5.8.0", + "@ethersproject/transactions": "5.8.0", + "@ethersproject/units": "5.8.0", + "@ethersproject/wallet": "5.8.0", + "@ethersproject/web": "5.8.0", + "@ethersproject/wordlists": "5.8.0" } }, "node_modules/ethjs-unit": { @@ -13564,43 +12869,43 @@ } }, "node_modules/exponential-backoff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", - "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz", + "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==", "dev": true }, "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dev": true, "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -13609,12 +12914,16 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express/node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "dev": true, "engines": { "node": ">= 0.6" @@ -13651,21 +12960,6 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, - "node_modules/express/node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/express/node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -13851,15 +13145,6 @@ "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/file-url": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/file-url/-/file-url-3.0.0.tgz", - "integrity": "sha512-g872QGsHexznxkIAdK8UiZRe7SkE6kvylShU4Nsj8NvfvZag7S0QuQ4IgvPDkk75HxgjIVDwycFTDAgIiO4nDA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/filelist": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", @@ -13891,9 +13176,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "dependencies": { "to-regex-range": "^5.0.1" @@ -13903,13 +13188,13 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dev": true, "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -14035,12 +13320,12 @@ } }, "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.0", + "cross-spawn": "^7.0.6", "signal-exit": "^4.0.1" }, "engines": { @@ -14114,6 +13399,56 @@ "node": ">= 0.6" } }, + "node_modules/front-matter": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-4.0.2.tgz", + "integrity": "sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==", + "dev": true, + "dependencies": { + "js-yaml": "^3.13.1" + } + }, + "node_modules/front-matter/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/front-matter/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/front-matter/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/front-matter/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, "node_modules/fs": { "version": "0.0.1-security", "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", @@ -14126,9 +13461,9 @@ "dev": true }, "node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", + "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -14162,6 +13497,20 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "devOptional": true }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", @@ -18065,25 +17414,6 @@ "node": ">=8.0.0" } }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -18168,12 +17498,6 @@ "node": ">=10" } }, - "node_modules/get-pkg-repo/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, "node_modules/get-pkg-repo/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -18186,40 +17510,6 @@ "node": ">=10" } }, - "node_modules/get-pkg-repo/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/get-pkg-repo/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/get-pkg-repo/node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, "node_modules/get-pkg-repo/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -18317,22 +17607,20 @@ } }, "node_modules/git-raw-commits": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz", - "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-3.0.0.tgz", + "integrity": "sha512-b5OHmZ3vAgGrDn/X0kS+9qCfNKWe4K/jFnhwzVWWg0/k5eLa3060tZShrRg8Dja5kPc+YjS0Gc6y7cRr44Lpjw==", "dev": true, "dependencies": { "dargs": "^7.0.0", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0" + "meow": "^8.1.2", + "split2": "^3.2.2" }, "bin": { "git-raw-commits": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=14" } }, "node_modules/git-remote-origin-url": { @@ -18358,17 +17646,29 @@ } }, "node_modules/git-semver-tags": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-4.1.1.tgz", - "integrity": "sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-5.0.1.tgz", + "integrity": "sha512-hIvOeZwRbQ+7YEUmCkHqo8FOLQZCEn18yevLHADlFPZY02KJGsu5FZt9YW/lybfK2uhWFI7Qg/07LekJiTv7iA==", "dev": true, "dependencies": { - "meow": "^8.0.0", - "semver": "^6.0.0" + "meow": "^8.1.2", + "semver": "^7.0.0" }, "bin": { "git-semver-tags": "cli.js" }, + "engines": { + "node": ">=14" + } + }, + "node_modules/git-semver-tags/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { "node": ">=10" } @@ -18384,9 +17684,9 @@ } }, "node_modules/git-url-parse": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-13.1.0.tgz", - "integrity": "sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-14.0.0.tgz", + "integrity": "sha512-NnLweV+2A4nCvn4U/m2AoYu0pPKlsmhK9cknG7IMwsjFY1S2jxM+mAhsDxyxfCIGfGaD+dozsyX4b6vkYc83yQ==", "dev": true, "dependencies": { "git-up": "^7.0.0" @@ -18965,25 +18265,22 @@ } }, "node_modules/hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", + "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", "dev": true, "dependencies": { - "lru-cache": "^7.5.1" + "lru-cache": "^10.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true }, "node_modules/hpagent": { "version": "1.2.0", @@ -19097,17 +18394,25 @@ "dev": true }, "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, "engines": { - "node": ">= 6" + "node": ">= 14" + } + }, + "node_modules/http-proxy-agent/node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "dev": true, + "engines": { + "node": ">= 14" } }, "node_modules/http-response-object": { @@ -19187,15 +18492,6 @@ "node": ">=10.17.0" } }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "dependencies": { - "ms": "^2.0.0" - } - }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -19258,15 +18554,15 @@ } }, "node_modules/ignore-walk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", - "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz", + "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==", "dev": true, "dependencies": { - "minimatch": "^5.0.1" + "minimatch": "^9.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/ignore-walk/node_modules/brace-expansion": { @@ -19279,17 +18575,20 @@ } }, "node_modules/ignore-walk/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=10" - } - }, + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/immutable": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", @@ -19349,12 +18648,6 @@ "node": ">=8" } }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -19377,76 +18670,28 @@ "dev": true }, "node_modules/init-package-json": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-3.0.2.tgz", - "integrity": "sha512-YhlQPEjNFqlGdzrBfDNRLhvoSgX7iQRgSxgsNknRQ9ITXFT7UMfVMWhBTOh2Y+25lRnGrv5Xz8yZwQ3ACR6T3A==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-6.0.3.tgz", + "integrity": "sha512-Zfeb5ol+H+eqJWHTaGca9BovufyGeIfr4zaaBorPmJBMrJ+KBnN+kQx2ZtXdsotUTgldHmHQV44xvUWOUA7E2w==", "dev": true, "dependencies": { - "npm-package-arg": "^9.0.1", - "promzard": "^0.3.0", - "read": "^1.0.7", - "read-package-json": "^5.0.0", + "@npmcli/package-json": "^5.0.0", + "npm-package-arg": "^11.0.0", + "promzard": "^1.0.0", + "read": "^3.0.1", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/init-package-json/node_modules/hosted-git-info": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz", - "integrity": "sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==", - "dev": true, - "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/init-package-json/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/init-package-json/node_modules/npm-package-arg": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.2.tgz", - "integrity": "sha512-pzd9rLEx4TfNJkovvlBSLGhq31gGu2QDexFPWT19yCDh0JgnRhlBLNo5759N0AJmBk+kQ9Y/hXoLnlgFD+ukmg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/init-package-json/node_modules/proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/init-package-json/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -19454,24 +18699,6 @@ "node": ">=10" } }, - "node_modules/init-package-json/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/init-package-json/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/inquirer": { "version": "8.2.6", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz", @@ -19851,17 +19078,32 @@ } }, "node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", "dev": true, "dependencies": { - "ci-info": "^2.0.0" + "ci-info": "^3.2.0" }, "bin": { "is-ci": "bin.js" } }, + "node_modules/is-ci/node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, "node_modules/is-core-module": { "version": "2.13.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", @@ -20048,15 +19290,6 @@ "node": ">=8" } }, - "node_modules/is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/is-path-inside": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", @@ -20076,10 +19309,13 @@ } }, "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, "engines": { "node": ">=0.10.0" } @@ -20116,9 +19352,9 @@ } }, "node_modules/is-ssh": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz", - "integrity": "sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.1.tgz", + "integrity": "sha512-JNeu1wQsHjyHgn9NcWTaXq6zWSR6hqE0++zhfZlkFBbScNkyvxCdeV8sRkSBaeLKxmbpR21brail63ACNxJ0Tg==", "dev": true, "dependencies": { "protocols": "^2.0.1" @@ -20399,16 +19635,13 @@ } }, "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" }, - "engines": { - "node": ">=14" - }, "funding": { "url": "https://github.com/sponsors/isaacs" }, @@ -20417,9 +19650,9 @@ } }, "node_modules/jake": { - "version": "10.8.7", - "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.7.tgz", - "integrity": "sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==", + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", + "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", "dev": true, "dependencies": { "async": "^3.2.3", @@ -22195,9 +21428,9 @@ "dev": true }, "node_modules/json-parse-even-better-errors": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", - "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", + "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -22387,93 +21620,97 @@ "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" }, "node_modules/lerna": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/lerna/-/lerna-6.6.2.tgz", - "integrity": "sha512-W4qrGhcdutkRdHEaDf9eqp7u4JvI+1TwFy5woX6OI8WPe4PYBdxuILAsvhp614fUG41rKSGDKlOh+AWzdSidTg==", + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/lerna/-/lerna-8.2.1.tgz", + "integrity": "sha512-Xwjv9/4ixp7fpBWhtvp7dz4NoQT8DEf7hzibHKCgu/8kmZUHeXsTn+TKspHqhI+p4YDmdkDnkg8xmymz73kVOg==", "dev": true, "dependencies": { - "@lerna/child-process": "6.6.2", - "@lerna/create": "6.6.2", - "@lerna/legacy-package-management": "6.6.2", - "@npmcli/arborist": "6.2.3", - "@npmcli/run-script": "4.1.7", - "@nrwl/devkit": ">=15.5.2 < 16", + "@lerna/create": "8.2.1", + "@npmcli/arborist": "7.5.4", + "@npmcli/package-json": "5.2.0", + "@npmcli/run-script": "8.1.0", + "@nx/devkit": ">=17.1.2 < 21", "@octokit/plugin-enterprise-rest": "6.0.1", - "@octokit/rest": "19.0.3", - "byte-size": "7.0.0", + "@octokit/rest": "20.1.2", + "aproba": "2.0.0", + "byte-size": "8.1.1", "chalk": "4.1.0", "clone-deep": "4.0.1", - "cmd-shim": "5.0.0", + "cmd-shim": "6.0.3", + "color-support": "1.1.3", "columnify": "1.6.0", - "config-chain": "1.1.12", - "conventional-changelog-angular": "5.0.12", - "conventional-changelog-core": "4.2.4", - "conventional-recommended-bump": "6.1.0", - "cosmiconfig": "7.0.0", - "dedent": "0.7.0", - "dot-prop": "6.0.1", - "envinfo": "^7.7.4", + "console-control-strings": "^1.1.0", + "conventional-changelog-angular": "7.0.0", + "conventional-changelog-core": "5.0.1", + "conventional-recommended-bump": "7.0.1", + "cosmiconfig": "9.0.0", + "dedent": "1.5.3", + "envinfo": "7.13.0", "execa": "5.0.0", - "fs-extra": "9.1.0", + "fs-extra": "^11.2.0", "get-port": "5.1.1", "get-stream": "6.0.0", - "git-url-parse": "13.1.0", - "glob-parent": "5.1.2", + "git-url-parse": "14.0.0", + "glob-parent": "6.0.2", "globby": "11.1.0", - "graceful-fs": "4.2.10", + "graceful-fs": "4.2.11", "has-unicode": "2.0.1", - "import-local": "^3.0.2", - "init-package-json": "3.0.2", + "import-local": "3.1.0", + "ini": "^1.3.8", + "init-package-json": "6.0.3", "inquirer": "^8.2.4", - "is-ci": "2.0.0", + "is-ci": "3.0.1", "is-stream": "2.0.0", - "js-yaml": "^4.1.0", - "libnpmaccess": "^6.0.3", - "libnpmpublish": "7.1.4", + "jest-diff": ">=29.4.3 < 30", + "js-yaml": "4.1.0", + "libnpmaccess": "8.0.6", + "libnpmpublish": "9.0.9", "load-json-file": "6.2.0", - "make-dir": "3.1.0", + "lodash": "^4.17.21", + "make-dir": "4.0.0", "minimatch": "3.0.5", "multimatch": "5.0.0", "node-fetch": "2.6.7", - "npm-package-arg": "8.1.1", - "npm-packlist": "5.1.1", - "npm-registry-fetch": "^14.0.3", - "npmlog": "^6.0.2", - "nx": ">=15.5.2 < 16", + "npm-package-arg": "11.0.2", + "npm-packlist": "8.0.2", + "npm-registry-fetch": "^17.1.0", + "nx": ">=17.1.2 < 21", "p-map": "4.0.0", "p-map-series": "2.1.0", "p-pipe": "3.1.0", "p-queue": "6.6.2", "p-reduce": "2.1.0", "p-waterfall": "2.1.1", - "pacote": "15.1.1", + "pacote": "^18.0.6", "pify": "5.0.0", - "read-cmd-shim": "3.0.0", - "read-package-json": "5.0.1", + "read-cmd-shim": "4.0.0", "resolve-from": "5.0.0", "rimraf": "^4.4.1", "semver": "^7.3.8", + "set-blocking": "^2.0.0", "signal-exit": "3.0.7", "slash": "3.0.0", - "ssri": "9.0.1", + "ssri": "^10.0.6", + "string-width": "^4.2.3", "strong-log-transformer": "2.1.0", - "tar": "6.1.11", + "tar": "6.2.1", "temp-dir": "1.0.0", - "typescript": "^3 || ^4", - "upath": "^2.0.1", - "uuid": "8.3.2", + "typescript": ">=3 < 6", + "upath": "2.0.1", + "uuid": "^10.0.0", "validate-npm-package-license": "3.0.4", - "validate-npm-package-name": "4.0.0", - "write-file-atomic": "4.0.1", + "validate-npm-package-name": "5.0.1", + "wide-align": "1.1.5", + "write-file-atomic": "5.0.1", "write-pkg": "4.0.0", - "yargs": "16.2.0", - "yargs-parser": "20.2.4" + "yargs": "17.7.2", + "yargs-parser": "21.1.1" }, "bin": { "lerna": "dist/cli.js" }, "engines": { - "node": "^14.17.0 || >=16.0.0" + "node": ">=18.0.0" } }, "node_modules/lerna-update-wizard": { @@ -22861,12 +22098,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/lerna/node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, "node_modules/lerna/node_modules/execa": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", @@ -22890,21 +22121,6 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/lerna/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dev": true, - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/lerna/node_modules/get-stream": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", @@ -22935,18 +22151,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/lerna/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/lerna/node_modules/glob/node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -22971,12 +22175,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/lerna/node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, "node_modules/lerna/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -23007,30 +22205,6 @@ "node": ">=10" } }, - "node_modules/lerna/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lerna/node_modules/make-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/lerna/node_modules/minimatch": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", @@ -23106,17 +22280,42 @@ "node": ">=8" } }, + "node_modules/lerna/node_modules/uuid": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", + "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", + "dev": true, + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/lerna/node_modules/write-file-atomic": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.1.tgz", - "integrity": "sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", "dev": true, "dependencies": { "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" + "signal-exit": "^4.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/lerna/node_modules/write-file-atomic/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/lerna/node_modules/yallist": { @@ -23125,22 +22324,13 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/lerna/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "node_modules/lerna/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/level": { @@ -23206,251 +22396,81 @@ } }, "node_modules/libnpmaccess": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-6.0.4.tgz", - "integrity": "sha512-qZ3wcfIyUoW0+qSFkMBovcTrSGJ3ZeyvpR7d5N9pEYv/kXs8sHP2wiqEIXBKLFrZlmM0kR0RJD7mtfLngtlLag==", + "version": "8.0.6", + "resolved": "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-8.0.6.tgz", + "integrity": "sha512-uM8DHDEfYG6G5gVivVl+yQd4pH3uRclHC59lzIbSvy7b5FEwR+mU49Zq1jEyRtRFv7+M99mUW9S0wL/4laT4lw==", "dev": true, "dependencies": { - "aproba": "^2.0.0", - "minipass": "^3.1.1", - "npm-package-arg": "^9.0.1", - "npm-registry-fetch": "^13.0.0" + "npm-package-arg": "^11.0.2", + "npm-registry-fetch": "^17.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/libnpmaccess/node_modules/hosted-git-info": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz", - "integrity": "sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==", + "node_modules/libnpmpublish": { + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-9.0.9.tgz", + "integrity": "sha512-26zzwoBNAvX9AWOPiqqF6FG4HrSCPsHFkQm7nT+xU1ggAujL/eae81RnCv4CJ2In9q9fh10B88sYSzKCUh/Ghg==", "dev": true, "dependencies": { - "lru-cache": "^7.5.1" + "ci-info": "^4.0.0", + "normalize-package-data": "^6.0.1", + "npm-package-arg": "^11.0.2", + "npm-registry-fetch": "^17.0.1", + "proc-log": "^4.2.0", + "semver": "^7.3.7", + "sigstore": "^2.2.0", + "ssri": "^10.0.6" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/libnpmaccess/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "node_modules/libnpmpublish/node_modules/ci-info": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.2.0.tgz", + "integrity": "sha512-cYY9mypksY8NRqgDB1XD1RiJL338v/551niynFTGkZOO2LHuB2OmOYxDIe/ttN9AHwrqdum1360G3ald0W9kCg==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/libnpmaccess/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/libnpmpublish/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/libnpmaccess/node_modules/npm-package-arg": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.2.tgz", - "integrity": "sha512-pzd9rLEx4TfNJkovvlBSLGhq31gGu2QDexFPWT19yCDh0JgnRhlBLNo5759N0AJmBk+kQ9Y/hXoLnlgFD+ukmg==", - "dev": true, + "node_modules/libsodium-sumo": { + "version": "0.7.13", + "resolved": "https://registry.npmjs.org/libsodium-sumo/-/libsodium-sumo-0.7.13.tgz", + "integrity": "sha512-zTGdLu4b9zSNLfovImpBCbdAA4xkpkZbMnSQjP8HShyOutnGjRHmSOKlsylh1okao6QhLiz7nG98EGn+04cZjQ==" + }, + "node_modules/libsodium-wrappers-sumo": { + "version": "0.7.13", + "resolved": "https://registry.npmjs.org/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.13.tgz", + "integrity": "sha512-lz4YdplzDRh6AhnLGF2Dj2IUj94xRN6Bh8T0HLNwzYGwPehQJX6c7iYVrFUPZ3QqxE0bqC+K0IIqqZJYWumwSQ==", "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "libsodium-sumo": "^0.7.13" } }, - "node_modules/libnpmaccess/node_modules/npm-registry-fetch": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", - "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", - "dev": true, - "dependencies": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/libnpmaccess/node_modules/proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/libnpmaccess/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/libnpmaccess/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/libnpmaccess/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/libnpmpublish": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-7.1.4.tgz", - "integrity": "sha512-mMntrhVwut5prP4rJ228eEbEyvIzLWhqFuY90j5QeXBCTT2pWSMno7Yo2S2qplPUr02zPurGH4heGLZ+wORczg==", - "dev": true, - "dependencies": { - "ci-info": "^3.6.1", - "normalize-package-data": "^5.0.0", - "npm-package-arg": "^10.1.0", - "npm-registry-fetch": "^14.0.3", - "proc-log": "^3.0.0", - "semver": "^7.3.7", - "sigstore": "^1.4.0", - "ssri": "^10.0.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/libnpmpublish/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/libnpmpublish/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/libnpmpublish/node_modules/npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/libnpmpublish/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/libnpmpublish/node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/libnpmpublish/node_modules/validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", - "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/libnpmpublish/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/libsodium-sumo": { - "version": "0.7.13", - "resolved": "https://registry.npmjs.org/libsodium-sumo/-/libsodium-sumo-0.7.13.tgz", - "integrity": "sha512-zTGdLu4b9zSNLfovImpBCbdAA4xkpkZbMnSQjP8HShyOutnGjRHmSOKlsylh1okao6QhLiz7nG98EGn+04cZjQ==" - }, - "node_modules/libsodium-wrappers-sumo": { - "version": "0.7.13", - "resolved": "https://registry.npmjs.org/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.13.tgz", - "integrity": "sha512-lz4YdplzDRh6AhnLGF2Dj2IUj94xRN6Bh8T0HLNwzYGwPehQJX6c7iYVrFUPZ3QqxE0bqC+K0IIqqZJYWumwSQ==", - "dependencies": { - "libsodium-sumo": "^0.7.13" - } - }, - "node_modules/lines-and-columns": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz", - "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", + "node_modules/lines-and-columns": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", + "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", "dev": true, "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" @@ -23729,299 +22749,123 @@ "dev": true }, "node_modules/make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", "dev": true, "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", + "proc-log": "^4.2.0", "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" + "ssri": "^10.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/make-fetch-happen/node_modules/@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "tmpl": "1.0.5" } }, - "node_modules/make-fetch-happen/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "node_modules/map-obj": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-fetch-happen/node_modules/cacache": { - "version": "16.1.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", - "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", + "node_modules/markdown-table": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-1.1.3.tgz", + "integrity": "sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==", + "dev": true + }, + "node_modules/mcl-wasm": { + "version": "0.7.9", + "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.7.9.tgz", + "integrity": "sha512-iJIUcQWA88IJB/5L15GnJVnSQJmf/YaxxV6zRavv83HILHaJQb6y0iFyDMdDO0gN8X37tdxmAOrH/P8B6RB8sQ==", "dev": true, - "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^2.0.0" - }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=8.9.0" } }, - "node_modules/make-fetch-happen/node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dependencies": { - "minipass": "^3.0.0" - }, + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, "engines": { - "node": ">= 8" + "node": ">= 0.6" } }, - "node_modules/make-fetch-happen/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "node_modules/memory-level": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/memory-level/-/memory-level-1.0.0.tgz", + "integrity": "sha512-UXzwewuWeHBz5krr7EvehKcmLFNoXxGcvuYhC41tRnkrTbJohtS7kVn9akmgirtRygg+f7Yjsfi8Uu5SGSQ4Og==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "abstract-level": "^1.0.0", + "functional-red-black-tree": "^1.0.1", + "module-error": "^1.0.1" }, "engines": { "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", "dev": true, "engines": { - "node": ">=12" + "node": ">= 0.10.0" } }, - "node_modules/make-fetch-happen/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "node_modules/meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-fetch-happen/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/make-fetch-happen/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-fetch-happen/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-fetch-happen/node_modules/unique-filename": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", - "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", - "dev": true, - "dependencies": { - "unique-slug": "^3.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/unique-slug": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", - "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dev": true, - "dependencies": { - "tmpl": "1.0.5" - } - }, - "node_modules/map-obj": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", - "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/markdown-table": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-1.1.3.tgz", - "integrity": "sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==", - "dev": true - }, - "node_modules/mcl-wasm": { - "version": "0.7.9", - "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.7.9.tgz", - "integrity": "sha512-iJIUcQWA88IJB/5L15GnJVnSQJmf/YaxxV6zRavv83HILHaJQb6y0iFyDMdDO0gN8X37tdxmAOrH/P8B6RB8sQ==", - "dev": true, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memory-level": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/memory-level/-/memory-level-1.0.0.tgz", - "integrity": "sha512-UXzwewuWeHBz5krr7EvehKcmLFNoXxGcvuYhC41tRnkrTbJohtS7kVn9akmgirtRygg+f7Yjsfi8Uu5SGSQ4Og==", - "dev": true, - "dependencies": { - "abstract-level": "^1.0.0", - "functional-red-black-tree": "^1.0.1", - "module-error": "^1.0.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", - "dev": true, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/meow": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", - "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", - "dev": true, - "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.18.0", - "yargs-parser": "^20.2.3" + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" }, "engines": { "node": ">=10" @@ -24199,13 +23043,10 @@ } }, "node_modules/meow/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -24232,10 +23073,13 @@ "dev": true }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -24267,12 +23111,12 @@ "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==" }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -24411,79 +23255,43 @@ } }, "node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, "engines": { "node": ">=16 || 14 >=14.17" } }, "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-collect/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "minipass": "^7.0.3" }, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/minipass-collect/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/minipass-fetch": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", - "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", "dev": true, "dependencies": { - "minipass": "^3.1.6", + "minipass": "^7.0.3", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" }, "optionalDependencies": { "encoding": "^0.1.13" } }, - "node_modules/minipass-fetch/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-fetch/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/minipass-flush": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", @@ -24514,34 +23322,6 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/minipass-json-stream/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-json-stream/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/minipass-pipeline": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", @@ -24645,20 +23425,6 @@ "node": ">=10" } }, - "node_modules/mkdirp-infer-owner": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz", - "integrity": "sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==", - "dev": true, - "dependencies": { - "chownr": "^2.0.0", - "infer-owner": "^1.0.4", - "mkdirp": "^1.0.3" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/mkdirp-promise": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", @@ -24682,31 +23448,31 @@ } }, "node_modules/mocha": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.3.0.tgz", - "integrity": "sha512-uF2XJs+7xSLsrmIvn37i/wnc91nw7XjOQB8ccyx5aEgdnohr7n+rEiZP23WkCYHjilR6+EboEnbq/ZQDz4LSbg==", + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", + "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", "dev": true, "dependencies": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "8.1.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" }, "bin": { "_mocha": "bin/_mocha", @@ -24716,15 +23482,6 @@ "node": ">= 14.0.0" } }, - "node_modules/mocha/node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/mocha/node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -24734,33 +23491,6 @@ "balanced-match": "^1.0.0" } }, - "node_modules/mocha/node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, "node_modules/mocha/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -24792,18 +23522,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mocha/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/mocha/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -24814,9 +23532,9 @@ } }, "node_modules/mocha/node_modules/minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -24825,12 +23543,6 @@ "node": ">=10" } }, - "node_modules/mocha/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, "node_modules/mocha/node_modules/supports-color": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", @@ -24864,6 +23576,15 @@ "node": ">=10" } }, + "node_modules/mocha/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/mock-fs": { "version": "4.14.0", "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", @@ -24889,9 +23610,9 @@ } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/multibase": { "version": "0.6.1", @@ -25266,9 +23987,9 @@ } }, "node_modules/nise/node_modules/path-to-regexp": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", - "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==" + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==" }, "node_modules/node-addon-api": { "version": "2.0.2", @@ -25304,28 +24025,27 @@ } }, "node_modules/node-gyp": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz", - "integrity": "sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==", + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.3.1.tgz", + "integrity": "sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ==", "dev": true, "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", - "glob": "^7.1.4", + "glob": "^10.3.10", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^4.1.0", "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" + "tar": "^6.2.1", + "which": "^4.0.0" }, "bin": { "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": "^12.13 || ^14.13 || >=16" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/node-gyp-build": { @@ -25338,321 +24058,7 @@ "node-gyp-build-test": "build-test.js" } }, - "node_modules/node-gyp/node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/node-gyp/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-gyp/node_modules/nopt": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", - "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", - "dev": true, - "dependencies": { - "abbrev": "^1.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/node-gyp/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-gyp/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node_modules/node-port-check": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/node-port-check/-/node-port-check-2.0.1.tgz", - "integrity": "sha512-PV1tj5OPbWwxvhPcChXxwCIKl/IfVEdPP4u/gQz2lao/VGoeIUXb/4U72KSHLZpTVBmgTnMm0me7yR0wUsIuPg==", - "optional": true - }, - "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "node_modules/nopt": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", - "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", - "dev": true, - "dependencies": { - "abbrev": "^2.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/normalize-package-data": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", - "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", - "dev": true, - "dependencies": { - "hosted-git-info": "^6.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/normalize-package-data/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/normalize-package-data/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "devOptional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm-bundled": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", - "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", - "dev": true, - "dependencies": { - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-install-checks": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", - "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", - "dev": true, - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-install-checks/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm-install-checks/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm-install-checks/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/npm-normalize-package-bin": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", - "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-package-arg": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.1.tgz", - "integrity": "sha512-CsP95FhWQDwNqiYS+Q0mZ7FAEDytDZAkNxQqea6IaAFJTAY9Lhhqyl0irU/6PMc7BGfUmnsbHcqxJD7XuVM/rg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^3.0.6", - "semver": "^7.0.0", - "validate-npm-package-name": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm-package-arg/node_modules/builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==", - "dev": true - }, - "node_modules/npm-package-arg/node_modules/hosted-git-info": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", - "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm-package-arg/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm-package-arg/node_modules/validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==", - "dev": true, - "dependencies": { - "builtins": "^1.0.3" - } - }, - "node_modules/npm-package-arg/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/npm-packlist": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz", - "integrity": "sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==", - "dev": true, - "dependencies": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "npm-packlist": "bin/index.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-packlist/node_modules/brace-expansion": { + "node_modules/node-gyp/node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", @@ -25661,238 +24067,228 @@ "balanced-match": "^1.0.0" } }, - "node_modules/npm-packlist/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "node_modules/node-gyp/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, - "engines": { - "node": ">=12" + "bin": { + "glob": "dist/esm/bin.mjs" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/npm-packlist/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, "engines": { - "node": ">=10" - } - }, - "node_modules/npm-packlist/node_modules/npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "dependencies": { - "npm-normalize-package-bin": "^1.0.1" + "node": ">=16" } }, - "node_modules/npm-packlist/node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "node_modules/npm-pick-manifest": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.2.tgz", - "integrity": "sha512-1dKY+86/AIiq1tkKVD3l0WI+Gd3vkknVGAggsFeBkTvbhMQ1OND/LKkYv4JtXPKUJ8bOTCyLiqEg2P6QNdK+Gg==", + "node_modules/node-gyp/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^10.0.0", - "semver": "^7.3.5" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/npm-pick-manifest/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/node-gyp/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { "node": ">=10" } }, - "node_modules/npm-pick-manifest/node_modules/npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", + "node_modules/node-gyp/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.13.0 || >=18.0.0" } }, - "node_modules/npm-pick-manifest/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-machine-id": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz", + "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==", + "dev": true + }, + "node_modules/node-port-check": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-port-check/-/node-port-check-2.0.1.tgz", + "integrity": "sha512-PV1tj5OPbWwxvhPcChXxwCIKl/IfVEdPP4u/gQz2lao/VGoeIUXb/4U72KSHLZpTVBmgTnMm0me7yR0wUsIuPg==", + "optional": true + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "node_modules/nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" + "abbrev": "^2.0.0" }, "bin": { - "semver": "bin/semver.js" + "nopt": "bin/nopt.js" }, "engines": { - "node": ">=10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-pick-manifest/node_modules/validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "node_modules/normalize-package-data": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", + "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", "dev": true, "dependencies": { - "builtins": "^5.0.0" + "hosted-git-info": "^7.0.0", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-pick-manifest/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/npm-registry-fetch": { - "version": "14.0.5", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", - "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", + "node_modules/normalize-package-data/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "make-fetch-happen": "^11.0.0", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^10.0.0", - "proc-log": "^3.0.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, "engines": { - "node": ">=12" + "node": ">=0.10.0" } }, - "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "devOptional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-bundled": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz", + "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==", "dev": true, "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" + "npm-normalize-package-bin": "^3.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "node_modules/npm-install-checks": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", "dev": true, + "dependencies": { + "semver": "^7.1.1" + }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "node_modules/npm-install-checks/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" + "node": ">=10" } }, - "node_modules/npm-registry-fetch/node_modules/minipass-fetch/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", "dev": true, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", + "node_modules/npm-package-arg": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz", + "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==", "dev": true, "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", + "hosted-git-info": "^7.0.0", + "proc-log": "^4.0.0", "semver": "^7.3.5", "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/npm-package-arg/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -25900,57 +24296,64 @@ "node": ">=10" } }, - "node_modules/npm-registry-fetch/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/npm-packlist": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", + "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "ignore-walk": "^6.0.4" }, "engines": { - "node": ">=10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "node_modules/npm-pick-manifest": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", + "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", "dev": true, "dependencies": { - "minipass": "^7.0.3" + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^11.0.0", + "semver": "^7.3.5" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/ssri/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "node_modules/npm-pick-manifest/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=10" } }, - "node_modules/npm-registry-fetch/node_modules/validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "node_modules/npm-registry-fetch": { + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz", + "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==", "dev": true, "dependencies": { - "builtins": "^5.0.0" + "@npmcli/redact": "^2.0.0", + "jsonparse": "^1.3.1", + "make-fetch-happen": "^13.0.0", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minizlib": "^2.1.2", + "npm-package-arg": "^11.0.0", + "proc-log": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/npm-run-all": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", @@ -25977,9 +24380,9 @@ } }, "node_modules/npm-run-all/node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", "dev": true, "dependencies": { "nice-try": "^1.0.4", @@ -26055,21 +24458,6 @@ "node": ">=8" } }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/number-to-bn": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", @@ -26091,65 +24479,66 @@ "dev": true }, "node_modules/nx": { - "version": "15.9.7", - "resolved": "https://registry.npmjs.org/nx/-/nx-15.9.7.tgz", - "integrity": "sha512-1qlEeDjX9OKZEryC8i4bA+twNg+lB5RKrozlNwWx/lLJHqWPUfvUTvxh+uxlPYL9KzVReQjUuxMLFMsHNqWUrA==", + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/nx/-/nx-20.7.2.tgz", + "integrity": "sha512-T9pCTw6pA9PoowpLsm9L+GeQw0iHitrIX96jrpMXKbSjPmryokP7EJ+LNkdEV6xX+MrATERWJlPd+NYwnYxbIA==", "dev": true, "hasInstallScript": true, "dependencies": { - "@nrwl/cli": "15.9.7", - "@nrwl/tao": "15.9.7", - "@parcel/watcher": "2.0.4", + "@napi-rs/wasm-runtime": "0.2.4", "@yarnpkg/lockfile": "^1.1.0", - "@yarnpkg/parsers": "3.0.0-rc.46", - "@zkochan/js-yaml": "0.0.6", - "axios": "^1.0.0", + "@yarnpkg/parsers": "3.0.2", + "@zkochan/js-yaml": "0.0.7", + "axios": "^1.8.3", "chalk": "^4.1.0", "cli-cursor": "3.1.0", "cli-spinners": "2.6.1", - "cliui": "^7.0.2", - "dotenv": "~10.0.0", + "cliui": "^8.0.1", + "dotenv": "~16.4.5", + "dotenv-expand": "~11.0.6", "enquirer": "~2.3.6", - "fast-glob": "3.2.7", "figures": "3.2.0", "flat": "^5.0.2", - "fs-extra": "^11.1.0", - "glob": "7.1.4", + "front-matter": "^4.0.2", "ignore": "^5.0.4", - "js-yaml": "4.1.0", + "jest-diff": "^29.4.1", "jsonc-parser": "3.2.0", - "lines-and-columns": "~2.0.3", - "minimatch": "3.0.5", + "lines-and-columns": "2.0.3", + "minimatch": "9.0.3", + "node-machine-id": "1.1.12", "npm-run-path": "^4.0.1", "open": "^8.4.0", - "semver": "7.5.4", + "ora": "5.3.0", + "resolve.exports": "2.0.3", + "semver": "^7.5.3", "string-width": "^4.2.3", - "strong-log-transformer": "^2.1.0", "tar-stream": "~2.2.0", "tmp": "~0.2.1", "tsconfig-paths": "^4.1.2", "tslib": "^2.3.0", - "v8-compile-cache": "2.3.0", + "yaml": "^2.6.0", "yargs": "^17.6.2", "yargs-parser": "21.1.1" }, "bin": { - "nx": "bin/nx.js" + "nx": "bin/nx.js", + "nx-cloud": "bin/nx-cloud.js" }, "optionalDependencies": { - "@nrwl/nx-darwin-arm64": "15.9.7", - "@nrwl/nx-darwin-x64": "15.9.7", - "@nrwl/nx-linux-arm-gnueabihf": "15.9.7", - "@nrwl/nx-linux-arm64-gnu": "15.9.7", - "@nrwl/nx-linux-arm64-musl": "15.9.7", - "@nrwl/nx-linux-x64-gnu": "15.9.7", - "@nrwl/nx-linux-x64-musl": "15.9.7", - "@nrwl/nx-win32-arm64-msvc": "15.9.7", - "@nrwl/nx-win32-x64-msvc": "15.9.7" + "@nx/nx-darwin-arm64": "20.7.2", + "@nx/nx-darwin-x64": "20.7.2", + "@nx/nx-freebsd-x64": "20.7.2", + "@nx/nx-linux-arm-gnueabihf": "20.7.2", + "@nx/nx-linux-arm64-gnu": "20.7.2", + "@nx/nx-linux-arm64-musl": "20.7.2", + "@nx/nx-linux-x64-gnu": "20.7.2", + "@nx/nx-linux-x64-musl": "20.7.2", + "@nx/nx-win32-arm64-msvc": "20.7.2", + "@nx/nx-win32-x64-msvc": "20.7.2" }, "peerDependencies": { - "@swc-node/register": "^1.4.2", - "@swc/core": "^1.2.173" + "@swc-node/register": "^1.8.0", + "@swc/core": "^1.3.85" }, "peerDependenciesMeta": { "@swc-node/register": { @@ -26175,6 +24564,15 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/nx/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "node_modules/nx/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -26191,6 +24589,20 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/nx/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/nx/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -26206,64 +24618,19 @@ "node_modules/nx/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/nx/node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/nx/node_modules/fast-glob": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", - "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nx/node_modules/glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "node_modules/nx/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/nx/node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "ansi-colors": "^4.1.1" }, "engines": { - "node": ">= 6" + "node": ">=8.6" } }, "node_modules/nx/node_modules/has-flag": { @@ -26275,38 +24642,48 @@ "node": ">=8" } }, - "node_modules/nx/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/nx/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nx/node_modules/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", + "node_modules/nx/node_modules/ora": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz", + "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "bl": "^4.0.3", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "log-symbols": "^4.0.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { - "node": "*" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/nx/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -26350,15 +24727,9 @@ } }, "node_modules/nx/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, - "node_modules/nx/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true }, "node_modules/nx/node_modules/yargs-parser": { @@ -26821,253 +25192,43 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, "node_modules/pacote": { - "version": "15.1.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.1.1.tgz", - "integrity": "sha512-eeqEe77QrA6auZxNHIp+1TzHQ0HBKf5V6c8zcaYZ134EJe1lCi+fjXATkNiEEfbG+e50nu02GLvUtmZcGOYabQ==", + "version": "18.0.6", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz", + "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==", "dev": true, "dependencies": { - "@npmcli/git": "^4.0.0", + "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/promise-spawn": "^6.0.1", - "@npmcli/run-script": "^6.0.0", - "cacache": "^17.0.0", + "@npmcli/package-json": "^5.1.0", + "@npmcli/promise-spawn": "^7.0.0", + "@npmcli/run-script": "^8.0.0", + "cacache": "^18.0.0", "fs-minipass": "^3.0.0", - "minipass": "^4.0.0", - "npm-package-arg": "^10.0.0", - "npm-packlist": "^7.0.0", - "npm-pick-manifest": "^8.0.0", - "npm-registry-fetch": "^14.0.0", - "proc-log": "^3.0.0", + "minipass": "^7.0.2", + "npm-package-arg": "^11.0.0", + "npm-packlist": "^8.0.0", + "npm-pick-manifest": "^9.0.0", + "npm-registry-fetch": "^17.0.0", + "proc-log": "^4.0.0", "promise-retry": "^2.0.1", - "read-package-json": "^6.0.0", - "read-package-json-fast": "^3.0.0", - "sigstore": "^1.0.0", + "sigstore": "^2.2.0", "ssri": "^10.0.0", "tar": "^6.1.11" }, "bin": { - "pacote": "lib/bin.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/@npmcli/run-script": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", - "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", - "dev": true, - "dependencies": { - "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^6.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^3.0.0", - "which": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/pacote/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/pacote/node_modules/glob/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/pacote/node_modules/ignore-walk": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", - "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", - "dev": true, - "dependencies": { - "minimatch": "^9.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/pacote/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/pacote/node_modules/minipass": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", - "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/pacote/node_modules/npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/npm-packlist": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", - "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", - "dev": true, - "dependencies": { - "ignore-walk": "^6.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/read-package-json": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", - "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", - "dev": true, - "dependencies": { - "glob": "^10.2.2", - "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^5.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/pacote/node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/ssri/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/pacote/node_modules/validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", - "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/which.js" + "pacote": "bin/index.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/pako": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", @@ -27192,9 +25353,9 @@ "dev": true }, "node_modules/parse-path": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz", - "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.1.tgz", + "integrity": "sha512-6ReLMptznuuOEzLoGEa+I1oWRSj2Zna5jLWC+l6zlfAI4dbbSaIES29ThzuPkbhNahT65dWzfoZEO6cfJw2Ksg==", "dev": true, "dependencies": { "protocols": "^2.0.0" @@ -27252,16 +25413,16 @@ "dev": true }, "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", + "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -27277,9 +25438,9 @@ } }, "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", "dev": true }, "node_modules/path-type": { @@ -27463,9 +25624,9 @@ } }, "node_modules/postcss-selector-parser": { - "version": "6.0.16", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", - "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", "dev": true, "dependencies": { "cssesc": "^3.0.0", @@ -27600,9 +25761,9 @@ } }, "node_modules/proc-log": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", - "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -27623,6 +25784,15 @@ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "dev": true }, + "node_modules/proggy": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/proggy/-/proggy-2.0.0.tgz", + "integrity": "sha512-69agxLtnI8xBs9gUGqEnK26UfiexpHy+KUpBQWabiytQjnn5wFY8rklAi7GRfABIuPNnQ/ik48+LGLkYYJcy4A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/prom-client": { "version": "13.1.0", "resolved": "https://registry.npmjs.org/prom-client/-/prom-client-13.1.0.tgz", @@ -27653,9 +25823,9 @@ } }, "node_modules/promise-call-limit": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-1.0.2.tgz", - "integrity": "sha512-1vTUnfI2hzui8AEIixbdAJlFY4LFDXqQswy/2eOlThAscXCY4It8FdVuI0fMJGAB2aWGbdQf/gv0skKYXmdrHA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-3.0.2.tgz", + "integrity": "sha512-mRPQO2T1QQVw11E7+UdCJu7S61eJVWknzml9sC1heAdj1jxl0fWMBypIt9ZOcLFf8FkG995ZD7RnVk7HH72fZw==", "dev": true, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -27703,12 +25873,15 @@ } }, "node_modules/promzard": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/promzard/-/promzard-0.3.0.tgz", - "integrity": "sha512-JZeYqd7UAcHCwI+sTOeUDYkvEU+1bQ7iE0UT1MgB/tERkAPkesW46MrpIySzODi+owTjZtiF8Ay5j9m60KmMBw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/promzard/-/promzard-1.0.2.tgz", + "integrity": "sha512-2FPputGL+mP3jJ3UZg/Dl9YOkovB7DX0oOr+ck5QbZ5MtORtds8k/BZdn+02peDLI8/YWbmzx34k5fA+fHvCVQ==", "dev": true, "dependencies": { - "read": "1" + "read": "^3.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/proper-lockfile": { @@ -27722,12 +25895,6 @@ "signal-exit": "^3.0.2" } }, - "node_modules/proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", - "dev": true - }, "node_modules/protobufjs": { "version": "6.11.4", "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.4.tgz", @@ -27754,9 +25921,9 @@ } }, "node_modules/protocols": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz", - "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.2.tgz", + "integrity": "sha512-hHVTzba3wboROl0/aWRRG9dMytgH6ow//STBZh43l/wQgmMhYhOFi0EHWAPtoCz9IAUymsyP0TSBHkhgMEGNnQ==", "dev": true }, "node_modules/proxy-addr": { @@ -27841,25 +26008,15 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/pure-uuid/-/pure-uuid-1.8.1.tgz", "integrity": "sha512-PIwHXU7NZb/wTBwUfzCSjI85tfwx6DQOm74sRLtNLH8KHsFZEvAQbBQdz7E5ij8SNSv9WGdQPWiiM6NpNIeNfA==", - "optional": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==", - "dev": true, + "optional": true, "engines": { - "node": ">=0.6.0", - "teleport": ">=0.2.0" + "node": ">=8.0.0" } }, "node_modules/qs": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.12.0.tgz", - "integrity": "sha512-trVZiI6RMOkO476zLGaBIzszOdFPnCCXHPG9kn0yuS1uz6xdVxPfZdB3vUig9pxPFDM9BRAgz/YUIVQ1/vuiUg==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, "dependencies": { "side-channel": "^1.0.6" @@ -27994,39 +26151,24 @@ "dev": true }, "node_modules/read": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", - "integrity": "sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/read/-/read-3.0.1.tgz", + "integrity": "sha512-SLBrDU/Srs/9EoWhU5GdbAoxG1GzpQHo/6qiGItaoLJ1thmYpcNIM1qISEUvyHBzfGlWIyd6p2DNi1oV1VmAuw==", "dev": true, "dependencies": { - "mute-stream": "~0.0.4" + "mute-stream": "^1.0.0" }, "engines": { - "node": ">=0.8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/read-cmd-shim": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-3.0.0.tgz", - "integrity": "sha512-KQDVjGqhZk92PPNRj9ZEXEuqg8bUobSKRw+q0YQ3TKI5xkce7bUJobL4Z/OtiEbAAv70yEpYIXp4iQ9L8oPVog==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/read-package-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz", - "integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz", + "integrity": "sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==", "dev": true, - "dependencies": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1" - }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/read-package-json-fast": { @@ -28042,127 +26184,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-package-json/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/read-package-json/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/read-package-json/node_modules/hosted-git-info": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz", - "integrity": "sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==", - "dev": true, - "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/read-package-json/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/read-package-json/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/read-package-json/node_modules/normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/read-package-json/node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "node_modules/read-package-json/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/read-package-json/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/read-package-json/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", @@ -28342,6 +26363,15 @@ "node": ">=4" } }, + "node_modules/read/node_modules/mute-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", + "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/readable-stream": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", @@ -28622,9 +26652,9 @@ } }, "node_modules/resolve.exports": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", - "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", "dev": true, "engines": { "node": ">=10" @@ -29008,20 +27038,47 @@ "integrity": "sha512-1CdSqHQowJBnMAFyPEBRfqag/YP9OF394FV+4YREIJX4ljD7OxvQRDayyoyyCk+senRjSkP6VnUNQmVQqB6g7w==" }, "node_modules/secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.4.tgz", + "integrity": "sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==", "dev": true, "hasInstallScript": true, "dependencies": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", + "elliptic": "^6.5.7", + "node-addon-api": "^5.0.0", "node-gyp-build": "^4.2.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=18.0.0" + } + }, + "node_modules/secp256k1/node_modules/bn.js": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", + "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==", + "dev": true + }, + "node_modules/secp256k1/node_modules/elliptic": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", + "dev": true, + "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" } }, + "node_modules/secp256k1/node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==", + "dev": true + }, "node_modules/secure-json-parse": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz", @@ -29043,9 +27100,9 @@ "dev": true }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dev": true, "dependencies": { "debug": "2.6.9", @@ -29081,6 +27138,15 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -29097,12 +27163,6 @@ "node": ">= 0.8" } }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, "node_modules/send/node_modules/statuses": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", @@ -29113,24 +27173,24 @@ } }, "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, "dependencies": { "randombytes": "^2.1.0" } }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dev": true, "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -29280,144 +27340,51 @@ "rechoir": "^0.6.2" }, "bin": { - "shjs": "bin/shjs" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "devOptional": true - }, - "node_modules/sigstore": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.9.0.tgz", - "integrity": "sha512-0Zjz0oe37d08VeOtBIuB6cRriqXse2e8w+7yIy2XSXjshRKxbc2KkhXjL229jXSxEm7UbcjS76wcJDGQddVI9A==", - "dev": true, - "dependencies": { - "@sigstore/bundle": "^1.1.0", - "@sigstore/protobuf-specs": "^0.2.0", - "@sigstore/sign": "^1.0.0", - "@sigstore/tuf": "^1.0.3", - "make-fetch-happen": "^11.0.1" - }, - "bin": { - "sigstore": "bin/sigstore.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/sigstore/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/sigstore/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", - "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/sigstore/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/sigstore/node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/sigstore/node_modules/minipass-fetch/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, + "shjs": "bin/shjs" + }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=4" } }, - "node_modules/sigstore/node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dev": true, "dependencies": { - "minipass": "^7.0.3" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/sigstore/node_modules/ssri/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "devOptional": true + }, + "node_modules/sigstore": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz", + "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==", "dev": true, + "dependencies": { + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.3.2", + "@sigstore/sign": "^2.3.2", + "@sigstore/tuf": "^2.3.4", + "@sigstore/verify": "^1.2.1" + }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/simple-concat": { @@ -29501,14 +27468,6 @@ "@sinonjs/commons": "^3.0.0" } }, - "node_modules/sinon/node_modules/diff": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", - "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", - "engines": { - "node": ">=0.3.1" - } - }, "node_modules/sinon/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -29600,9 +27559,9 @@ } }, "node_modules/socks": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.1.tgz", - "integrity": "sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ==", + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.4.tgz", + "integrity": "sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==", "dev": true, "dependencies": { "ip-address": "^9.0.5", @@ -29614,17 +27573,26 @@ } }, "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", "dev": true, "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "socks": "^2.8.3" }, "engines": { - "node": ">= 10" + "node": ">= 14" + } + }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "dev": true, + "engines": { + "node": ">= 14" } }, "node_modules/solc": { @@ -30179,35 +28147,17 @@ "dev": true }, "node_modules/ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/ssri/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "minipass": "^7.0.3" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ssri/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/stack-trace": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", @@ -30815,20 +28765,20 @@ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "node_modules/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "devOptional": true, "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^5.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" }, "engines": { - "node": ">= 10" + "node": ">=10" } }, "node_modules/tar-stream": { @@ -30859,7 +28809,7 @@ "node": ">= 8" } }, - "node_modules/tar/node_modules/minipass": { + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { "version": "3.3.6", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", @@ -30871,6 +28821,15 @@ "node": ">=8" } }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, "node_modules/tar/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -30894,46 +28853,6 @@ "node": ">=4" } }, - "node_modules/tempy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tempy/-/tempy-1.0.0.tgz", - "integrity": "sha512-eLXG5B1G0mRPHmgH2WydPl5v4jH35qEn3y/rA/aahKhIa91Pn119SsU7n7v/433gtT9ONzC8ISvNHIh2JSTm0w==", - "dev": true, - "dependencies": { - "del": "^6.0.0", - "is-stream": "^2.0.0", - "temp-dir": "^2.0.0", - "type-fest": "^0.16.0", - "unique-string": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/tempy/node_modules/temp-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", - "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/tempy/node_modules/type-fest": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz", - "integrity": "sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", @@ -31068,12 +28987,43 @@ "dev": true }, "node_modules/through2": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/through2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/through2/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/through2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "dependencies": { - "readable-stream": "3" + "safe-buffer": "~5.1.0" } }, "node_modules/timed-out": { @@ -31099,15 +29049,6 @@ "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", "dev": true }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/to-readable-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", @@ -31471,108 +29412,17 @@ } }, "node_modules/tuf-js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", - "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz", + "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==", "dev": true, "dependencies": { - "@tufjs/models": "1.0.4", + "@tufjs/models": "2.0.1", "debug": "^4.3.4", - "make-fetch-happen": "^11.1.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/tuf-js/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", - "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/tuf-js/node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/tuf-js/node_modules/minipass-fetch/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/tuf-js/node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3" + "make-fetch-happen": "^13.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/ssri/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/tunnel-agent": { @@ -31876,9 +29726,9 @@ } }, "node_modules/undici": { - "version": "5.28.3", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.3.tgz", - "integrity": "sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA==", + "version": "5.29.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", + "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", "dependencies": { "@fastify/busboy": "^2.0.0" }, @@ -31915,18 +29765,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dev": true, - "dependencies": { - "crypto-random-string": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/universal-user-agent": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz", @@ -32070,12 +29908,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true - }, "node_modules/v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", @@ -32107,15 +29939,12 @@ } }, "node_modules/validate-npm-package-name": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", - "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", + "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/varint": { @@ -32148,9 +29977,9 @@ } }, "node_modules/walk-up-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-1.0.0.tgz", - "integrity": "sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", + "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==", "dev": true }, "node_modules/walker": { @@ -33664,9 +31493,9 @@ } }, "node_modules/workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==", + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", "dev": true }, "node_modules/wrap-ansi": { @@ -33872,9 +31701,9 @@ } }, "node_modules/ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "engines": { "node": ">=8.3.0" }, @@ -33988,12 +31817,14 @@ "dev": true }, "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz", + "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==", + "bin": { + "yaml": "bin.mjs" + }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/yargs": { @@ -34113,8 +31944,8 @@ "@axelar-network/axelar-gmp-sdk-solidity": "^5.7.0", "@axelar-network/interchain-token-service": "^1.2.4", "ethers": "^5.6.5", - "fs-extra": "^10.1.0", - "ganache": "^7.1.0", + "fs-extra": "^11.3.0", + "ganache": "^7.9.2", "lodash": "^4.17.21" }, "devDependencies": { @@ -34123,7 +31954,7 @@ "@typechain/ethers-v5": "^10.2.0", "@typechain/hardhat": "^6.1.5", "@types/chai": "^4.3.4", - "@types/fs-extra": "^9.0.13", + "@types/fs-extra": "^11.0.4", "@types/jest": "^29.2.1", "@types/lodash": "^4.14.186", "@types/mocha": "^10.0.0", @@ -34263,18 +32094,6 @@ "dependencies": { "undici-types": "~5.26.4" } - }, - "packages/axelar-local-dev/node_modules/fs-extra": { - "version": "10.1.0", - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } } } } diff --git a/package.json b/package.json index 14bd8fe0..9362c313 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,6 @@ "scripts": { "publish": "lerna publish from-package --yes", "version": "lerna version --yes --exact --no-git-tag-version", - "bootstrap": "lerna bootstrap", - "postinstall": "bash scripts/bootstrap.sh", "link": "lerna link", "test": "lerna run test", "update": "lerna update", @@ -32,7 +30,7 @@ "build:multiversx": "lerna exec --scope=@axelar-network/axelar-local-dev-multiversx npm run build" }, "devDependencies": { - "lerna": "^6.6.1", + "lerna": "^8.2.1", "lerna-update-wizard": "^1.1.2" } } diff --git a/packages/axelar-local-dev/package.json b/packages/axelar-local-dev/package.json index 06f717b8..2e346ea6 100644 --- a/packages/axelar-local-dev/package.json +++ b/packages/axelar-local-dev/package.json @@ -38,8 +38,8 @@ "@axelar-network/axelar-gmp-sdk-solidity": "^5.7.0", "@axelar-network/interchain-token-service": "^1.2.4", "ethers": "^5.6.5", - "fs-extra": "^10.1.0", - "ganache": "^7.1.0", + "fs-extra": "^11.3.0", + "ganache": "^7.9.2", "lodash": "^4.17.21" }, "devDependencies": { @@ -48,7 +48,7 @@ "@typechain/ethers-v5": "^10.2.0", "@typechain/hardhat": "^6.1.5", "@types/chai": "^4.3.4", - "@types/fs-extra": "^9.0.13", + "@types/fs-extra": "^11.0.4", "@types/jest": "^29.2.1", "@types/lodash": "^4.14.186", "@types/mocha": "^10.0.0", From 1471ff97da04bc92ec5d8557b1e8907064c70711 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 10 Apr 2025 10:14:37 +0500 Subject: [PATCH 09/93] chore(deps): update solidity-coverage to latest --- package-lock.json | 33296 ++++++++++------------- packages/axelar-local-dev/package.json | 2 +- 2 files changed, 14559 insertions(+), 18739 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2afbf266..4c3d8850 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1548,55 +1548,6 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@ethereumjs/common": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.5.tgz", - "integrity": "sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==", - "dev": true, - "dependencies": { - "crc-32": "^1.2.0", - "ethereumjs-util": "^7.1.5" - } - }, - "node_modules/@ethereumjs/common/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/@ethereumjs/common/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", - "dev": true, - "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/@ethereumjs/rlp": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-4.0.1.tgz", @@ -1608,55 +1559,6 @@ "node": ">=14" } }, - "node_modules/@ethereumjs/tx": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.5.2.tgz", - "integrity": "sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==", - "dev": true, - "dependencies": { - "@ethereumjs/common": "^2.6.4", - "ethereumjs-util": "^7.1.5" - } - }, - "node_modules/@ethereumjs/tx/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/@ethereumjs/tx/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", - "dev": true, - "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/@ethereumjs/util": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-8.1.0.tgz", @@ -6345,7 +6247,7 @@ "version": "4.6.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", - "devOptional": true, + "optional": true, "engines": { "node": ">=10" }, @@ -6411,7 +6313,7 @@ "version": "4.0.6", "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", - "devOptional": true, + "optional": true, "dependencies": { "defer-to-connect": "^2.0.0" }, @@ -6419,11614 +6321,7116 @@ "node": ">=10" } }, - "node_modules/@truffle/error": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@truffle/error/-/error-0.1.1.tgz", - "integrity": "sha512-sE7c9IHIGdbK4YayH4BC8i8qMjoAOeg6nUXUDZZp8wlU21/EMpaG+CLx+KqcIPyR+GSWIW3Dm0PXkr2nlggFDA==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@tsconfig/node10": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.10.tgz", + "integrity": "sha512-PiaIWIoPvO6qm6t114ropMCagj6YAF24j9OkCA2mJDXFnlionEwhsBCJ8yek4aib575BI3OkART/90WsgHgLWw==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", "dev": true }, - "node_modules/@truffle/interface-adapter": { - "version": "0.5.37", - "resolved": "https://registry.npmjs.org/@truffle/interface-adapter/-/interface-adapter-0.5.37.tgz", - "integrity": "sha512-lPH9MDgU+7sNDlJSClwyOwPCfuOimqsCx0HfGkznL3mcFRymc1pukAR1k17zn7ErHqBwJjiKAZ6Ri72KkS+IWw==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@tufjs/canonical-json": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", + "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", "dev": true, - "dependencies": { - "bn.js": "^5.1.3", - "ethers": "^4.0.32", - "web3": "1.10.0" - }, "engines": { - "node": "^16.20 || ^18.16 || >=20" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/@ethereumjs/common": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.5.0.tgz", - "integrity": "sha512-DEHjW6e38o+JmB/NO3GZBpW4lpaiBpkFgXF6jLcJ6gETBYpEyaA5nTimsWBUJR3Vmtm/didUEbNjajskugZORg==", + "node_modules/@tufjs/models": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz", + "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==", "dev": true, "dependencies": { - "crc-32": "^1.2.0", - "ethereumjs-util": "^7.1.1" + "@tufjs/canonical-json": "2.0.0", + "minimatch": "^9.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/@ethereumjs/tx": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.3.2.tgz", - "integrity": "sha512-6AaJhwg4ucmwTvw/1qLaZUX5miWrwZ4nLOUsKyb/HtzS3BMw/CasKhdi1ims9mBKeK9sOJCH4qGKOBGyJCeeog==", + "node_modules/@tufjs/models/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "@ethereumjs/common": "^2.5.0", - "ethereumjs-util": "^7.1.2" + "balanced-match": "^1.0.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/@szmarczak/http-timer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-5.0.1.tgz", - "integrity": "sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==", + "node_modules/@tufjs/models/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { - "defer-to-connect": "^2.0.1" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=14.16" - } - }, - "node_modules/@truffle/interface-adapter/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", - "dev": true - }, - "node_modules/@truffle/interface-adapter/node_modules/cacheable-lookup": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-6.1.0.tgz", - "integrity": "sha512-KJ/Dmo1lDDhmW2XDPMo+9oiy/CeqosPguPCrgcVzKyZrL6pM1gU2GmPY/xo6OQPTUaA/c0kwHuywB4E6nmT9ww==", - "dev": true, - "engines": { - "node": ">=10.6.0" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@truffle/interface-adapter/node_modules/eth-lib": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", - "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "node_modules/@tybys/wasm-util": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", + "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", "dev": true, "dependencies": { - "bn.js": "^4.11.6", - "elliptic": "^6.4.0", - "xhr-request-promise": "^0.1.2" + "tslib": "^2.4.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/eth-lib/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "node_modules/@tybys/wasm-util/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true }, - "node_modules/@truffle/interface-adapter/node_modules/eth-lib/node_modules/elliptic": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", - "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", + "node_modules/@typechain/ethers-v5": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/@typechain/ethers-v5/-/ethers-v5-10.2.1.tgz", + "integrity": "sha512-n3tQmCZjRE6IU4h6lqUGiQ1j866n5MTCBJreNEHHVWXa2u9GJTaeYyU1/k+1qLutkyw+sS6VAN+AbeiTqsxd/A==", "dev": true, "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" + "lodash": "^4.17.15", + "ts-essentials": "^7.0.1" + }, + "peerDependencies": { + "@ethersproject/abi": "^5.0.0", + "@ethersproject/providers": "^5.0.0", + "ethers": "^5.1.3", + "typechain": "^8.1.1", + "typescript": ">=4.3.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "node_modules/@typechain/hardhat": { + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/@typechain/hardhat/-/hardhat-6.1.6.tgz", + "integrity": "sha512-BiVnegSs+ZHVymyidtK472syodx1sXYlYJJixZfRstHVGYTi8V1O7QG4nsjyb0PC/LORcq7sfBUcHto1y6UgJA==", "dev": true, "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "fs-extra": "^9.1.0" + }, + "peerDependencies": { + "@ethersproject/abi": "^5.4.7", + "@ethersproject/providers": "^5.4.7", + "@typechain/ethers-v5": "^10.2.1", + "ethers": "^5.4.7", + "hardhat": "^2.9.9", + "typechain": "^8.1.1" } }, - "node_modules/@truffle/interface-adapter/node_modules/ethereum-cryptography/node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "node_modules/@typechain/hardhat/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@truffle/interface-adapter/node_modules/ethereum-cryptography/node_modules/scrypt-js": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", - "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", - "dev": true - }, - "node_modules/@truffle/interface-adapter/node_modules/ethereum-cryptography/node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true - }, - "node_modules/@truffle/interface-adapter/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dev": true, "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" - }, - "engines": { - "node": ">=10.0.0" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/ethers": { - "version": "4.0.49", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-4.0.49.tgz", - "integrity": "sha512-kPltTvWiyu+OktYy1IStSO16i2e7cS9D9OxZ81q2UUaiNPVrm/RTcbxamCXF9VUSKzJIdJV68EAIhTEVBalRWg==", + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", "dev": true, "dependencies": { - "aes-js": "3.0.0", - "bn.js": "^4.11.9", - "elliptic": "6.5.4", - "hash.js": "1.1.3", - "js-sha3": "0.5.7", - "scrypt-js": "2.0.4", - "setimmediate": "1.0.4", - "uuid": "2.0.1", - "xmlhttprequest": "1.8.0" + "@babel/types": "^7.0.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/ethers/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - }, - "node_modules/@truffle/interface-adapter/node_modules/eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", - "dev": true - }, - "node_modules/@truffle/interface-adapter/node_modules/got": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-12.1.0.tgz", - "integrity": "sha512-hBv2ty9QN2RdbJJMK3hesmSkFTjVIHyIDDbssCKnSmq62edGgImJWD10Eb1k77TiV1bxloxqcFAVK8+9pkhOig==", + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "dev": true, "dependencies": { - "@sindresorhus/is": "^4.6.0", - "@szmarczak/http-timer": "^5.0.1", - "@types/cacheable-request": "^6.0.2", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^6.0.4", - "cacheable-request": "^7.0.2", - "decompress-response": "^6.0.0", - "form-data-encoder": "1.7.1", - "get-stream": "^6.0.1", - "http2-wrapper": "^2.1.10", - "lowercase-keys": "^3.0.0", - "p-cancelable": "^3.0.0", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/hash.js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", - "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "node_modules/@types/babel__traverse": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", + "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.0" + "@babel/types": "^7.20.7" } }, - "node_modules/@truffle/interface-adapter/node_modules/http2-wrapper": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.1.tgz", - "integrity": "sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==", + "node_modules/@types/bn.js": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.5.tgz", + "integrity": "sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==", "dev": true, "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.2.0" - }, - "engines": { - "node": ">=10.19.0" - } - }, - "node_modules/@truffle/interface-adapter/node_modules/js-sha3": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", - "integrity": "sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g==", - "dev": true - }, - "node_modules/@truffle/interface-adapter/node_modules/lowercase-keys": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz", - "integrity": "sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@truffle/interface-adapter/node_modules/p-cancelable": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz", - "integrity": "sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==", - "dev": true, - "engines": { - "node": ">=12.20" + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "optional": true, + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/scrypt-js": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-2.0.4.tgz", - "integrity": "sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==", - "dev": true - }, - "node_modules/@truffle/interface-adapter/node_modules/setimmediate": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.4.tgz", - "integrity": "sha512-/TjEmXQVEzdod/FFskf3o7oOAsGhHf2j1dZqRFbDzq4F3mvvxflIIi4Hd3bLQE9y/CpwqfSQam5JakI/mi3Pog==", - "dev": true - }, - "node_modules/@truffle/interface-adapter/node_modules/uuid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", - "integrity": "sha512-nWg9+Oa3qD2CQzHIP4qKUqwNfzKn8P0LtFhotaCTFchsV7ZfDhAybeip/HZVeMIpZi9JgY1E3nUlwaCmZT1sEg==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "node_modules/@types/chai": { + "version": "4.3.14", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.14.tgz", + "integrity": "sha512-Wj71sXE4Q4AkGdG9Tvq1u/fquNz9EdG4LIJMwVVII7ashjD/8cf8fyIfJAjRr6YcsXnSE8cOGQPq1gqeR8z+3w==", "dev": true }, - "node_modules/@truffle/interface-adapter/node_modules/web3": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3/-/web3-1.10.0.tgz", - "integrity": "sha512-YfKY9wSkGcM8seO+daR89oVTcbu18NsVfvOngzqMYGUU0pPSQmE57qQDvQzUeoIOHAnXEBNzrhjQJmm8ER0rng==", + "node_modules/@types/concat-stream": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz", + "integrity": "sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==", "dev": true, - "hasInstallScript": true, "dependencies": { - "web3-bzz": "1.10.0", - "web3-core": "1.10.0", - "web3-eth": "1.10.0", - "web3-eth-personal": "1.10.0", - "web3-net": "1.10.0", - "web3-shh": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-bzz": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.10.0.tgz", - "integrity": "sha512-o9IR59io3pDUsXTsps5pO5hW1D5zBmg46iNc2t4j2DkaYHNdDLwk2IP9ukoM2wg47QILfPEJYzhTfkS/CcX0KA==", - "dev": true, - "hasInstallScript": true, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "dependencies": { - "@types/node": "^12.12.6", - "got": "12.1.0", - "swarm-js": "^0.1.40" - }, - "engines": { - "node": ">=8.0.0" + "@types/ms": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-core": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.10.0.tgz", - "integrity": "sha512-fWySwqy2hn3TL89w5TM8wXF1Z2Q6frQTKHWmP0ppRQorEK8NcHJRfeMiv/mQlSKoTS1F6n/nv2uyZsixFycjYQ==", + "node_modules/@types/form-data": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz", + "integrity": "sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw==", "dev": true, "dependencies": { - "@types/bn.js": "^5.1.1", - "@types/node": "^12.12.6", - "bignumber.js": "^9.0.0", - "web3-core-helpers": "1.10.0", - "web3-core-method": "1.10.0", - "web3-core-requestmanager": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-core-helpers": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.10.0.tgz", - "integrity": "sha512-pIxAzFDS5vnbXvfvLSpaA1tfRykAe9adw43YCKsEYQwH0gCLL0kMLkaCX3q+Q8EVmAh+e1jWL/nl9U0de1+++g==", + "node_modules/@types/fs-extra": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-11.0.4.tgz", + "integrity": "sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==", "dev": true, "dependencies": { - "web3-eth-iban": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/jsonfile": "*", + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-core-method": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.10.0.tgz", - "integrity": "sha512-4R700jTLAMKDMhQ+nsVfIXvH6IGJlJzGisIfMKWAIswH31h5AZz7uDUW2YctI+HrYd+5uOAlS4OJeeT9bIpvkA==", + "node_modules/@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", "dev": true, "dependencies": { - "@ethersproject/transactions": "^5.6.2", - "web3-core-helpers": "1.10.0", - "web3-core-promievent": "1.10.0", - "web3-core-subscriptions": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/minimatch": "*", + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-core-promievent": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.10.0.tgz", - "integrity": "sha512-68N7k5LWL5R38xRaKFrTFT2pm2jBNFaM4GioS00YjAKXRQ3KjmhijOMG3TICz6Aa5+6GDWYelDNx21YAeZ4YTg==", + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", "dev": true, "dependencies": { - "eventemitter3": "4.0.4" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-core-requestmanager": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.10.0.tgz", - "integrity": "sha512-3z/JKE++Os62APml4dvBM+GAuId4h3L9ckUrj7ebEtS2AR0ixyQPbrBodgL91Sv7j7cQ3Y+hllaluqjguxvSaQ==", - "dev": true, - "dependencies": { - "util": "^0.12.5", - "web3-core-helpers": "1.10.0", - "web3-providers-http": "1.10.0", - "web3-providers-ipc": "1.10.0", - "web3-providers-ws": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "optional": true }, - "node_modules/@truffle/interface-adapter/node_modules/web3-core-subscriptions": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.10.0.tgz", - "integrity": "sha512-HGm1PbDqsxejI075gxBc5OSkwymilRWZufIy9zEpnWKNmfbuv5FfHgW1/chtJP6aP3Uq2vHkvTDl3smQBb8l+g==", - "dev": true, - "dependencies": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true }, - "node_modules/@truffle/interface-adapter/node_modules/web3-eth": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.10.0.tgz", - "integrity": "sha512-Z5vT6slNMLPKuwRyKGbqeGYC87OAy8bOblaqRTgg94CXcn/mmqU7iPIlG4506YdcdK3x6cfEDG7B6w+jRxypKA==", + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "dev": true, "dependencies": { - "web3-core": "1.10.0", - "web3-core-helpers": "1.10.0", - "web3-core-method": "1.10.0", - "web3-core-subscriptions": "1.10.0", - "web3-eth-abi": "1.10.0", - "web3-eth-accounts": "1.10.0", - "web3-eth-contract": "1.10.0", - "web3-eth-ens": "1.10.0", - "web3-eth-iban": "1.10.0", - "web3-eth-personal": "1.10.0", - "web3-net": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/istanbul-lib-coverage": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-eth-abi": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.10.0.tgz", - "integrity": "sha512-cwS+qRBWpJ43aI9L3JS88QYPfFcSJJ3XapxOQ4j40v6mk7ATpA8CVK1vGTzpihNlOfMVRBkR95oAj7oL6aiDOg==", + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dev": true, "dependencies": { - "@ethersproject/abi": "^5.6.3", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/istanbul-lib-report": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-eth-accounts": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.10.0.tgz", - "integrity": "sha512-wiq39Uc3mOI8rw24wE2n15hboLE0E9BsQLdlmsL4Zua9diDS6B5abXG0XhFcoNsXIGMWXVZz4TOq3u4EdpXF/Q==", + "node_modules/@types/jest": { + "version": "29.5.12", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", + "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", "dev": true, "dependencies": { - "@ethereumjs/common": "2.5.0", - "@ethereumjs/tx": "3.3.2", - "eth-lib": "0.2.8", - "ethereumjs-util": "^7.1.5", - "scrypt-js": "^3.0.1", - "uuid": "^9.0.0", - "web3-core": "1.10.0", - "web3-core-helpers": "1.10.0", - "web3-core-method": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "expect": "^29.0.0", + "pretty-format": "^29.0.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-eth-accounts/node_modules/scrypt-js": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", - "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", - "dev": true + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "devOptional": true }, - "node_modules/@truffle/interface-adapter/node_modules/web3-eth-accounts/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", - "dev": true, - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "bin": { - "uuid": "dist/bin/uuid" - } + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true }, - "node_modules/@truffle/interface-adapter/node_modules/web3-eth-contract": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.10.0.tgz", - "integrity": "sha512-MIC5FOzP/+2evDksQQ/dpcXhSqa/2hFNytdl/x61IeWxhh6vlFeSjq0YVTAyIzdjwnL7nEmZpjfI6y6/Ufhy7w==", + "node_modules/@types/jsonfile": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/@types/jsonfile/-/jsonfile-6.1.4.tgz", + "integrity": "sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==", "dev": true, "dependencies": { - "@types/bn.js": "^5.1.1", - "web3-core": "1.10.0", - "web3-core-helpers": "1.10.0", - "web3-core-method": "1.10.0", - "web3-core-promievent": "1.10.0", - "web3-core-subscriptions": "1.10.0", - "web3-eth-abi": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-eth-ens": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.10.0.tgz", - "integrity": "sha512-3hpGgzX3qjgxNAmqdrC2YUQMTfnZbs4GeLEmy8aCWziVwogbuqQZ+Gzdfrym45eOZodk+lmXyLuAdqkNlvkc1g==", + "node_modules/@types/keccak": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/keccak/-/keccak-3.0.4.tgz", + "integrity": "sha512-hdnkmbie7tE0yXnQQvlIOqCyjEsoXDVEZ3ACqO+F305XgUOW4Z9ElWdogCXXRAW/khnZ7GxM0t/BGB5bORKt/g==", "dev": true, "dependencies": { - "content-hash": "^2.5.2", - "eth-ens-namehash": "2.0.8", - "web3-core": "1.10.0", - "web3-core-helpers": "1.10.0", - "web3-core-promievent": "1.10.0", - "web3-eth-abi": "1.10.0", - "web3-eth-contract": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-eth-iban": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.10.0.tgz", - "integrity": "sha512-0l+SP3IGhInw7Q20LY3IVafYEuufo4Dn75jAHT7c2aDJsIolvf2Lc6ugHkBajlwUneGfbRQs/ccYPQ9JeMUbrg==", - "dev": true, + "node_modules/@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "optional": true, "dependencies": { - "bn.js": "^5.2.1", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-eth-personal": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.10.0.tgz", - "integrity": "sha512-anseKn98w/d703eWq52uNuZi7GhQeVjTC5/svrBWEKob0WZ5kPdo+EZoFN0sp5a5ubbrk/E0xSl1/M5yORMtpg==", - "dev": true, - "dependencies": { - "@types/node": "^12.12.6", - "web3-core": "1.10.0", - "web3-core-helpers": "1.10.0", - "web3-core-method": "1.10.0", - "web3-net": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } + "node_modules/@types/lodash": { + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.0.tgz", + "integrity": "sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==", + "dev": true }, - "node_modules/@truffle/interface-adapter/node_modules/web3-net": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.10.0.tgz", - "integrity": "sha512-NLH/N3IshYWASpxk4/18Ge6n60GEvWBVeM8inx2dmZJVmRI6SJIlUxbL8jySgiTn3MMZlhbdvrGo8fpUW7a1GA==", - "dev": true, - "dependencies": { - "web3-core": "1.10.0", - "web3-core-method": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } + "node_modules/@types/long": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", + "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" }, - "node_modules/@truffle/interface-adapter/node_modules/web3-providers-http": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.10.0.tgz", - "integrity": "sha512-eNr965YB8a9mLiNrkjAWNAPXgmQWfpBfkkn7tpEFlghfww0u3I0tktMZiaToJVcL2+Xq+81cxbkpeWJ5XQDwOA==", - "dev": true, + "node_modules/@types/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==", + "dev": true + }, + "node_modules/@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", + "dev": true + }, + "node_modules/@types/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", + "dev": true + }, + "node_modules/@types/mocha": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz", + "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==", + "dev": true + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==" + }, + "node_modules/@types/node": { + "version": "20.11.30", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.30.tgz", + "integrity": "sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==", "dependencies": { - "abortcontroller-polyfill": "^1.7.3", - "cross-fetch": "^3.1.4", - "es6-promise": "^4.2.8", - "web3-core-helpers": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "undici-types": "~5.26.4" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-providers-ipc": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.10.0.tgz", - "integrity": "sha512-OfXG1aWN8L1OUqppshzq8YISkWrYHaATW9H8eh0p89TlWMc1KZOL9vttBuaBEi96D/n0eYDn2trzt22bqHWfXA==", + "node_modules/@types/node-fetch": { + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.11.tgz", + "integrity": "sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==", "dev": true, "dependencies": { - "oboe": "2.1.5", - "web3-core-helpers": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*", + "form-data": "^4.0.0" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-providers-ws": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.10.0.tgz", - "integrity": "sha512-sK0fNcglW36yD5xjnjtSGBnEtf59cbw4vZzJ+CmOWIKGIR96mP5l684g0WD0Eo+f4NQc2anWWXG74lRc9OVMCQ==", + "node_modules/@types/normalize-package-data": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", + "dev": true + }, + "node_modules/@types/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew==", "dev": true, "dependencies": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.10.0", - "websocket": "^1.0.32" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-shh": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.10.0.tgz", - "integrity": "sha512-uNUUuNsO2AjX41GJARV9zJibs11eq6HtOe6Wr0FtRUcj8SN6nHeYIzwstAvJ4fXA53gRqFMTxdntHEt9aXVjpg==", + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true + }, + "node_modules/@types/qs": { + "version": "6.9.14", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.14.tgz", + "integrity": "sha512-5khscbd3SwWMhFqylJBLQ0zIu7c1K6Vz0uBIt915BI3zV0q1nfjRQD3RqSBcPaO6PHEF4ov/t9y89fSiyThlPA==", + "dev": true + }, + "node_modules/@types/readable-stream": { + "version": "2.3.15", + "resolved": "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-2.3.15.tgz", + "integrity": "sha512-oM5JSKQCcICF1wvGgmecmHldZ48OZamtMxcGGVICOJA8o8cahXC1zEVAif8iwoc5j8etxFaRFnf095+CDsuoFQ==", "dev": true, - "hasInstallScript": true, "dependencies": { - "web3-core": "1.10.0", - "web3-core-method": "1.10.0", - "web3-core-subscriptions": "1.10.0", - "web3-net": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*", + "safe-buffer": "~5.1.1" } }, - "node_modules/@truffle/interface-adapter/node_modules/web3-utils": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.10.0.tgz", - "integrity": "sha512-kSaCM0uMcZTNUSmn5vMEhlo02RObGNRRCkdX0V9UTAU0+lrvn0HSaudyCo6CQzuXUsnuY2ERJGCGPfeWmv19Rg==", - "dev": true, + "node_modules/@types/responselike": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", + "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "optional": true, "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" - }, - "engines": { - "node": ">=8.0.0" + "@types/node": "*" } }, - "node_modules/@truffle/provider": { - "version": "0.2.64", - "resolved": "https://registry.npmjs.org/@truffle/provider/-/provider-0.2.64.tgz", - "integrity": "sha512-ZwPsofw4EsCq/2h0t73SPnnFezu4YQWBmK4FxFaOUX0F+o8NsZuHKyfJzuZwyZbiktYmefM3yD9rM0Dj4BhNbw==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@types/secp256k1": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.6.tgz", + "integrity": "sha512-hHxJU6PAEUn0TP4S/ZOzuTUvJWuZ6eIKeNKb5RBpODvSl6hp1Wrw4s7ATY50rklRCScUDpHzVA/DQdSjJ3UoYQ==", "dev": true, "dependencies": { - "@truffle/error": "^0.1.1", - "@truffle/interface-adapter": "^0.5.25", - "debug": "^4.3.1", - "web3": "1.7.4" + "@types/node": "*" } }, - "node_modules/@tsconfig/node10": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.10.tgz", - "integrity": "sha512-PiaIWIoPvO6qm6t114ropMCagj6YAF24j9OkCA2mJDXFnlionEwhsBCJ8yek4aib575BI3OkART/90WsgHgLWw==", + "node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", "dev": true }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true + "node_modules/@types/sinon": { + "version": "17.0.3", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz", + "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==", + "dependencies": { + "@types/sinonjs__fake-timers": "*" + } }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true + "node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", + "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==" }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", "dev": true }, - "node_modules/@tufjs/canonical-json": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", - "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", - "dev": true, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } + "node_modules/@types/triple-beam": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", + "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==" }, - "node_modules/@tufjs/models": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz", - "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==", + "node_modules/@types/yargs": { + "version": "17.0.32", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", + "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", "dev": true, "dependencies": { - "@tufjs/canonical-json": "2.0.0", - "minimatch": "^9.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "@types/yargs-parser": "*" } }, - "node_modules/@tufjs/models/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true }, - "node_modules/@tufjs/models/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", + "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/type-utils": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@tybys/wasm-util": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", - "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", + "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "tslib": "^2.4.0" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@tybys/wasm-util/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, - "node_modules/@typechain/ethers-v5": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/@typechain/ethers-v5/-/ethers-v5-10.2.1.tgz", - "integrity": "sha512-n3tQmCZjRE6IU4h6lqUGiQ1j866n5MTCBJreNEHHVWXa2u9GJTaeYyU1/k+1qLutkyw+sS6VAN+AbeiTqsxd/A==", + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { - "lodash": "^4.17.15", - "ts-essentials": "^7.0.1" + "lru-cache": "^6.0.0" }, - "peerDependencies": { - "@ethersproject/abi": "^5.0.0", - "@ethersproject/providers": "^5.0.0", - "ethers": "^5.1.3", - "typechain": "^8.1.1", - "typescript": ">=4.3.0" - } + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } }, - "node_modules/@typechain/hardhat": { - "version": "6.1.6", - "resolved": "https://registry.npmjs.org/@typechain/hardhat/-/hardhat-6.1.6.tgz", - "integrity": "sha512-BiVnegSs+ZHVymyidtK472syodx1sXYlYJJixZfRstHVGYTi8V1O7QG4nsjyb0PC/LORcq7sfBUcHto1y6UgJA==", + "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", "dev": true, "dependencies": { - "fs-extra": "^9.1.0" + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@ethersproject/abi": "^5.4.7", - "@ethersproject/providers": "^5.4.7", - "@typechain/ethers-v5": "^10.2.1", - "ethers": "^5.4.7", - "hardhat": "^2.9.9", - "typechain": "^8.1.1" + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@typechain/hardhat/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dev": true, "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "node_modules/@typescript-eslint/type-utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", + "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", "dev": true, "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", "dev": true, - "dependencies": { - "@babel/types": "^7.0.0" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", "dev": true, "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@types/babel__traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", - "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "@babel/types": "^7.20.7" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@types/bn.js": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.5.tgz", - "integrity": "sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==", + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/cacheable-request": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", - "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", - "devOptional": true, - "dependencies": { - "@types/http-cache-semantics": "*", - "@types/keyv": "^3.1.4", - "@types/node": "*", - "@types/responselike": "^1.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@types/chai": { - "version": "4.3.14", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.14.tgz", - "integrity": "sha512-Wj71sXE4Q4AkGdG9Tvq1u/fquNz9EdG4LIJMwVVII7ashjD/8cf8fyIfJAjRr6YcsXnSE8cOGQPq1gqeR8z+3w==", + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/@types/concat-stream": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz", - "integrity": "sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==", + "node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", "dev": true, "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", - "dependencies": { - "@types/ms": "*" + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@types/form-data": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz", - "integrity": "sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw==", + "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "@types/node": "*" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@types/fs-extra": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-11.0.4.tgz", - "integrity": "sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==", + "node_modules/@typescript-eslint/utils/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { - "@types/jsonfile": "*", - "@types/node": "*" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@types/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", + "node_modules/@typescript-eslint/utils/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", "dev": true, "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@types/graceful-fs": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", - "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, - "dependencies": { - "@types/node": "*" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", - "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", - "devOptional": true + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", - "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "node_modules/@updated-axelar-network/axelar-gmp-sdk-solidity": { + "name": "@axelar-network/axelar-gmp-sdk-solidity", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/@axelar-network/axelar-gmp-sdk-solidity/-/axelar-gmp-sdk-solidity-6.0.4.tgz", + "integrity": "sha512-o8pv+krIAlEwzid0Ac8qwykDsavc+1DRPvyFQ3V0R0zTQFtYLJIIXXXt7FRb8b+LJDAuX+E0bB3N2X+hlcxk/g==", + "dev": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", "dev": true }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", - "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "node_modules/@yarnpkg/parsers": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.2.tgz", + "integrity": "sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==", "dev": true, "dependencies": { - "@types/istanbul-lib-coverage": "*" + "js-yaml": "^3.10.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=18.12.0" } }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", - "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "node_modules/@yarnpkg/parsers/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "dependencies": { - "@types/istanbul-lib-report": "*" + "sprintf-js": "~1.0.2" } }, - "node_modules/@types/jest": { - "version": "29.5.12", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", - "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", + "node_modules/@yarnpkg/parsers/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@yarnpkg/parsers/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "devOptional": true + "node_modules/@yarnpkg/parsers/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "node_modules/@yarnpkg/parsers/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true }, - "node_modules/@types/jsonfile": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/@types/jsonfile/-/jsonfile-6.1.4.tgz", - "integrity": "sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==", + "node_modules/@zkochan/js-yaml": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz", + "integrity": "sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==", "dev": true, "dependencies": { - "@types/node": "*" + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@types/keccak": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/keccak/-/keccak-3.0.4.tgz", - "integrity": "sha512-hdnkmbie7tE0yXnQQvlIOqCyjEsoXDVEZ3ACqO+F305XgUOW4Z9ElWdogCXXRAW/khnZ7GxM0t/BGB5bORKt/g==", + "node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", "dev": true, - "dependencies": { - "@types/node": "*" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@types/keyv": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", - "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", - "devOptional": true, + "node_modules/abstract-level": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/abstract-level/-/abstract-level-1.0.4.tgz", + "integrity": "sha512-eUP/6pbXBkMbXFdx4IH2fVgvB7M0JvR7/lIL33zcs0IBcwjdzSSl31TOJsaCzmKSSDF9h8QYSOJux4Nd4YJqFg==", + "dev": true, "dependencies": { - "@types/node": "*" + "buffer": "^6.0.3", + "catering": "^2.1.0", + "is-buffer": "^2.0.5", + "level-supports": "^4.0.0", + "level-transcoder": "^1.0.1", + "module-error": "^1.0.1", + "queue-microtask": "^1.2.3" + }, + "engines": { + "node": ">=12" } }, - "node_modules/@types/lodash": { - "version": "4.17.0", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.0.tgz", - "integrity": "sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==", - "dev": true + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, - "node_modules/@types/long": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", - "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } }, - "node_modules/@types/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==", - "dev": true + "node_modules/acorn-walk": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } }, - "node_modules/@types/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", + "node_modules/add-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", + "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==", "dev": true }, - "node_modules/@types/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", - "dev": true + "node_modules/adm-zip": { + "version": "0.4.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", + "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", + "dev": true, + "engines": { + "node": ">=0.3.0" + } }, - "node_modules/@types/mocha": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz", - "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==", - "dev": true + "node_modules/aes-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", + "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==" }, - "node_modules/@types/ms": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", - "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==" - }, - "node_modules/@types/node": { - "version": "20.11.30", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.30.tgz", - "integrity": "sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==", - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/@types/node-fetch": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.11.tgz", - "integrity": "sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==", + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, "dependencies": { - "@types/node": "*", - "form-data": "^4.0.0" + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" } }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", - "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "dev": true - }, - "node_modules/@types/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew==", + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dev": true, "dependencies": { - "@types/node": "*" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@types/prettier": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", - "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", - "dev": true - }, - "node_modules/@types/qs": { - "version": "6.9.14", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.14.tgz", - "integrity": "sha512-5khscbd3SwWMhFqylJBLQ0zIu7c1K6Vz0uBIt915BI3zV0q1nfjRQD3RqSBcPaO6PHEF4ov/t9y89fSiyThlPA==", - "dev": true - }, - "node_modules/@types/readable-stream": { - "version": "2.3.15", - "resolved": "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-2.3.15.tgz", - "integrity": "sha512-oM5JSKQCcICF1wvGgmecmHldZ48OZamtMxcGGVICOJA8o8cahXC1zEVAif8iwoc5j8etxFaRFnf095+CDsuoFQ==", + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "dependencies": { - "@types/node": "*", - "safe-buffer": "~5.1.1" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@types/responselike": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", - "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", - "devOptional": true, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "optional": true, "dependencies": { - "@types/node": "*" + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } } }, - "node_modules/@types/secp256k1": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.6.tgz", - "integrity": "sha512-hHxJU6PAEUn0TP4S/ZOzuTUvJWuZ6eIKeNKb5RBpODvSl6hp1Wrw4s7ATY50rklRCScUDpHzVA/DQdSjJ3UoYQ==", - "dev": true, + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "optional": true, "dependencies": { - "@types/node": "*" + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", - "dev": true + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "optional": true }, - "node_modules/@types/sinon": { - "version": "17.0.3", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz", - "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==", - "dependencies": { - "@types/sinonjs__fake-timers": "*" + "node_modules/amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.4.2" } }, - "node_modules/@types/sinonjs__fake-timers": { - "version": "8.1.5", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", - "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==" - }, - "node_modules/@types/stack-utils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", - "dev": true - }, - "node_modules/@types/triple-beam": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", - "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==" - }, - "node_modules/@types/yargs": { - "version": "17.0.32", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", - "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", "dev": true, "dependencies": { - "@types/yargs-parser": "*" + "string-width": "^4.1.0" } }, - "node_modules/@types/yargs-parser": { - "version": "21.0.3", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", - "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", - "dev": true + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", - "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, "dependencies": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/type-utils": "5.62.0", - "@typescript-eslint/utils": "5.62.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "type-fest": "^0.21.3" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/antlr4": { + "version": "4.13.1", + "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.13.1.tgz", + "integrity": "sha512-kiXTspaRYvnIArgE97z5YVVf/cDVQABr3abFRR6mE7yesLMkgu4ujuyV/sgxafQ8wgve0DJQUJ38Z8tkgA2izA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, "engines": { - "node": ">=10" + "node": ">=16" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/antlr4ts": { + "version": "0.5.0-alpha.4", + "resolved": "https://registry.npmjs.org/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz", + "integrity": "sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==", "dev": true }, - "node_modules/@typescript-eslint/parser": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", - "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "debug": "^4.3.4" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/aptos": { + "version": "1.3.16", + "resolved": "https://registry.npmjs.org/aptos/-/aptos-1.3.16.tgz", + "integrity": "sha512-LxI4XctQ5VeL+HokjwuGPwsb1fcydLIn4agFXyhn7hSYosTLNRxQ3UIixyP4Fmv6qPBjQVu8hELVSlThQk/EjA==", + "dependencies": { + "@noble/hashes": "1.1.3", + "@scure/bip39": "1.1.0", + "axios": "0.27.2", + "form-data": "4.0.0", + "tweetnacl": "1.0.3" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true + "engines": { + "node": ">=11.0.0" + } + }, + "node_modules/aptos/node_modules/@noble/hashes": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.1.3.tgz", + "integrity": "sha512-CE0FCR57H2acVI5UOzIGSSIYxZ6v/HOhDR0Ro9VLyhnzLwx0o8W1mmgaqlEUx4049qJDlIBRztv5k+MM8vbO3A==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, + "node_modules/aptos/node_modules/@scure/bip39": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.0.tgz", + "integrity": "sha512-pwrPOS16VeTKg98dYXQyIjJEcWfz7/1YJIwxUEPFfQPtc86Ym/1sVgQ2RLoD43AazMk2l/unK4ITySSpW2+82w==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" } + ], + "dependencies": { + "@noble/hashes": "~1.1.1", + "@scure/base": "~1.1.0" } }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", - "dev": true, + "node_modules/aptos/node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/array-back": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz", + "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==", + "dev": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=6" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", - "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.62.0", - "@typescript-eslint/utils": "5.62.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "node_modules/array-differ": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", + "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", "dev": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=8" } }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "node_modules/array-ify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", + "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", + "dev": true + }, + "node_modules/array-includes": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "is-string": "^1.0.7" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "node_modules/array.prototype.findlastindex": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/utils/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=0.10.0" } }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", "dev": true }, - "node_modules/@updated-axelar-network/axelar-gmp-sdk-solidity": { - "name": "@axelar-network/axelar-gmp-sdk-solidity", - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/@axelar-network/axelar-gmp-sdk-solidity/-/axelar-gmp-sdk-solidity-6.0.4.tgz", - "integrity": "sha512-o8pv+krIAlEwzid0Ac8qwykDsavc+1DRPvyFQ3V0R0zTQFtYLJIIXXXt7FRb8b+LJDAuX+E0bB3N2X+hlcxk/g==", + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", "dev": true, "engines": { - "node": ">=18" + "node": "*" } }, - "node_modules/@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "node_modules/ast-parents": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/ast-parents/-/ast-parents-0.0.1.tgz", + "integrity": "sha512-XHusKxKz3zoYk1ic8Un640joHbFMhbqneyoZfoKnEGtf2ey9Uh/IdpcQplODdO/kENaMIWsD0nJm4+wX3UNLHA==", "dev": true }, - "node_modules/@yarnpkg/parsers": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.2.tgz", - "integrity": "sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==", - "dev": true, - "dependencies": { - "js-yaml": "^3.10.0", - "tslib": "^2.4.0" - }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "engines": { - "node": ">=18.12.0" + "node": ">=8" } }, - "node_modules/@yarnpkg/parsers/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } + "node_modules/async": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", + "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" }, - "node_modules/@yarnpkg/parsers/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, "engines": { - "node": ">=4" + "node": ">= 4.0.0" } }, - "node_modules/@yarnpkg/parsers/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "possible-typed-array-names": "^1.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@yarnpkg/parsers/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/@yarnpkg/parsers/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, - "node_modules/@zkochan/js-yaml": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz", - "integrity": "sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==", - "dev": true, + "node_modules/axios": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", + "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "node_modules/abbrev": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", - "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "dev": true, + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" } }, - "node_modules/abortcontroller-polyfill": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz", - "integrity": "sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ==", - "dev": true - }, - "node_modules/abstract-level": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/abstract-level/-/abstract-level-1.0.4.tgz", - "integrity": "sha512-eUP/6pbXBkMbXFdx4IH2fVgvB7M0JvR7/lIL33zcs0IBcwjdzSSl31TOJsaCzmKSSDF9h8QYSOJux4Nd4YJqFg==", + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "buffer": "^6.0.3", - "catering": "^2.1.0", - "is-buffer": "^2.0.5", - "level-supports": "^4.0.0", - "level-transcoder": "^1.0.1", - "module-error": "^1.0.1", - "queue-microtask": "^1.2.3" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=12" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">= 0.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "bin": { - "acorn": "bin/acorn" + "dependencies": { + "color-name": "~1.1.4" }, "engines": { - "node": ">=0.4.0" + "node": ">=7.0.0" } }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "node_modules/babel-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=0.4.0" + "node": ">=8" } }, - "node_modules/add-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", - "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==", - "dev": true - }, - "node_modules/address": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", - "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=8" } }, - "node_modules/adm-zip": { - "version": "0.4.16", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", - "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, "engines": { - "node": ">=0.3.0" + "node": ">=8" } }, - "node_modules/aes-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", - "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==" - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, "dependencies": { - "debug": "4" + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" }, "engines": { - "node": ">= 6.0.0" + "node": ">=8" } }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", "dev": true, "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", "dev": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "optional": true, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, "dependencies": { - "ajv": "^8.0.0" + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" }, - "peerDependencies": { - "ajv": "^8.0.0" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "optional": true, + "node_modules/backslash": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/backslash/-/backslash-0.2.0.tgz", + "integrity": "sha512-Avs+8FUZ1HF/VFP4YWwHQZSGzRPm37ukU1JQYQWijuHhtXdOuAzcZ8PcAzfIw898a8PyBzdn+RtnKA6MzW0X2A==" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "devOptional": true + }, + "node_modules/base-x": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", + "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "devOptional": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "safe-buffer": "^5.0.1" } }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "optional": true + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==", - "dev": true, + "node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", "optional": true, "engines": { - "node": ">=0.4.2" + "node": ">=6.0.0" } }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "node_modules/bech32": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", + "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" + }, + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "dev": true + }, + "node_modules/bigint-crypto-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/bigint-crypto-utils/-/bigint-crypto-utils-3.3.0.tgz", + "integrity": "sha512-jOTSb+drvEDxEq6OuUybOAv/xxoh3cuYRUIPyu8sSHQNKM303UQ2R1DAo45o1AkcIXw6fzbaFI1+xGGdaXs2lg==", "dev": true, - "dependencies": { - "string-width": "^4.1.0" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, + "node_modules/bignumber.js": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz", + "integrity": "sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==", "engines": { - "node": ">=6" + "node": "*" } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/bin-links": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-4.0.4.tgz", + "integrity": "sha512-cMtq4W5ZsEwcutJrVId+a/tjt8GSbS+h0oNkdl6+6rBuEv8Ot33Bevj5KPm40t309zuhVic8NjpuL42QCiJWWA==", "dev": true, "dependencies": { - "type-fest": "^0.21.3" + "cmd-shim": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "read-cmd-shim": "^4.0.0", + "write-file-atomic": "^5.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/bin-links/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, "engines": { - "node": ">=8" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/bin-links/node_modules/write-file-atomic": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/antlr4": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.13.1.tgz", - "integrity": "sha512-kiXTspaRYvnIArgE97z5YVVf/cDVQABr3abFRR6mE7yesLMkgu4ujuyV/sgxafQ8wgve0DJQUJ38Z8tkgA2izA==", + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "engines": { - "node": ">=16" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/antlr4ts": { - "version": "0.5.0-alpha.4", - "resolved": "https://registry.npmjs.org/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz", - "integrity": "sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==", - "dev": true + "node_modules/bintrees": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bintrees/-/bintrees-1.0.2.tgz", + "integrity": "sha512-VOMgTMwjAaUG580SXn3LacVgjurrbMme7ZZNYGSSV7mmtY6QQRh0Eg3pwIcntQ77DErK1L0NxkbetjcoXzVwKw==" }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, + "node_modules/bip39": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/bip39/-/bip39-3.0.2.tgz", + "integrity": "sha512-J4E1r2N0tUylTKt07ibXvhpT2c5pyAFgvuA5q1H9uDy6dEGpjV8jmymh3MTYJDLCNbIVClSB9FbND49I6N24MQ==", "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" + "@types/node": "11.11.6", + "create-hash": "^1.1.0", + "pbkdf2": "^3.0.9", + "randombytes": "^2.0.1" } }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true + "node_modules/bip39/node_modules/@types/node": { + "version": "11.11.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-11.11.6.tgz", + "integrity": "sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ==" }, - "node_modules/aptos": { - "version": "1.3.16", - "resolved": "https://registry.npmjs.org/aptos/-/aptos-1.3.16.tgz", - "integrity": "sha512-LxI4XctQ5VeL+HokjwuGPwsb1fcydLIn4agFXyhn7hSYosTLNRxQ3UIixyP4Fmv6qPBjQVu8hELVSlThQk/EjA==", + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, "dependencies": { - "@noble/hashes": "1.1.3", - "@scure/bip39": "1.1.0", - "axios": "0.27.2", - "form-data": "4.0.0", - "tweetnacl": "1.0.3" - }, - "engines": { - "node": ">=11.0.0" + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" } }, - "node_modules/aptos/node_modules/@noble/hashes": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.1.3.tgz", - "integrity": "sha512-CE0FCR57H2acVI5UOzIGSSIYxZ6v/HOhDR0Ro9VLyhnzLwx0o8W1mmgaqlEUx4049qJDlIBRztv5k+MM8vbO3A==", + "node_modules/bl/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, "funding": [ { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ] - }, - "node_modules/aptos/node_modules/@scure/bip39": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.0.tgz", - "integrity": "sha512-pwrPOS16VeTKg98dYXQyIjJEcWfz7/1YJIwxUEPFfQPtc86Ym/1sVgQ2RLoD43AazMk2l/unK4ITySSpW2+82w==", - "funding": [ + "type": "github", + "url": "https://github.com/sponsors/feross" + }, { - "type": "individual", - "url": "https://paulmillr.com/funding/" + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } ], "dependencies": { - "@noble/hashes": "~1.1.1", - "@scure/base": "~1.1.0" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "node_modules/aptos/node_modules/axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "node_modules/blake2b": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/blake2b/-/blake2b-2.1.3.tgz", + "integrity": "sha512-pkDss4xFVbMb4270aCyGD3qLv92314Et+FsKzilCLxDz5DuZ2/1g3w4nmBbu6nKApPspnjG7JcwTjGZnduB1yg==", "dependencies": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" + "blake2b-wasm": "^1.1.0", + "nanoassert": "^1.0.0" } }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "node_modules/blake2b-wasm": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/blake2b-wasm/-/blake2b-wasm-1.1.7.tgz", + "integrity": "sha512-oFIHvXhlz/DUgF0kq5B1CqxIDjIJwh9iDeUUGQUcvgiGz7Wdw03McEO7CfLBy7QKGdsydcMCgO9jFNBAFCtFcA==", + "dependencies": { + "nanoassert": "^1.0.0" + } + }, + "node_modules/blakejs": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", + "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==", "dev": true }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" }, - "node_modules/array-back": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz", - "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==", - "dev": true, - "engines": { - "node": ">=6" + "node_modules/borsh": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.5.0.tgz", + "integrity": "sha512-p9w/qGBeeFdUf2GPBPHdX5JQyez8K5VtoFN7PqSfmR+cVUMSmcwAKhP9n2aXoDSKbtS7xZlZt3MVnrJL7GdYhg==", + "optional": true, + "dependencies": { + "bn.js": "^5.2.0", + "bs58": "^4.0.0", + "text-encoding-utf-8": "^1.0.2" } }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", - "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/array-differ": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", - "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", + "node_modules/boxen/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "node_modules/array-ify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", - "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", - "dev": true - }, - "node_modules/array-includes": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", - "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", + "node_modules/boxen/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "is-string": "^1.0.7" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "node_modules/boxen/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", + "node_modules/boxen/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/boxen/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", - "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", + "node_modules/boxen/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "node_modules/boxen/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", - "dev": true, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "devOptional": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", - "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" + "fill-range": "^7.1.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/arrify": { + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "node_modules/browser-level": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "resolved": "https://registry.npmjs.org/browser-level/-/browser-level-1.0.1.tgz", + "integrity": "sha512-XECYKJ+Dbzw0lbydyQuJzwNXtOpbMSq737qxJN11sIRTErOMShvDpbzTlgju7orJKvx4epULolZAuJGLzCmWRQ==", "dev": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "abstract-level": "^1.0.2", + "catering": "^2.1.1", + "module-error": "^1.0.2", + "run-parallel-limit": "^1.1.0" } }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "node_modules/browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "dev": true }, - "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "dependencies": { - "safer-buffer": "~2.1.0" - } - }, - "node_modules/asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "dependencies": { - "bn.js": "^4.0.0", + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "safe-buffer": "^5.0.1" } }, - "node_modules/asn1.js/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - }, - "node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "node_modules/browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, "engines": { - "node": ">=0.8" + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", "dev": true, + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, "engines": { - "node": "*" + "node": ">= 6" } }, - "node_modules/ast-parents": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/ast-parents/-/ast-parents-0.0.1.tgz", - "integrity": "sha512-XHusKxKz3zoYk1ic8Un640joHbFMhbqneyoZfoKnEGtf2ey9Uh/IdpcQplODdO/kENaMIWsD0nJm4+wX3UNLHA==", - "dev": true - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "engines": { - "node": ">=8" + "node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "devOptional": true, + "dependencies": { + "base-x": "^3.0.2" } }, - "node_modules/async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" - }, - "node_modules/async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "node_modules/bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", "dev": true, - "engines": { - "node": ">= 4.0.0" + "dependencies": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" } }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, "dependencies": { - "possible-typed-array-names": "^1.0.0" + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "dev": true + }, + "node_modules/bufferutil": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.8.tgz", + "integrity": "sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw==", + "hasInstallScript": true, + "optional": true, + "peer": true, + "dependencies": { + "node-gyp-build": "^4.3.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6.14.2" } }, - "node_modules/aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "node_modules/byte-size": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-8.1.1.tgz", + "integrity": "sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg==", "dev": true, "engines": { - "node": "*" + "node": ">=12.17" } }, - "node_modules/aws4": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", - "dev": true - }, - "node_modules/axios": { - "version": "1.8.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", - "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", - "dependencies": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" } }, - "node_modules/babel-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", - "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "node_modules/cacache": { + "version": "18.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", + "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", "dev": true, "dependencies": { - "@jest/transform": "^29.7.0", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.6.3", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/babel-jest/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "balanced-match": "^1.0.0" } }, - "node_modules/babel-jest/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/cacache/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, - "engines": { - "node": ">=10" + "bin": { + "glob": "dist/esm/bin.mjs" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/babel-jest/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/cacache/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=7.0.0" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/babel-jest/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/babel-jest/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "optional": true, "engines": { - "node": ">=8" + "node": ">=10.6.0" } }, - "node_modules/babel-jest/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, + "node_modules/cacheable-request": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", + "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "optional": true, "dependencies": { - "has-flag": "^4.0.0" + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "optional": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" + "pump": "^3.0.0" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dev": true, "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/babel-plugin-jest-hoist": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", - "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=6" } }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" + "engines": { + "node": ">=10" }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/babel-preset-jest": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", - "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "node_modules/camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0" + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=8" }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/backslash": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/backslash/-/backslash-0.2.0.tgz", - "integrity": "sha512-Avs+8FUZ1HF/VFP4YWwHQZSGzRPm37ukU1JQYQWijuHhtXdOuAzcZ8PcAzfIw898a8PyBzdn+RtnKA6MzW0X2A==" - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "devOptional": true - }, - "node_modules/base-x": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", - "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", - "devOptional": true, - "dependencies": { - "safe-buffer": "^5.0.1" + "node_modules/camelcase-keys/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" } }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "node_modules/caniuse-lite": { + "version": "1.0.30001600", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001600.tgz", + "integrity": "sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ==", + "dev": true, "funding": [ { - "type": "github", - "url": "https://github.com/sponsors/feross" + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" }, { - "type": "consulting", - "url": "https://feross.org/support" + "type": "github", + "url": "https://github.com/sponsors/ai" } ] }, - "node_modules/base64url": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", - "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", - "optional": true, - "engines": { - "node": ">=6.0.0" - } + "node_modules/capability": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/capability/-/capability-0.2.5.tgz", + "integrity": "sha512-rsJZYVCgXd08sPqwmaIqjAd5SUTfonV0z/gDJ8D6cN8wQphky1kkAYEqQ+hmDxTw7UihvBfjUVUSY+DBEe44jg==", + "optional": true }, - "node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "node_modules/case": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/case/-/case-1.6.3.tgz", + "integrity": "sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==", "dev": true, - "dependencies": { - "tweetnacl": "^0.14.3" + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/bcrypt-pbkdf/node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "node_modules/bech32": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", - "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" - }, - "node_modules/before-after-hook": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", - "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "dev": true }, - "node_modules/bigint-crypto-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/bigint-crypto-utils/-/bigint-crypto-utils-3.3.0.tgz", - "integrity": "sha512-jOTSb+drvEDxEq6OuUybOAv/xxoh3cuYRUIPyu8sSHQNKM303UQ2R1DAo45o1AkcIXw6fzbaFI1+xGGdaXs2lg==", + "node_modules/catering": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz", + "integrity": "sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==", "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=6" } }, - "node_modules/bignumber.js": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz", - "integrity": "sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==", + "node_modules/chai": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", + "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", + "dev": true, + "dependencies": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.0.8" + }, "engines": { - "node": "*" + "node": ">=4" } }, - "node_modules/bin-links": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-4.0.4.tgz", - "integrity": "sha512-cMtq4W5ZsEwcutJrVId+a/tjt8GSbS+h0oNkdl6+6rBuEv8Ot33Bevj5KPm40t309zuhVic8NjpuL42QCiJWWA==", + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { - "cmd-shim": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "read-cmd-shim": "^4.0.0", - "write-file-atomic": "^5.0.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=4" } }, - "node_modules/bin-links/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true, "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=10" } }, - "node_modules/bin-links/node_modules/write-file-atomic": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^4.0.1" - }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "*" } }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "get-func-name": "^2.0.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "*" } }, - "node_modules/bintrees": { + "node_modules/child_process": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bintrees/-/bintrees-1.0.2.tgz", - "integrity": "sha512-VOMgTMwjAaUG580SXn3LacVgjurrbMme7ZZNYGSSV7mmtY6QQRh0Eg3pwIcntQ77DErK1L0NxkbetjcoXzVwKw==" + "resolved": "https://registry.npmjs.org/child_process/-/child_process-1.0.2.tgz", + "integrity": "sha512-Wmza/JzL0SiWz7kl6MhIKT5ceIlnFPJX+lwUGj7Clhy5MMldsSoJR0+uvRzOS5Kv45Mq7t1PoE8TsOA9bzvb6g==" }, - "node_modules/bip39": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/bip39/-/bip39-3.0.2.tgz", - "integrity": "sha512-J4E1r2N0tUylTKt07ibXvhpT2c5pyAFgvuA5q1H9uDy6dEGpjV8jmymh3MTYJDLCNbIVClSB9FbND49I6N24MQ==", + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, "dependencies": { - "@types/node": "11.11.6", - "create-hash": "^1.1.0", - "pbkdf2": "^3.0.9", - "randombytes": "^2.0.1" - } - }, - "node_modules/bip39/node_modules/@types/node": { - "version": "11.11.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-11.11.6.tgz", - "integrity": "sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ==" - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/bl/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/blake2b": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/blake2b/-/blake2b-2.1.3.tgz", - "integrity": "sha512-pkDss4xFVbMb4270aCyGD3qLv92314Et+FsKzilCLxDz5DuZ2/1g3w4nmBbu6nKApPspnjG7JcwTjGZnduB1yg==", "dependencies": { - "blake2b-wasm": "^1.1.0", - "nanoassert": "^1.0.0" + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/blake2b-wasm": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/blake2b-wasm/-/blake2b-wasm-1.1.7.tgz", - "integrity": "sha512-oFIHvXhlz/DUgF0kq5B1CqxIDjIJwh9iDeUUGQUcvgiGz7Wdw03McEO7CfLBy7QKGdsydcMCgO9jFNBAFCtFcA==", - "dependencies": { - "nanoassert": "^1.0.0" + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "devOptional": true, + "engines": { + "node": ">=10" } }, - "node_modules/blakejs": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", - "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==", - "dev": true - }, - "node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", "dev": true }, - "node_modules/bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" - }, - "node_modules/body-parser": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", - "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", - "dev": true, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.13.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true }, - "node_modules/body-parser/node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "node_modules/classic-level": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/classic-level/-/classic-level-1.4.1.tgz", + "integrity": "sha512-qGx/KJl3bvtOHrGau2WklEZuXhS3zme+jf+fsu6Ej7W7IP/C49v7KNlWIsT1jZu0YnfzSIYDGcEWpCa1wKGWXQ==", "dev": true, + "hasInstallScript": true, "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "abstract-level": "^1.0.2", + "catering": "^2.1.0", + "module-error": "^1.0.1", + "napi-macros": "^2.2.2", + "node-gyp-build": "^4.3.0" }, "engines": { - "node": ">= 0.8" + "node": ">=12" } }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/body-parser/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "dev": true, "engines": { - "node": ">= 0.8" - } - }, - "node_modules/borsh": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.5.0.tgz", - "integrity": "sha512-p9w/qGBeeFdUf2GPBPHdX5JQyez8K5VtoFN7PqSfmR+cVUMSmcwAKhP9n2aXoDSKbtS7xZlZt3MVnrJL7GdYhg==", - "optional": true, - "dependencies": { - "bn.js": "^5.2.0", - "bs58": "^4.0.0", - "text-encoding-utf-8": "^1.0.2" + "node": ">=6" } }, - "node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", "dev": true, - "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "restore-cursor": "^3.1.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/boxen/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/cli-spinners": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", + "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/cli-table3": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.5.1.tgz", + "integrity": "sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "object-assign": "^4.1.0", + "string-width": "^2.1.1" }, "engines": { - "node": ">=7.0.0" + "node": ">=6" + }, + "optionalDependencies": { + "colors": "^1.1.2" } }, - "node_modules/boxen/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/boxen/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/cli-table3/node_modules/ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/boxen/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/cli-table3/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/boxen/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/cli-table3/node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, "engines": { - "node": ">=10" + "node": ">=4" + } + }, + "node_modules/cli-table3/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=4" } }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "devOptional": true, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", "dev": true, "dependencies": { - "fill-range": "^7.1.1" + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "optional": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/browser-level": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browser-level/-/browser-level-1.0.1.tgz", - "integrity": "sha512-XECYKJ+Dbzw0lbydyQuJzwNXtOpbMSq737qxJN11sIRTErOMShvDpbzTlgju7orJKvx4epULolZAuJGLzCmWRQ==", + "node_modules/cmd-shim": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.3.tgz", + "integrity": "sha512-FMabTRlc5t5zjdenF6mS0MBeFZm0XqHqeOkcskKFb/LYCcRQ5fVgLOHVc4Lq9CqABd9zhjwPjMBCJvMCziSVtA==", "dev": true, - "dependencies": { - "abstract-level": "^1.0.2", - "catering": "^2.1.1", - "module-error": "^1.0.2", - "run-parallel-limit": "^1.1.0" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", "dev": true }, - "node_modules/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, + "node_modules/color": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "color-convert": "^1.9.3", + "color-string": "^1.6.0" } }, - "node_modules/browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dependencies": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" + "color-name": "1.1.3" } }, - "node_modules/browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", "dependencies": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" } }, - "node_modules/browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/colorspace": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", + "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", "dependencies": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" + "color": "^3.1.3", + "text-hex": "1.0.x" } }, - "node_modules/browserify-sign": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz", - "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==", + "node_modules/columnify": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz", + "integrity": "sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==", "dev": true, "dependencies": { - "bn.js": "^5.2.1", - "browserify-rsa": "^4.1.0", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.5", - "hash-base": "~3.0", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.7", - "readable-stream": "^2.3.8", - "safe-buffer": "^5.2.1" + "strip-ansi": "^6.0.1", + "wcwidth": "^1.0.0" }, "engines": { - "node": ">= 0.12" + "node": ">=8.0.0" } }, - "node_modules/browserify-sign/node_modules/elliptic": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", - "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", - "dev": true, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "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" + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, - "node_modules/browserify-sign/node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "node_modules/command-exists": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", + "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", "dev": true }, - "node_modules/browserify-sign/node_modules/hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", + "node_modules/command-line-args": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz", + "integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==", "dev": true, "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "array-back": "^3.1.0", + "find-replace": "^3.0.0", + "lodash.camelcase": "^4.3.0", + "typical": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=4.0.0" } }, - "node_modules/browserify-sign/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/browserify-sign/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "node_modules/command-line-usage": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.3.tgz", + "integrity": "sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==", "dev": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "array-back": "^4.0.2", + "chalk": "^2.4.2", + "table-layout": "^1.0.2", + "typical": "^5.2.0" + }, + "engines": { + "node": ">=8.0.0" } }, - "node_modules/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "node_modules/command-line-usage/node_modules/array-back": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", + "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/command-line-usage/node_modules/typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/commander": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", + "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==", "dev": true }, - "node_modules/browserify-sign/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "node_modules/common-ancestor-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz", + "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==", + "dev": true + }, + "node_modules/compare-func": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", + "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "dependencies": { + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" + } }, - "node_modules/browserify-sign/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "devOptional": true + }, + "node_modules/concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", "dev": true, + "engines": [ + "node >= 6.0" + ], "dependencies": { - "safe-buffer": "~5.1.0" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" } }, - "node_modules/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", "dev": true }, - "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "node_modules/conventional-changelog-angular": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-7.0.0.tgz", + "integrity": "sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - }, - "bin": { - "browserslist": "cli.js" + "compare-func": "^2.0.0" }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "node": ">=16" } }, - "node_modules/bs-logger": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "node_modules/conventional-changelog-core": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-5.0.1.tgz", + "integrity": "sha512-Rvi5pH+LvgsqGwZPZ3Cq/tz4ty7mjijhr3qR4m9IBXNbxGGYgTVVO+duXzz9aArmHxFtwZ+LRkrNIMDQzgoY4A==", "dev": true, "dependencies": { - "fast-json-stable-stringify": "2.x" + "add-stream": "^1.0.0", + "conventional-changelog-writer": "^6.0.0", + "conventional-commits-parser": "^4.0.0", + "dateformat": "^3.0.3", + "get-pkg-repo": "^4.2.1", + "git-raw-commits": "^3.0.0", + "git-remote-origin-url": "^2.0.0", + "git-semver-tags": "^5.0.0", + "normalize-package-data": "^3.0.3", + "read-pkg": "^3.0.0", + "read-pkg-up": "^3.0.0" }, "engines": { - "node": ">= 6" + "node": ">=14" } }, - "node_modules/bs58": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", - "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", - "devOptional": true, + "node_modules/conventional-changelog-core/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, "dependencies": { - "base-x": "^3.0.2" + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "node_modules/conventional-changelog-core/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "node_modules/conventional-changelog-core/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "dev": true, "dependencies": { - "node-int64": "^0.4.0" + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" } }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "node_modules/conventional-changelog-core/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "node_modules/conventional-changelog-core/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/buffer-to-arraybuffer": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz", - "integrity": "sha512-3dthu5CYiVB1DEJp61FtApNnNndTckcqe4pFcLdvHtrpG+kcyekCJKg4MRiDcFW7A6AODnXB9U4dwQiCW5kzJQ==", - "dev": true + "node_modules/conventional-changelog-preset-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-3.0.0.tgz", + "integrity": "sha512-qy9XbdSLmVnwnvzEisjxdDiLA4OmV3o8db+Zdg4WiFw14fP3B6XNz98X0swPPpkTd/pc1K7+adKgEDM1JCUMiA==", + "dev": true, + "engines": { + "node": ">=14" + } }, - "node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", - "dev": true - }, - "node_modules/bufferutil": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.8.tgz", - "integrity": "sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw==", - "devOptional": true, - "hasInstallScript": true, + "node_modules/conventional-changelog-writer": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz", + "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==", + "dev": true, "dependencies": { - "node-gyp-build": "^4.3.0" + "conventional-commits-filter": "^3.0.0", + "dateformat": "^3.0.3", + "handlebars": "^4.7.7", + "json-stringify-safe": "^5.0.1", + "meow": "^8.1.2", + "semver": "^7.0.0", + "split": "^1.0.1" + }, + "bin": { + "conventional-changelog-writer": "cli.js" }, "engines": { - "node": ">=6.14.2" - } - }, - "node_modules/byte-size": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-8.1.1.tgz", - "integrity": "sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg==", - "dev": true, - "engines": { - "node": ">=12.17" + "node": ">=14" } }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "node_modules/conventional-changelog-writer/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">= 0.8" + "node": ">=10" } }, - "node_modules/cacache": { - "version": "18.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", - "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", + "node_modules/conventional-commits-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz", + "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==", "dev": true, "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^2.0.1", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=14" } }, - "node_modules/cacache/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "node_modules/conventional-commits-parser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz", + "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0" + "is-text-path": "^1.0.1", + "JSONStream": "^1.3.5", + "meow": "^8.1.2", + "split2": "^3.2.2" + }, + "bin": { + "conventional-commits-parser": "cli.js" + }, + "engines": { + "node": ">=14" } }, - "node_modules/cacache/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "node_modules/conventional-recommended-bump": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-7.0.1.tgz", + "integrity": "sha512-Ft79FF4SlOFvX4PkwFDRnaNiIVX7YbmqGU0RwccUaiGvgp3S0a8ipR2/Qxk31vclDNM+GSdJOVs2KrsUCjblVA==", "dev": true, "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" + "concat-stream": "^2.0.0", + "conventional-changelog-preset-loader": "^3.0.0", + "conventional-commits-filter": "^3.0.0", + "conventional-commits-parser": "^4.0.0", + "git-raw-commits": "^3.0.0", + "git-semver-tags": "^5.0.0", + "meow": "^8.1.2" }, "bin": { - "glob": "dist/esm/bin.mjs" + "conventional-recommended-bump": "cli.js" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "engines": { + "node": ">=14" } }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "dev": true }, - "node_modules/cacache/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "node_modules/cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + }, + "node_modules/cosmiconfig": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", + "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=14" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/cacheable-lookup": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", - "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", - "devOptional": true, + "node_modules/cosmjs-types": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/cosmjs-types/-/cosmjs-types-0.8.0.tgz", + "integrity": "sha512-Q2Mj95Fl0PYMWEhA2LuGEIhipF7mQwd9gTQ85DdP9jjjopeoGaDxvmPa5nakNzsq7FnO1DMTatXTAx6bxMH7Lg==", + "dependencies": { + "long": "^4.0.0", + "protobufjs": "~6.11.2" + } + }, + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "bin": { + "crc32": "bin/crc32.njs" + }, "engines": { - "node": ">=10.6.0" + "node": ">=0.8" } }, - "node_modules/cacheable-request": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", - "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", - "devOptional": true, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^4.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^6.0.1", - "responselike": "^2.0.0" + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/cacheable-request/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "devOptional": true, + "node_modules/create-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "pump": "^3.0.0" + "color-convert": "^2.0.1" }, "engines": { "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "node_modules/create-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "node_modules/create-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=7.0.0" } }, - "node_modules/camelcase-keys/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/create-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/create-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001600", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001600.tgz", - "integrity": "sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/capability": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/capability/-/capability-0.2.5.tgz", - "integrity": "sha512-rsJZYVCgXd08sPqwmaIqjAd5SUTfonV0z/gDJ8D6cN8wQphky1kkAYEqQ+hmDxTw7UihvBfjUVUSY+DBEe44jg==", - "optional": true - }, - "node_modules/case": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/case/-/case-1.6.3.tgz", - "integrity": "sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==", + "node_modules/create-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" } }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", "dev": true }, - "node_modules/catering": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz", - "integrity": "sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/chai": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", - "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.0.8" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">= 8" } }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, "engines": { - "node": ">=4" + "node": "*" } }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "node_modules/charenc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", - "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", + "node_modules/dargs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", + "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", "dev": true, "engines": { - "node": "*" + "node": ">=8" } }, - "node_modules/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", "dev": true, "dependencies": { - "get-func-name": "^2.0.2" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": "*" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/child_process": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/child_process/-/child_process-1.0.2.tgz", - "integrity": "sha512-Wmza/JzL0SiWz7kl6MhIKT5ceIlnFPJX+lwUGj7Clhy5MMldsSoJR0+uvRzOS5Kv45Mq7t1PoE8TsOA9bzvb6g==" - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", "dev": true, "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">= 8.10.0" + "node": ">= 0.4" }, "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">= 6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "devOptional": true, + "node_modules/dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true, "engines": { - "node": ">=10" + "node": "*" } }, - "node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "node_modules/death": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/death/-/death-1.1.0.tgz", + "integrity": "sha512-vsV6S4KVHvTGxbEcij7hkWRv0It+sGGWVOM67dQde/o5Xjnr+KmLjxWJii2uEObIrt1CcM9w0Yaovx+iOlIL+w==", "dev": true }, - "node_modules/cids": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/cids/-/cids-0.7.5.tgz", - "integrity": "sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==", - "deprecated": "This module has been superseded by the multiformats module", - "dev": true, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dependencies": { - "buffer": "^5.5.0", - "class-is": "^1.1.0", - "multibase": "~0.6.0", - "multicodec": "^1.0.0", - "multihashes": "~0.4.15" + "ms": "^2.1.3" }, "engines": { - "node": ">=4.0.0", - "npm": ">=3.0.0" - } - }, - "node_modules/cids/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" } }, - "node_modules/cids/node_modules/multicodec": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-1.0.4.tgz", - "integrity": "sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==", - "deprecated": "This module has been superseded by the multiformats module", + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true, - "dependencies": { - "buffer": "^5.6.0", - "varint": "^5.0.0" - } - }, - "node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/cjs-module-lexer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", - "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", - "dev": true - }, - "node_modules/class-is": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/class-is/-/class-is-1.1.0.tgz", - "integrity": "sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==", - "dev": true - }, - "node_modules/classic-level": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/classic-level/-/classic-level-1.4.1.tgz", - "integrity": "sha512-qGx/KJl3bvtOHrGau2WklEZuXhS3zme+jf+fsu6Ej7W7IP/C49v7KNlWIsT1jZu0YnfzSIYDGcEWpCa1wKGWXQ==", + "node_modules/decamelize-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, - "hasInstallScript": true, "dependencies": { - "abstract-level": "^1.0.2", - "catering": "^2.1.0", - "module-error": "^1.0.1", - "napi-macros": "^2.2.2", - "node-gyp-build": "^4.3.0" + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" }, "engines": { - "node": ">=12" + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", "dev": true, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "optional": true, + "dependencies": { + "mimic-response": "^3.1.0" + }, "engines": { - "node": ">=6" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-cursor": { + "node_modules/decompress-response/node_modules/mimic-response": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "optional": true, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-spinners": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", - "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "node_modules/dedent": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", "dev": true, - "engines": { - "node": ">=6" + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } } }, - "node_modules/cli-table3": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.5.1.tgz", - "integrity": "sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==", + "node_modules/deep-eql": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", + "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", "dev": true, "dependencies": { - "object-assign": "^4.1.0", - "string-width": "^2.1.1" + "type-detect": "^4.0.0" }, "engines": { "node": ">=6" - }, - "optionalDependencies": { - "colors": "^1.1.2" } }, - "node_modules/cli-table3/node_modules/ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true, "engines": { - "node": ">=4" + "node": ">=4.0.0" } }, - "node_modules/cli-table3/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/cli-table3/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "clone": "^1.0.2" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "optional": true, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/cli-table3/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dependencies": { - "ansi-regex": "^3.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", "dev": true, "engines": { - "node": ">= 10" + "node": ">=8" } }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=6" - } - }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "devOptional": true, - "dependencies": { - "mimic-response": "^1.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cmd-shim": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.3.tgz", - "integrity": "sha512-FMabTRlc5t5zjdenF6mS0MBeFZm0XqHqeOkcskKFb/LYCcRQ5fVgLOHVc4Lq9CqABd9zhjwPjMBCJvMCziSVtA==", - "dev": true, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=0.4.0" } }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "devOptional": true, "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" + "node": ">= 0.8" } }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", - "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", "dev": true }, - "node_modules/color": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", - "dependencies": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" + "node_modules/detect-indent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", + "integrity": "sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g==", + "dev": true, + "engines": { + "node": ">=4" } }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" } }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" + "node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "engines": { + "node": ">=0.3.1" } }, - "node_modules/colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", "dev": true, "engines": { - "node": ">=0.1.90" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/colorspace": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", - "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", + "node_modules/difflib": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/difflib/-/difflib-0.2.4.tgz", + "integrity": "sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==", + "dev": true, "dependencies": { - "color": "^3.1.3", - "text-hex": "1.0.x" + "heap": ">= 0.2.0" + }, + "engines": { + "node": "*" } }, - "node_modules/columnify": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz", - "integrity": "sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==", + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, "dependencies": { - "strip-ansi": "^6.0.1", - "wcwidth": "^1.0.0" + "path-type": "^4.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "node_modules/docker-compose": { + "version": "0.24.7", + "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.24.7.tgz", + "integrity": "sha512-CdHl9n0S4+bl4i6MaxDQHNjqB1FdvuDirrDTzPKmdiMpheQqCjgsny0GZ2VhvN7qHTY0833lRlKWZgrkn1i6cg==", "dependencies": { - "delayed-stream": "~1.0.0" + "yaml": "^2.2.2" }, "engines": { - "node": ">= 0.8" + "node": ">= 6.0.0" } }, - "node_modules/command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true - }, - "node_modules/command-line-args": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz", - "integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "dependencies": { - "array-back": "^3.1.0", - "find-replace": "^3.0.0", - "lodash.camelcase": "^4.3.0", - "typical": "^4.0.0" + "esutils": "^2.0.2" }, "engines": { - "node": ">=4.0.0" + "node": ">=6.0.0" } }, - "node_modules/command-line-usage": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.3.tgz", - "integrity": "sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==", + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", "dev": true, "dependencies": { - "array-back": "^4.0.2", - "chalk": "^2.4.2", - "table-layout": "^1.0.2", - "typical": "^5.2.0" + "is-obj": "^2.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/command-line-usage/node_modules/array-back": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", - "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", - "dev": true, + "node_modules/dotenv": { + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" } }, - "node_modules/command-line-usage/node_modules/typical": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", - "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "node_modules/dotenv-expand": { + "version": "11.0.7", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", + "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", "dev": true, + "dependencies": { + "dotenv": "^16.4.5" + }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" } }, - "node_modules/commander": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", - "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==", + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", "dev": true }, - "node_modules/common-ancestor-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz", - "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==", + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", "dev": true }, - "node_modules/compare-func": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", - "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", - "dev": true, + "node_modules/ed25519-hd-key": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/ed25519-hd-key/-/ed25519-hd-key-1.1.2.tgz", + "integrity": "sha512-/0y9y6N7vM6Kj5ASr9J9wcMVDTtygxSOvYX+PJiMD7VcxCx2G03V5bLRl8Dug9EgkLFsLhGqBtQWQRcElEeWTA==", "dependencies": { - "array-ify": "^1.0.0", - "dot-prop": "^5.1.0" + "bip39": "3.0.2", + "create-hmac": "1.1.7", + "tweetnacl": "1.0.3" } }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "devOptional": true - }, - "node_modules/concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "engines": [ - "node >= 6.0" - ], + "node_modules/ed2curve": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/ed2curve/-/ed2curve-0.3.0.tgz", + "integrity": "sha512-8w2fmmq3hv9rCrcI7g9hms2pMunQr1JINfcjwR9tAyZqhtyaMN991lF/ZfHfr5tzZQ8c7y7aBgZbjfbd0fjFwQ==", "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" + "tweetnacl": "1.x.x" } }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", "dev": true, "dependencies": { - "safe-buffer": "5.2.1" + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" }, "engines": { - "node": ">= 0.6" + "node": ">=0.10.0" } }, - "node_modules/content-disposition/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/electron-to-chromium": { + "version": "1.4.715", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.715.tgz", + "integrity": "sha512-XzWNH4ZSa9BwVUQSDorPWAUQ5WGuYz7zJUNpNif40zFCiCl20t8zgylmreNmn26h5kiyw2lg7RfTmeMBsDklqg==", + "dev": true }, - "node_modules/content-hash": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/content-hash/-/content-hash-2.5.2.tgz", - "integrity": "sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==", - "dev": true, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dependencies": { - "cids": "^0.7.1", - "multicodec": "^0.5.5", - "multihashes": "^0.4.15" + "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" } }, - "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", "dev": true, "engines": { - "node": ">= 0.6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "node_modules/conventional-changelog-angular": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-7.0.0.tgz", - "integrity": "sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==", - "dev": true, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/enabled": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, "dependencies": { - "compare-func": "^2.0.0" - }, - "engines": { - "node": ">=16" + "iconv-lite": "^0.6.2" } }, - "node_modules/conventional-changelog-core": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-5.0.1.tgz", - "integrity": "sha512-Rvi5pH+LvgsqGwZPZ3Cq/tz4ty7mjijhr3qR4m9IBXNbxGGYgTVVO+duXzz9aArmHxFtwZ+LRkrNIMDQzgoY4A==", - "dev": true, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, "dependencies": { - "add-stream": "^1.0.0", - "conventional-changelog-writer": "^6.0.0", - "conventional-commits-parser": "^4.0.0", - "dateformat": "^3.0.3", - "get-pkg-repo": "^4.2.1", - "git-raw-commits": "^3.0.0", - "git-remote-origin-url": "^2.0.0", - "git-semver-tags": "^5.0.0", - "normalize-package-data": "^3.0.3", - "read-pkg": "^3.0.0", - "read-pkg-up": "^3.0.0" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { - "node": ">=14" + "node": ">=0.10.0" } }, - "node_modules/conventional-changelog-core/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "devOptional": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" + "once": "^1.4.0" } }, - "node_modules/conventional-changelog-core/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/enquirer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", + "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=10" + "node": ">=8.6" } }, - "node_modules/conventional-changelog-core/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", "dev": true, - "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, "engines": { - "node": ">=10" + "node": ">=6" } }, - "node_modules/conventional-changelog-core/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "node_modules/envinfo": { + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", + "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", "dev": true, "bin": { - "semver": "bin/semver.js" + "envinfo": "dist/cli.js" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/conventional-changelog-core/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", "dev": true }, - "node_modules/conventional-changelog-preset-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-3.0.0.tgz", - "integrity": "sha512-qy9XbdSLmVnwnvzEisjxdDiLA4OmV3o8db+Zdg4WiFw14fP3B6XNz98X0swPPpkTd/pc1K7+adKgEDM1JCUMiA==", + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, - "engines": { - "node": ">=14" + "dependencies": { + "is-arrayish": "^0.2.1" } }, - "node_modules/conventional-changelog-writer": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz", - "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==", - "dev": true, + "node_modules/error-polyfill": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/error-polyfill/-/error-polyfill-0.1.3.tgz", + "integrity": "sha512-XHJk60ufE+TG/ydwp4lilOog549iiQF2OAPhkk9DdiYWMrltz5yhDz/xnKuenNwP7gy3dsibssO5QpVhkrSzzg==", + "optional": true, "dependencies": { - "conventional-commits-filter": "^3.0.0", - "dateformat": "^3.0.3", - "handlebars": "^4.7.7", - "json-stringify-safe": "^5.0.1", - "meow": "^8.1.2", - "semver": "^7.0.0", - "split": "^1.0.1" - }, - "bin": { - "conventional-changelog-writer": "cli.js" - }, - "engines": { - "node": ">=14" + "capability": "^0.2.5", + "o3": "^1.0.3", + "u3": "^0.1.1" } }, - "node_modules/conventional-changelog-writer/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "node_modules/es-abstract": { + "version": "1.23.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.2.tgz", + "integrity": "sha512-60s3Xv2T2p1ICykc7c+DNDPLDMm9t4QxCOUU0K9JxiLjM3C1zB9YVdN7tjxrFd4+AkZ8CdX1ovUga4P2+1e+/w==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.7", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.5", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/conventional-commits-filter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz", - "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==", - "dev": true, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", "dependencies": { - "lodash.ismatch": "^4.4.0", - "modify-values": "^1.0.1" + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">=14" + "node": ">= 0.4" } }, - "node_modules/conventional-commits-parser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz", - "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==", - "dev": true, - "dependencies": { - "is-text-path": "^1.0.1", - "JSONStream": "^1.3.5", - "meow": "^8.1.2", - "split2": "^3.2.2" - }, - "bin": { - "conventional-commits-parser": "cli.js" - }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "engines": { - "node": ">=14" + "node": ">= 0.4" } }, - "node_modules/conventional-recommended-bump": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-7.0.1.tgz", - "integrity": "sha512-Ft79FF4SlOFvX4PkwFDRnaNiIVX7YbmqGU0RwccUaiGvgp3S0a8ipR2/Qxk31vclDNM+GSdJOVs2KrsUCjblVA==", + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", "dev": true, "dependencies": { - "concat-stream": "^2.0.0", - "conventional-changelog-preset-loader": "^3.0.0", - "conventional-commits-filter": "^3.0.0", - "conventional-commits-parser": "^4.0.0", - "git-raw-commits": "^3.0.0", - "git-semver-tags": "^5.0.0", - "meow": "^8.1.2" - }, - "bin": { - "conventional-recommended-bump": "cli.js" + "es-errors": "^1.3.0" }, "engines": { - "node": ">=14" + "node": ">= 0.4" } }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" } }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "node_modules/cookiejar": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", - "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==", - "dev": true - }, - "node_modules/core-util-is": { + "node_modules/es-shim-unscopables": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true - }, - "node_modules/cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", "dev": true, "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" + "hasown": "^2.0.0" } }, - "node_modules/cosmiconfig": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", - "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "dependencies": { - "env-paths": "^2.2.1", - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { - "node": ">=14" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/d-fischer" - }, - "peerDependencies": { - "typescript": ">=4.9.5" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cosmjs-types": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/cosmjs-types/-/cosmjs-types-0.8.0.tgz", - "integrity": "sha512-Q2Mj95Fl0PYMWEhA2LuGEIhipF7mQwd9gTQ85DdP9jjjopeoGaDxvmPa5nakNzsq7FnO1DMTatXTAx6bxMH7Lg==", - "dependencies": { - "long": "^4.0.0", - "protobufjs": "~6.11.2" + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" } }, - "node_modules/crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", - "bin": { - "crc32": "bin/crc32.njs" - }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, "engines": { - "node": ">=0.8" + "node": ">=0.8.0" } }, - "node_modules/create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "node_modules/escodegen": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", + "integrity": "sha512-yhi5S+mNTOuRvyW4gWlg5W1byMaQGWWSYHXsuFZ7GBo7tpyOwi2EdzMP/QWxh9hwkD2m+wDVHJsxhRIj+v/b/A==", "dev": true, "dependencies": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" + "esprima": "^2.7.1", + "estraverse": "^1.9.1", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=0.12.0" + }, + "optionalDependencies": { + "source-map": "~0.2.0" } }, - "node_modules/create-ecdh/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - }, - "node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "node_modules/escodegen/node_modules/estraverse": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", + "integrity": "sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA==", + "dev": true, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "node_modules/escodegen/node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dev": true, "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/create-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", - "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "node_modules/escodegen/node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "dev": true, "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "prompts": "^2.0.1" - }, - "bin": { - "create-jest": "bin/create-jest.js" + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.8.0" } }, - "node_modules/create-jest/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/escodegen/node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", + "integrity": "sha512-CBdZ2oa/BHhS4xj5DlhjWNHcan57/5YuvfdLf17iVmIpd9KRm+DFLmC6nBNj+6Ua7Kt3TmOjDpQT1aTYOQtoUA==", "dev": true, + "optional": true, "dependencies": { - "color-convert": "^2.0.1" + "amdefine": ">=0.0.4" }, "engines": { - "node": ">=8" + "node": ">=0.8.0" + } + }, + "node_modules/escodegen/node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/create-jest/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/eslint": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://opencollective.com/eslint" } }, - "node_modules/create-jest/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/eslint-config-prettier": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", + "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "get-stdin": "^6.0.0" }, - "engines": { - "node": ">=7.0.0" + "bin": { + "eslint-config-prettier-check": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=3.14.1" } }, - "node_modules/create-jest/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "node_modules/eslint-config-richardpringle": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-richardpringle/-/eslint-config-richardpringle-2.0.0.tgz", + "integrity": "sha512-c2eaJF76KmvOz1KvQCu5nrHBM1H6qB9Z5aW+RYaw9yQsoELiZ09ms9F7NZdPV4Q15sYV8NEJje9rTwnrbUSX6w==", + "dev": true, + "dependencies": { + "eslint-config-prettier": "^6.10.1", + "eslint-config-standard": "^14.1.1", + "eslint-plugin-import": "^2.20.2", + "eslint-plugin-mocha": "^6.3.0", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^4.2.1", + "eslint-plugin-standard": "^4.0.1" + } }, - "node_modules/create-jest/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/eslint-config-standard": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-14.1.1.tgz", + "integrity": "sha512-Z9B+VR+JIXRxz21udPTL9HpFMyoMUEeX1G251EQ6e05WD9aPVtVBn09XUmZ259wCMlCDmYDSZG62Hhm+ZTJcUg==", "dev": true, - "engines": { - "node": ">=8" + "peerDependencies": { + "eslint": ">=6.2.2", + "eslint-plugin-import": ">=2.18.0", + "eslint-plugin-node": ">=9.1.0", + "eslint-plugin-promise": ">=4.2.1", + "eslint-plugin-standard": ">=4.0.0" } }, - "node_modules/create-jest/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "node_modules/cross-fetch": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.8.tgz", - "integrity": "sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==", + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { - "node-fetch": "^2.6.12" + "ms": "^2.1.1" } }, - "node_modules/cross-fetch/node_modules/node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "node_modules/eslint-module-utils": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", + "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", "dev": true, "dependencies": { - "whatwg-url": "^5.0.0" + "debug": "^3.2.7" }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" + "node": ">=4" }, "peerDependenciesMeta": { - "encoding": { + "eslint": { "optional": true } } }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" + "ms": "^2.1.1" } }, - "node_modules/crypt": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", - "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", + "node_modules/eslint-plugin-es": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dev": true, + "dependencies": { + "eslint-utils": "^2.0.0", + "regexpp": "^3.0.0" + }, "engines": { - "node": "*" - } - }, - "node_modules/crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, - "dependencies": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" + "node": ">=8.10.0" }, - "engines": { - "node": "*" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" + "funding": { + "url": "https://github.com/sponsors/mysticatea" }, - "engines": { - "node": ">=4" + "peerDependencies": { + "eslint": ">=4.19.1" } }, - "node_modules/d": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz", - "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==", + "node_modules/eslint-plugin-import": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", + "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", "dev": true, "dependencies": { - "es5-ext": "^0.10.64", - "type": "^2.7.2" + "array-includes": "^3.1.7", + "array.prototype.findlastindex": "^1.2.3", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.8.0", + "hasown": "^2.0.0", + "is-core-module": "^2.13.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.7", + "object.groupby": "^1.0.1", + "object.values": "^1.1.7", + "semver": "^6.3.1", + "tsconfig-paths": "^3.15.0" }, "engines": { - "node": ">=0.12" - } - }, - "node_modules/dargs": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", - "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, - "node_modules/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" + "ms": "^2.1.1" } }, - "node_modules/data-view-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", - "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "esutils": "^2.0.2" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/data-view-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", - "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "node_modules/eslint-plugin-mocha": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-6.3.0.tgz", + "integrity": "sha512-Cd2roo8caAyG21oKaaNTj7cqeYRWW1I2B5SfpKRp0Ip1gkfwoR1Ow0IGlPWnNjzywdF4n+kHL8/9vM6zCJUxdg==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "eslint-utils": "^2.0.0", + "ramda": "^0.27.0" }, "engines": { - "node": ">= 0.4" + "node": ">=8.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "eslint": ">= 4.0.0" } }, - "node_modules/data-view-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", - "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "node_modules/eslint-plugin-node": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dev": true, "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "eslint-plugin-es": "^3.0.0", + "eslint-utils": "^2.0.0", + "ignore": "^5.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.10.1", + "semver": "^6.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=8.10.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "eslint": ">=5.16.0" } }, - "node_modules/dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "node_modules/eslint-plugin-promise": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.3.1.tgz", + "integrity": "sha512-bY2sGqyptzFBDLh/GMbAxfdJC+b0f23ME63FOE4+Jao0oZ3E1LEwFtWJX/1pGMJLiTtrSSern2CRM/g+dfc0eQ==", "dev": true, "engines": { - "node": "*" + "node": ">=6" } }, - "node_modules/death": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/death/-/death-1.1.0.tgz", - "integrity": "sha512-vsV6S4KVHvTGxbEcij7hkWRv0It+sGGWVOM67dQde/o5Xjnr+KmLjxWJii2uEObIrt1CcM9w0Yaovx+iOlIL+w==", - "dev": true - }, - "node_modules/debug": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", - "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true + "node_modules/eslint-plugin-standard": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.1.0.tgz", + "integrity": "sha512-ZL7+QRixjTR6/528YNGyDotyffm5OQst/sGxKDwGb9Uqs4In5Egi4+jbobhqJoyoCM6/7v/1A5fhQ7ScMtDjaQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } + ], + "peerDependencies": { + "eslint": ">=5.0.0" } }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=8.0.0" } }, - "node_modules/decamelize-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", - "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" + "eslint-visitor-keys": "^1.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/mysticatea" } }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", - "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, "engines": { - "node": ">=0.10" + "node": ">=10" } }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "devOptional": true, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "mimic-response": "^3.1.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/decompress-response/node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "devOptional": true, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/dedent": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", - "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "peerDependencies": { - "babel-plugin-macros": "^3.1.0" + "dependencies": { + "color-name": "~1.1.4" }, - "peerDependenciesMeta": { - "babel-plugin-macros": { - "optional": true - } + "engines": { + "node": ">=7.0.0" } }, - "node_modules/deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { - "type-detect": "^4.0.0" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">=6" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { - "node": ">=4.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=4.0" } }, - "node_modules/defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { - "clone": "^1.0.2" + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/defer-to-connect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", - "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", - "devOptional": true, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">= 0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/eslint" } }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, "engines": { - "node": ">=0.4.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "devOptional": true, + "node_modules/esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "node_modules/deprecation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", - "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", - "dev": true - }, - "node_modules/des.js": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz", - "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==", + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" } }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">=4.0" } }, - "node_modules/detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, "engines": { - "node": ">=4" + "node": ">=4.0" } }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4.0" } }, - "node_modules/detect-port": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", - "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, - "dependencies": { - "address": "^1.0.1", - "debug": "4" - }, - "bin": { - "detect": "bin/detect-port.js", - "detect-port": "bin/detect-port.js" + "engines": { + "node": ">=4.0" } }, - "node_modules/diff": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", - "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, "engines": { - "node": ">=0.3.1" + "node": ">=0.10.0" } }, - "node_modules/diff-sequences": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", - "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "node_modules/eth-gas-reporter": { + "version": "0.2.27", + "resolved": "https://registry.npmjs.org/eth-gas-reporter/-/eth-gas-reporter-0.2.27.tgz", + "integrity": "sha512-femhvoAM7wL0GcI8ozTdxfuBtBFJ9qsyIAsmKVjlWAHUbdnnXHt+lKzz/kmldM5lA9jLuNHGwuIxorNpLbR1Zw==", "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "dependencies": { + "@solidity-parser/parser": "^0.14.0", + "axios": "^1.5.1", + "cli-table3": "^0.5.0", + "colors": "1.4.0", + "ethereum-cryptography": "^1.0.3", + "ethers": "^5.7.2", + "fs-readdir-recursive": "^1.1.0", + "lodash": "^4.17.14", + "markdown-table": "^1.1.3", + "mocha": "^10.2.0", + "req-cwd": "^2.0.0", + "sha1": "^1.1.1", + "sync-request": "^6.0.0" + }, + "peerDependencies": { + "@codechecks/client": "^0.1.0" + }, + "peerDependenciesMeta": { + "@codechecks/client": { + "optional": true + } } }, - "node_modules/diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "node_modules/ethereum-bloom-filters": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz", + "integrity": "sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==", "dev": true, "dependencies": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" + "js-sha3": "^0.8.0" + } + }, + "node_modules/ethereum-cryptography": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz", + "integrity": "sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==", + "dev": true, + "dependencies": { + "@noble/hashes": "1.2.0", + "@noble/secp256k1": "1.7.1", + "@scure/bip32": "1.1.5", + "@scure/bip39": "1.1.1" } }, - "node_modules/diffie-hellman/node_modules/bn.js": { + "node_modules/ethereumjs-abi": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/ethereumjs-abi/-/ethereumjs-abi-0.6.8.tgz", + "integrity": "sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.8", + "ethereumjs-util": "^6.0.0" + } + }, + "node_modules/ethereumjs-abi/node_modules/bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", "dev": true, "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/docker-compose": { - "version": "0.24.7", - "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.24.7.tgz", - "integrity": "sha512-CdHl9n0S4+bl4i6MaxDQHNjqB1FdvuDirrDTzPKmdiMpheQqCjgsny0GZ2VhvN7qHTY0833lRlKWZgrkn1i6cg==", - "dependencies": { - "yaml": "^2.2.2" - }, - "engines": { - "node": ">= 6.0.0" + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/ethereumjs-util/node_modules/@types/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", "dev": true, "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" + "@types/node": "*" } }, - "node_modules/dom-walk": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", + "node_modules/ethereumjs-util/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "node_modules/ethereumjs-util/node_modules/ethereum-cryptography": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", + "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", "dev": true, "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" + "@types/pbkdf2": "^3.0.0", + "@types/secp256k1": "^4.0.1", + "blakejs": "^1.1.0", + "browserify-aes": "^1.2.0", + "bs58check": "^2.1.2", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "hash.js": "^1.1.7", + "keccak": "^3.0.0", + "pbkdf2": "^3.0.17", + "randombytes": "^2.1.0", + "safe-buffer": "^5.1.2", + "scrypt-js": "^3.0.0", + "secp256k1": "^4.0.1", + "setimmediate": "^1.0.5" } }, - "node_modules/dotenv": { - "version": "16.4.7", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", - "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" + "node_modules/ethers": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.8.0.tgz", + "integrity": "sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abi": "5.8.0", + "@ethersproject/abstract-provider": "5.8.0", + "@ethersproject/abstract-signer": "5.8.0", + "@ethersproject/address": "5.8.0", + "@ethersproject/base64": "5.8.0", + "@ethersproject/basex": "5.8.0", + "@ethersproject/bignumber": "5.8.0", + "@ethersproject/bytes": "5.8.0", + "@ethersproject/constants": "5.8.0", + "@ethersproject/contracts": "5.8.0", + "@ethersproject/hash": "5.8.0", + "@ethersproject/hdnode": "5.8.0", + "@ethersproject/json-wallets": "5.8.0", + "@ethersproject/keccak256": "5.8.0", + "@ethersproject/logger": "5.8.0", + "@ethersproject/networks": "5.8.0", + "@ethersproject/pbkdf2": "5.8.0", + "@ethersproject/properties": "5.8.0", + "@ethersproject/providers": "5.8.0", + "@ethersproject/random": "5.8.0", + "@ethersproject/rlp": "5.8.0", + "@ethersproject/sha2": "5.8.0", + "@ethersproject/signing-key": "5.8.0", + "@ethersproject/solidity": "5.8.0", + "@ethersproject/strings": "5.8.0", + "@ethersproject/transactions": "5.8.0", + "@ethersproject/units": "5.8.0", + "@ethersproject/wallet": "5.8.0", + "@ethersproject/web": "5.8.0", + "@ethersproject/wordlists": "5.8.0" } }, - "node_modules/dotenv-expand": { - "version": "11.0.7", - "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", - "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", + "node_modules/ethjs-unit": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", + "integrity": "sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==", "dev": true, "dependencies": { - "dotenv": "^16.4.5" + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" + "node": ">=6.5.0", + "npm": ">=3" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true - }, - "node_modules/duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", - "dev": true - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "node_modules/ethjs-unit/node_modules/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", "dev": true }, - "node_modules/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "node_modules/ethjs-util": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", + "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", "dev": true, "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "is-hex-prefixed": "1.0.0", + "strip-hex-prefix": "1.0.0" + }, + "engines": { + "node": ">=6.5.0", + "npm": ">=3" } }, - "node_modules/ecc-jsbn/node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", "dev": true }, - "node_modules/ed25519-hd-key": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/ed25519-hd-key/-/ed25519-hd-key-1.1.2.tgz", - "integrity": "sha512-/0y9y6N7vM6Kj5ASr9J9wcMVDTtygxSOvYX+PJiMD7VcxCx2G03V5bLRl8Dug9EgkLFsLhGqBtQWQRcElEeWTA==", - "dependencies": { - "bip39": "3.0.2", - "create-hmac": "1.1.7", - "tweetnacl": "1.0.3" + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" } }, - "node_modules/ed2curve": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/ed2curve/-/ed2curve-0.3.0.tgz", - "integrity": "sha512-8w2fmmq3hv9rCrcI7g9hms2pMunQr1JINfcjwR9tAyZqhtyaMN991lF/ZfHfr5tzZQ8c7y7aBgZbjfbd0fjFwQ==", + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, "dependencies": { - "tweetnacl": "1.x.x" + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" } }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "node_modules/ejs": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", - "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "dependencies": { - "jake": "^10.8.5" - }, - "bin": { - "ejs": "bin/cli.js" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/electron-to-chromium": { - "version": "1.4.715", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.715.tgz", - "integrity": "sha512-XzWNH4ZSa9BwVUQSDorPWAUQ5WGuYz7zJUNpNif40zFCiCl20t8zgylmreNmn26h5kiyw2lg7RfTmeMBsDklqg==", - "dev": true - }, - "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "node_modules/execution-time": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/execution-time/-/execution-time-1.4.1.tgz", + "integrity": "sha512-4t9svrTtsXxAEzAs9/tm1R/Voj5AYHqxd72BiLEbGQWJq2PD3tAmW8bXI7Pp0yorjaKshT1+NyKy0ytHlKW4Pg==", + "dev": true, "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" + "pretty-hrtime": "^1.0.3" } }, - "node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/emittery": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", - "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" + "node": ">= 0.8.0" } }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/enabled": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", - "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" - }, - "node_modules/encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", "dev": true, + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, "engines": { - "node": ">= 0.8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "optional": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } + "node_modules/exponential-backoff": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz", + "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==", + "dev": true }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "optional": true, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "devOptional": true, - "dependencies": { - "once": "^1.4.0" + "node": ">=4" } }, - "node_modules/enquirer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", - "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "node_modules/external-editor/node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, "dependencies": { - "ansi-colors": "^4.1.1", - "strip-ansi": "^6.0.1" + "os-tmpdir": "~1.0.2" }, "engines": { - "node": ">=8.6" + "node": ">=0.6.0" } }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, "engines": { - "node": ">=6" + "node": ">=8.6.0" } }, - "node_modules/envinfo": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", - "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, - "bin": { - "envinfo": "dist/cli.js" + "dependencies": { + "is-glob": "^4.0.1" }, "engines": { - "node": ">=4" + "node": ">= 6" } }, - "node_modules/err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fast-safe-stringify": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.4.tgz", + "integrity": "sha512-mNlGUdKOeGNleyrmgbKYtbnCr9KZkZXU7eM89JRo8vY10f7Ul1Fbj07hUBW3N4fC0xM+fmfFfa2zM7mIizhpNQ==" + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dev": true, "dependencies": { - "is-arrayish": "^0.2.1" + "reusify": "^1.0.4" } }, - "node_modules/error-polyfill": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/error-polyfill/-/error-polyfill-0.1.3.tgz", - "integrity": "sha512-XHJk60ufE+TG/ydwp4lilOog549iiQF2OAPhkk9DdiYWMrltz5yhDz/xnKuenNwP7gy3dsibssO5QpVhkrSzzg==", - "optional": true, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, "dependencies": { - "capability": "^0.2.5", - "o3": "^1.0.3", - "u3": "^0.1.1" + "bser": "2.1.1" } }, - "node_modules/es-abstract": { - "version": "1.23.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.2.tgz", - "integrity": "sha512-60s3Xv2T2p1ICykc7c+DNDPLDMm9t4QxCOUU0K9JxiLjM3C1zB9YVdN7tjxrFd4+AkZ8CdX1ovUga4P2+1e+/w==", + "node_modules/fecha": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "data-view-buffer": "^1.0.1", - "data-view-byte-length": "^1.0.1", - "data-view-byte-offset": "^1.0.0", - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.0.3", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "hasown": "^2.0.2", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.2", - "typed-array-byte-length": "^1.0.1", - "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.5", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" + "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, "dependencies": { - "get-intrinsic": "^1.2.4" + "flat-cache": "^3.0.4" }, "engines": { - "node": ">= 0.4" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "engines": { - "node": ">= 0.4" + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "dependencies": { + "minimatch": "^5.0.1" } }, - "node_modules/es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" + "balanced-match": "^1.0.0" } }, - "node_modules/es-set-tostringtag": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", - "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.4", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">=10" } }, - "node_modules/es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "dependencies": { - "hasown": "^2.0.0" + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/find-replace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz", + "integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==", "dev": true, "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "array-back": "^3.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0.0" } }, - "node_modules/es5-ext": { - "version": "0.10.64", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", - "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==", + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, - "hasInstallScript": true, "dependencies": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "esniff": "^2.0.1", - "next-tick": "^1.1.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=0.10" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" + "bin": { + "flat": "cli.js" } }, - "node_modules/es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "dev": true - }, - "node_modules/es6-symbol": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz", - "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==", + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "dependencies": { - "d": "^1.0.2", - "ext": "^1.7.0" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": ">=0.12" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", - "dev": true, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true + }, + "node_modules/fn.name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "engines": { - "node": ">=6" + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dev": true, - "engines": { - "node": ">=0.8.0" + "dependencies": { + "is-callable": "^1.1.3" } }, - "node_modules/escodegen": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", - "integrity": "sha512-yhi5S+mNTOuRvyW4gWlg5W1byMaQGWWSYHXsuFZ7GBo7tpyOwi2EdzMP/QWxh9hwkD2m+wDVHJsxhRIj+v/b/A==", + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", "dev": true, "dependencies": { - "esprima": "^2.7.1", - "estraverse": "^1.9.1", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=0.12.0" + "node": ">=14" }, - "optionalDependencies": { - "source-map": "~0.2.0" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/escodegen/node_modules/estraverse": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/escodegen/node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, "engines": { - "node": ">= 0.8.0" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/escodegen/node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 6" } }, - "node_modules/escodegen/node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } + "node_modules/fp-ts": { + "version": "1.19.3", + "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-1.19.3.tgz", + "integrity": "sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==", + "dev": true }, - "node_modules/escodegen/node_modules/source-map": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", - "integrity": "sha512-CBdZ2oa/BHhS4xj5DlhjWNHcan57/5YuvfdLf17iVmIpd9KRm+DFLmC6nBNj+6Ua7Kt3TmOjDpQT1aTYOQtoUA==", + "node_modules/front-matter": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-4.0.2.tgz", + "integrity": "sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==", "dev": true, - "optional": true, "dependencies": { - "amdefine": ">=0.0.4" - }, - "engines": { - "node": ">=0.8.0" + "js-yaml": "^3.13.1" } }, - "node_modules/escodegen/node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "node_modules/front-matter/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" + "sprintf-js": "~1.0.2" } }, - "node_modules/eslint": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", - "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "node_modules/front-matter/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.0", - "@humanwhocodes/config-array": "^0.11.14", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, "bin": { - "eslint": "bin/eslint.js" + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=4" } }, - "node_modules/eslint-config-prettier": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", - "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", + "node_modules/front-matter/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "dependencies": { - "get-stdin": "^6.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, "bin": { - "eslint-config-prettier-check": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=3.14.1" + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/eslint-config-richardpringle": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-richardpringle/-/eslint-config-richardpringle-2.0.0.tgz", - "integrity": "sha512-c2eaJF76KmvOz1KvQCu5nrHBM1H6qB9Z5aW+RYaw9yQsoELiZ09ms9F7NZdPV4Q15sYV8NEJje9rTwnrbUSX6w==", - "dev": true, - "dependencies": { - "eslint-config-prettier": "^6.10.1", - "eslint-config-standard": "^14.1.1", - "eslint-plugin-import": "^2.20.2", - "eslint-plugin-mocha": "^6.3.0", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^4.2.1", - "eslint-plugin-standard": "^4.0.1" - } + "node_modules/front-matter/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true }, - "node_modules/eslint-config-standard": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-14.1.1.tgz", - "integrity": "sha512-Z9B+VR+JIXRxz21udPTL9HpFMyoMUEeX1G251EQ6e05WD9aPVtVBn09XUmZ259wCMlCDmYDSZG62Hhm+ZTJcUg==", - "dev": true, - "peerDependencies": { - "eslint": ">=6.2.2", - "eslint-plugin-import": ">=2.18.0", - "eslint-plugin-node": ">=9.1.0", - "eslint-plugin-promise": ">=4.2.1", - "eslint-plugin-standard": ">=4.0.0" - } + "node_modules/fs": { + "version": "0.0.1-security", + "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", + "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==" }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - } + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, + "node_modules/fs-extra": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", + "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", "dependencies": { - "ms": "^2.1.1" + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" } }, - "node_modules/eslint-module-utils": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", - "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", "dev": true, "dependencies": { - "debug": "^3.2.7" + "minipass": "^7.0.3" }, "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } + "node_modules/fs-readdir-recursive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", + "dev": true }, - "node_modules/eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", - "dev": true, - "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "devOptional": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=8.10.0" - }, + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", "dev": true, "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", - "semver": "^6.3.1", - "tsconfig-paths": "^3.15.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, "engines": { - "node": ">=4" + "node": ">= 0.4" }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", + "dev": true }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-mocha": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-6.3.0.tgz", - "integrity": "sha512-Cd2roo8caAyG21oKaaNTj7cqeYRWW1I2B5SfpKRp0Ip1gkfwoR1Ow0IGlPWnNjzywdF4n+kHL8/9vM6zCJUxdg==", - "dev": true, + "node_modules/ganache": { + "version": "7.9.2", + "resolved": "https://registry.npmjs.org/ganache/-/ganache-7.9.2.tgz", + "integrity": "sha512-7gsVVDpO9AhrFyDMWWl7SpMsPpqGcnAzjxz3k32LheIPNd64p2XsY9GYRdhWmKuryb60W1iaWPZWDkFKlbRWHA==", + "bundleDependencies": [ + "@trufflesuite/bigint-buffer", + "keccak", + "leveldown", + "secp256k1" + ], + "hasShrinkwrap": true, "dependencies": { - "eslint-utils": "^2.0.0", - "ramda": "^0.27.0" + "@trufflesuite/bigint-buffer": "1.1.10", + "@trufflesuite/uws-js-unofficial": "20.30.0-unofficial.0", + "@types/bn.js": "^5.1.0", + "@types/lru-cache": "5.1.1", + "@types/seedrandom": "3.0.1", + "abstract-level": "1.0.3", + "abstract-leveldown": "7.2.0", + "async-eventemitter": "0.2.4", + "emittery": "0.10.0", + "keccak": "3.0.2", + "leveldown": "6.1.0", + "secp256k1": "4.0.3" }, - "engines": { - "node": ">=8.0.0" + "bin": { + "ganache": "dist/node/cli.js", + "ganache-cli": "dist/node/cli.js" }, - "peerDependencies": { - "eslint": ">= 4.0.0" + "optionalDependencies": { + "bufferutil": "4.0.5", + "utf-8-validate": "5.0.7" } }, - "node_modules/eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", - "dev": true, + "node_modules/ganache/node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "extraneous": true, "dependencies": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" - }, - "engines": { - "node": ">=8.10.0" + "@jridgewell/trace-mapping": "0.3.9" }, - "peerDependencies": { - "eslint": ">=5.16.0" - } - }, - "node_modules/eslint-plugin-promise": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.3.1.tgz", - "integrity": "sha512-bY2sGqyptzFBDLh/GMbAxfdJC+b0f23ME63FOE4+Jao0oZ3E1LEwFtWJX/1pGMJLiTtrSSern2CRM/g+dfc0eQ==", - "dev": true, "engines": { - "node": ">=6" + "node": ">=12" } }, - "node_modules/eslint-plugin-standard": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.1.0.tgz", - "integrity": "sha512-ZL7+QRixjTR6/528YNGyDotyffm5OQst/sGxKDwGb9Uqs4In5Egi4+jbobhqJoyoCM6/7v/1A5fhQ7ScMtDjaQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peerDependencies": { - "eslint": ">=5.0.0" + "node_modules/ganache/node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "extraneous": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, + "node_modules/ganache/node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "extraneous": true, "engines": { - "node": ">=8.0.0" + "node": ">=10.0.0" } }, - "node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, + "node_modules/ganache/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "extraneous": true, "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" + "node": ">=6.0.0" } }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, + "node_modules/ganache/node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=6.0.0" } }, - "node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, + "node_modules/ganache/node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "extraneous": true, "engines": { - "node": ">=10" + "node": ">=6.0.0" } }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, + "node_modules/ganache/node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "extraneous": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" } }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, + "node_modules/ganache/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "extraneous": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" } }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, + "node_modules/ganache/node_modules/@microsoft/api-extractor": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.20.1.tgz", + "integrity": "sha512-T7cqcK+JpvHGOj7cD2ZCCWS7Xgru1uOqZwrV/FSUdyKVs5fopZcbBSuetwD/akst3O7Ypryg3UOLP54S/vnVmA==", + "extraneous": true, "dependencies": { - "color-name": "~1.1.4" + "@microsoft/api-extractor-model": "7.16.0", + "@microsoft/tsdoc": "0.13.2", + "@microsoft/tsdoc-config": "~0.15.2", + "@rushstack/node-core-library": "3.45.1", + "@rushstack/rig-package": "0.3.8", + "@rushstack/ts-command-line": "4.10.7", + "colors": "~1.2.1", + "lodash": "~4.17.15", + "resolve": "~1.17.0", + "semver": "~7.3.0", + "source-map": "~0.6.1", + "typescript": "~4.5.2" }, - "engines": { - "node": ">=7.0.0" + "bin": { + "api-extractor": "bin/api-extractor" } }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "node_modules/ganache/node_modules/@microsoft/api-extractor-model": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.16.0.tgz", + "integrity": "sha512-0FOrbNIny8mzBrzQnSIkEjAXk0JMSnPmWYxt3ZDTPVg9S8xIPzB6lfgTg9+Mimu0RKCpGKBpd+v2WcR5vGzyUQ==", + "extraneous": true, + "dependencies": { + "@microsoft/tsdoc": "0.13.2", + "@microsoft/tsdoc-config": "~0.15.2", + "@rushstack/node-core-library": "3.45.1" + } }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" + "node_modules/ganache/node_modules/@microsoft/api-extractor/node_modules/typescript": { + "version": "4.5.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz", + "integrity": "sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==", + "extraneous": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=4.2.0" } }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, + "node_modules/ganache/node_modules/@microsoft/tsdoc": { + "version": "0.13.2", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.13.2.tgz", + "integrity": "sha512-WrHvO8PDL8wd8T2+zBGKrMwVL5IyzR3ryWUsl0PXgEV0QHup4mTLi0QcATefGI6Gx9Anu7vthPyyyLpY0EpiQg==", + "extraneous": true + }, + "node_modules/ganache/node_modules/@microsoft/tsdoc-config": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.15.2.tgz", + "integrity": "sha512-mK19b2wJHSdNf8znXSMYVShAHktVr/ib0Ck2FA3lsVBSEhSI/TfXT7DJQkAYgcztTuwazGcg58ZjYdk0hTCVrA==", + "extraneous": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "@microsoft/tsdoc": "0.13.2", + "ajv": "~6.12.6", + "jju": "~1.4.0", + "resolve": "~1.19.0" } }, - "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node_modules/ganache/node_modules/@microsoft/tsdoc-config/node_modules/resolve": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", + "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", + "extraneous": true, + "dependencies": { + "is-core-module": "^2.1.0", + "path-parse": "^1.0.6" } }, - "node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" + "node_modules/ganache/node_modules/@rushstack/node-core-library": { + "version": "3.45.1", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.45.1.tgz", + "integrity": "sha512-BwdssTNe007DNjDBxJgInHg8ePytIPyT0La7ZZSQZF9+rSkT42AygXPGvbGsyFfEntjr4X37zZSJI7yGzL16cQ==", + "extraneous": true, + "dependencies": { + "@types/node": "12.20.24", + "colors": "~1.2.1", + "fs-extra": "~7.0.1", + "import-lazy": "~4.0.0", + "jju": "~1.4.0", + "resolve": "~1.17.0", + "semver": "~7.3.0", + "timsort": "~0.3.0", + "z-schema": "~5.0.2" } }, - "node_modules/eslint/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, + "node_modules/ganache/node_modules/@rushstack/node-core-library/node_modules/@types/node": { + "version": "12.20.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.24.tgz", + "integrity": "sha512-yxDeaQIAJlMav7fH5AQqPH1u8YIuhYJXYBzxaQ4PifsU0GDO38MSdmEDeRlIxrKbC6NbEaaEHDanWb+y30U8SQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/@rushstack/rig-package": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.3.8.tgz", + "integrity": "sha512-MDWg1xovea99PWloSiYMjFcCLsrdjFtYt6aOyHNs5ojn5mxrzR6U9F83hvbQjTWnKPMvZtr0vcek+4n+OQOp3Q==", + "extraneous": true, "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "resolve": "~1.17.0", + "strip-json-comments": "~3.1.1" } }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/ganache/node_modules/@rushstack/ts-command-line": { + "version": "4.10.7", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.10.7.tgz", + "integrity": "sha512-CjS+DfNXUSO5Ab2wD1GBGtUTnB02OglRWGqfaTcac9Jn45V5MeUOsq/wA8wEeS5Y/3TZ2P1k+IWdVDiuOFP9Og==", + "extraneous": true, + "dependencies": { + "@types/argparse": "1.0.38", + "argparse": "~1.0.9", + "colors": "~1.2.1", + "string-argv": "~0.3.1" } }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, + "node_modules/ganache/node_modules/@trufflesuite/bigint-buffer": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@trufflesuite/bigint-buffer/-/bigint-buffer-1.1.10.tgz", + "integrity": "sha512-pYIQC5EcMmID74t26GCC67946mgTJFiLXOT/BYozgrd4UEY2JHEGLhWi9cMiQCt5BSqFEvKkCHNnoj82SRjiEw==", + "hasInstallScript": true, + "inBundle": true, + "license": "Apache-2.0", "dependencies": { - "has-flag": "^4.0.0" + "node-gyp-build": "4.4.0" }, "engines": { - "node": ">=8" + "node": ">= 14.0.0" } }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node_modules/ganache/node_modules/@trufflesuite/bigint-buffer/node_modules/node-gyp-build": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", + "integrity": "sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==", + "inBundle": true, + "license": "MIT", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" } }, - "node_modules/esniff": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", - "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", - "dev": true, + "node_modules/ganache/node_modules/@trufflesuite/uws-js-unofficial": { + "version": "20.30.0-unofficial.0", + "resolved": "https://registry.npmjs.org/@trufflesuite/uws-js-unofficial/-/uws-js-unofficial-20.30.0-unofficial.0.tgz", + "integrity": "sha512-r5X0aOQcuT6pLwTRLD+mPnAM/nlKtvIK4Z+My++A8tTOR0qTjNRx8UB8jzRj3D+p9PMAp5LnpCUUGmz7/TppwA==", "dependencies": { - "d": "^1.0.1", - "es5-ext": "^0.10.62", - "event-emitter": "^0.3.5", - "type": "^2.7.2" + "ws": "8.13.0" }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=0.10.0" + "optionalDependencies": { + "bufferutil": "4.0.7", + "utf-8-validate": "6.0.3" } }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, + "node_modules/ganache/node_modules/@trufflesuite/uws-js-unofficial/node_modules/bufferutil": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.7.tgz", + "integrity": "sha512-kukuqc39WOHtdxtw4UScxF/WVnMFVSQVKhtx3AjZJzhd0RGZZldcrfSEbVsWWe6KNH253574cq5F+wpv0G9pJw==", + "hasInstallScript": true, + "optional": true, "dependencies": { - "estraverse": "^5.1.0" + "node-gyp-build": "^4.3.0" }, "engines": { - "node": ">=0.10" - } - }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" + "node": ">=6.14.2" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, + "node_modules/ganache/node_modules/@trufflesuite/uws-js-unofficial/node_modules/utf-8-validate": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-6.0.3.tgz", + "integrity": "sha512-uIuGf9TWQ/y+0Lp+KGZCMuJWc3N9BHA+l/UmHd/oUHwJJDeysyTRxNQVkbzsIWfGFbRe3OcgML/i0mvVRPOyDA==", + "hasInstallScript": true, + "optional": true, "dependencies": { - "estraverse": "^5.2.0" + "node-gyp-build": "^4.3.0" }, "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "node": ">=6.14.2" } }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, + "node_modules/ganache/node_modules/@trufflesuite/uws-js-unofficial/node_modules/ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", "engines": { - "node": ">= 0.6" - } - }, - "node_modules/eth-ens-namehash": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz", - "integrity": "sha512-VWEI1+KJfz4Km//dadyvBBoBeSQ0MHTXPvr8UIXiLW6IanxvAV+DmlZAijZwAyggqGUfwQBeHf7tc9wzc1piSw==", - "dev": true, - "dependencies": { - "idna-uts46-hx": "^2.3.1", - "js-sha3": "^0.5.7" - } - }, - "node_modules/eth-ens-namehash/node_modules/js-sha3": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.5.7.tgz", - "integrity": "sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g==", - "dev": true - }, - "node_modules/eth-gas-reporter": { - "version": "0.2.27", - "resolved": "https://registry.npmjs.org/eth-gas-reporter/-/eth-gas-reporter-0.2.27.tgz", - "integrity": "sha512-femhvoAM7wL0GcI8ozTdxfuBtBFJ9qsyIAsmKVjlWAHUbdnnXHt+lKzz/kmldM5lA9jLuNHGwuIxorNpLbR1Zw==", - "dev": true, - "dependencies": { - "@solidity-parser/parser": "^0.14.0", - "axios": "^1.5.1", - "cli-table3": "^0.5.0", - "colors": "1.4.0", - "ethereum-cryptography": "^1.0.3", - "ethers": "^5.7.2", - "fs-readdir-recursive": "^1.1.0", - "lodash": "^4.17.14", - "markdown-table": "^1.1.3", - "mocha": "^10.2.0", - "req-cwd": "^2.0.0", - "sha1": "^1.1.1", - "sync-request": "^6.0.0" + "node": ">=10.0.0" }, "peerDependencies": { - "@codechecks/client": "^0.1.0" + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" }, "peerDependenciesMeta": { - "@codechecks/client": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { "optional": true } } }, - "node_modules/eth-lib": { - "version": "0.1.29", - "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.1.29.tgz", - "integrity": "sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==", - "dev": true, - "dependencies": { - "bn.js": "^4.11.6", - "elliptic": "^6.4.0", - "nano-json-stream-parser": "^0.1.2", - "servify": "^0.1.12", - "ws": "^3.0.0", - "xhr-request-promise": "^0.1.2" - } + "node_modules/ganache/node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "extraneous": true }, - "node_modules/eth-lib/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "node_modules/ganache/node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "extraneous": true }, - "node_modules/eth-lib/node_modules/ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "dependencies": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } + "node_modules/ganache/node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "extraneous": true }, - "node_modules/ethereum-bloom-filters": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz", - "integrity": "sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==", - "dev": true, + "node_modules/ganache/node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/@types/abstract-leveldown": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@types/abstract-leveldown/-/abstract-leveldown-7.2.0.tgz", + "integrity": "sha512-q5veSX6zjUy/DlDhR4Y4cU0k2Ar+DT2LUraP00T19WLmTO6Se1djepCCaqU6nQrwcJ5Hyo/CWqxTzrrFg8eqbQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/@types/argparse": { + "version": "1.0.38", + "resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-1.0.38.tgz", + "integrity": "sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/@types/bn.js": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", + "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", "dependencies": { - "js-sha3": "^0.8.0" + "@types/node": "*" } }, - "node_modules/ethereum-cryptography": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz", - "integrity": "sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==", - "dev": true, + "node_modules/ganache/node_modules/@types/eslint": { + "version": "8.4.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", + "integrity": "sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==", + "extraneous": true, "dependencies": { - "@noble/hashes": "1.2.0", - "@noble/secp256k1": "1.7.1", - "@scure/bip32": "1.1.5", - "@scure/bip39": "1.1.1" + "@types/estree": "*", + "@types/json-schema": "*" } }, - "node_modules/ethereumjs-abi": { - "version": "0.6.8", - "resolved": "https://registry.npmjs.org/ethereumjs-abi/-/ethereumjs-abi-0.6.8.tgz", - "integrity": "sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA==", - "dev": true, + "node_modules/ganache/node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "extraneous": true, "dependencies": { - "bn.js": "^4.11.8", - "ethereumjs-util": "^6.0.0" + "@types/eslint": "*", + "@types/estree": "*" } }, - "node_modules/ethereumjs-abi/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "node_modules/ganache/node_modules/@types/estree": { + "version": "0.0.50", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", + "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==", + "extraneous": true }, - "node_modules/ethereumjs-util": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", - "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", - "dev": true, - "dependencies": { - "@types/bn.js": "^4.11.3", - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "0.1.6", - "rlp": "^2.2.3" - } - }, - "node_modules/ethereumjs-util/node_modules/@types/bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/ethereumjs-util/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - }, - "node_modules/ethereumjs-util/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/ethers": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.8.0.tgz", - "integrity": "sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/abi": "5.8.0", - "@ethersproject/abstract-provider": "5.8.0", - "@ethersproject/abstract-signer": "5.8.0", - "@ethersproject/address": "5.8.0", - "@ethersproject/base64": "5.8.0", - "@ethersproject/basex": "5.8.0", - "@ethersproject/bignumber": "5.8.0", - "@ethersproject/bytes": "5.8.0", - "@ethersproject/constants": "5.8.0", - "@ethersproject/contracts": "5.8.0", - "@ethersproject/hash": "5.8.0", - "@ethersproject/hdnode": "5.8.0", - "@ethersproject/json-wallets": "5.8.0", - "@ethersproject/keccak256": "5.8.0", - "@ethersproject/logger": "5.8.0", - "@ethersproject/networks": "5.8.0", - "@ethersproject/pbkdf2": "5.8.0", - "@ethersproject/properties": "5.8.0", - "@ethersproject/providers": "5.8.0", - "@ethersproject/random": "5.8.0", - "@ethersproject/rlp": "5.8.0", - "@ethersproject/sha2": "5.8.0", - "@ethersproject/signing-key": "5.8.0", - "@ethersproject/solidity": "5.8.0", - "@ethersproject/strings": "5.8.0", - "@ethersproject/transactions": "5.8.0", - "@ethersproject/units": "5.8.0", - "@ethersproject/wallet": "5.8.0", - "@ethersproject/web": "5.8.0", - "@ethersproject/wordlists": "5.8.0" - } - }, - "node_modules/ethjs-unit": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", - "integrity": "sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==", - "dev": true, - "dependencies": { - "bn.js": "4.11.6", - "number-to-bn": "1.7.0" - }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } - }, - "node_modules/ethjs-unit/node_modules/bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", - "dev": true - }, - "node_modules/ethjs-util": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", - "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", - "dev": true, - "dependencies": { - "is-hex-prefixed": "1.0.0", - "strip-hex-prefix": "1.0.0" - }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } - }, - "node_modules/event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", - "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/execution-time": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/execution-time/-/execution-time-1.4.1.tgz", - "integrity": "sha512-4t9svrTtsXxAEzAs9/tm1R/Voj5AYHqxd72BiLEbGQWJq2PD3tAmW8bXI7Pp0yorjaKshT1+NyKy0ytHlKW4Pg==", - "dev": true, - "dependencies": { - "pretty-hrtime": "^1.0.3" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", - "dev": true, - "dependencies": { - "@jest/expect-utils": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/exponential-backoff": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz", - "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==", - "dev": true - }, - "node_modules/express": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", - "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", - "dev": true, - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.3", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.7.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.3.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.3", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.12", - "proxy-addr": "~2.0.7", - "qs": "6.13.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.19.0", - "serve-static": "1.16.2", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" - } - }, - "node_modules/express/node_modules/cookie": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", - "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/express/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/express/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/ext": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", - "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", - "dev": true, - "dependencies": { - "type": "^2.7.2" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/external-editor/node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true, - "engines": [ - "node >=0.6.0" - ] - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "node_modules/fast-diff": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", - "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fast-safe-stringify": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.4.tgz", - "integrity": "sha512-mNlGUdKOeGNleyrmgbKYtbnCr9KZkZXU7eM89JRo8vY10f7Ul1Fbj07hUBW3N4fC0xM+fmfFfa2zM7mIizhpNQ==" - }, - "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "dev": true, - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/fecha": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", - "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/filelist": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", - "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", - "dev": true, - "dependencies": { - "minimatch": "^5.0.1" - } - }, - "node_modules/filelist/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/filelist/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", - "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/finalhandler/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/find-replace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz", - "integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==", - "dev": true, - "dependencies": { - "array-back": "^3.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true, - "bin": { - "flat": "cli.js" - } - }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", - "dev": true - }, - "node_modules/fn.name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", - "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" - }, - "node_modules/follow-redirects": { - "version": "1.15.6", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", - "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/foreground-child": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", - "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.6", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/foreground-child/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/form-data-encoder": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.1.tgz", - "integrity": "sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg==", - "dev": true - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fp-ts": { - "version": "1.19.3", - "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-1.19.3.tgz", - "integrity": "sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==", - "dev": true - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/front-matter": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-4.0.2.tgz", - "integrity": "sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==", - "dev": true, - "dependencies": { - "js-yaml": "^3.13.1" - } - }, - "node_modules/front-matter/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/front-matter/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/front-matter/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/front-matter/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/fs": { - "version": "0.0.1-security", - "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", - "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==" - }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "node_modules/fs-extra": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", - "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, - "node_modules/fs-minipass": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", - "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/fs-readdir-recursive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", - "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "devOptional": true - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", - "dev": true - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/ganache": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/ganache/-/ganache-7.9.2.tgz", - "integrity": "sha512-7gsVVDpO9AhrFyDMWWl7SpMsPpqGcnAzjxz3k32LheIPNd64p2XsY9GYRdhWmKuryb60W1iaWPZWDkFKlbRWHA==", - "bundleDependencies": [ - "@trufflesuite/bigint-buffer", - "keccak", - "leveldown", - "secp256k1" - ], - "hasShrinkwrap": true, - "dependencies": { - "@trufflesuite/bigint-buffer": "1.1.10", - "@trufflesuite/uws-js-unofficial": "20.30.0-unofficial.0", - "@types/bn.js": "^5.1.0", - "@types/lru-cache": "5.1.1", - "@types/seedrandom": "3.0.1", - "abstract-level": "1.0.3", - "abstract-leveldown": "7.2.0", - "async-eventemitter": "0.2.4", - "emittery": "0.10.0", - "keccak": "3.0.2", - "leveldown": "6.1.0", - "secp256k1": "4.0.3" - }, - "bin": { - "ganache": "dist/node/cli.js", - "ganache-cli": "dist/node/cli.js" - }, - "optionalDependencies": { - "bufferutil": "4.0.5", - "utf-8-validate": "5.0.7" - } - }, - "node_modules/ganache/node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "extraneous": true, - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/ganache/node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "extraneous": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/ganache/node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "extraneous": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/ganache/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "extraneous": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/ganache/node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "extraneous": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/ganache/node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "extraneous": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/ganache/node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "extraneous": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/ganache/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", - "extraneous": true, - "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "node_modules/ganache/node_modules/@microsoft/api-extractor": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.20.1.tgz", - "integrity": "sha512-T7cqcK+JpvHGOj7cD2ZCCWS7Xgru1uOqZwrV/FSUdyKVs5fopZcbBSuetwD/akst3O7Ypryg3UOLP54S/vnVmA==", - "extraneous": true, - "dependencies": { - "@microsoft/api-extractor-model": "7.16.0", - "@microsoft/tsdoc": "0.13.2", - "@microsoft/tsdoc-config": "~0.15.2", - "@rushstack/node-core-library": "3.45.1", - "@rushstack/rig-package": "0.3.8", - "@rushstack/ts-command-line": "4.10.7", - "colors": "~1.2.1", - "lodash": "~4.17.15", - "resolve": "~1.17.0", - "semver": "~7.3.0", - "source-map": "~0.6.1", - "typescript": "~4.5.2" - }, - "bin": { - "api-extractor": "bin/api-extractor" - } - }, - "node_modules/ganache/node_modules/@microsoft/api-extractor-model": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.16.0.tgz", - "integrity": "sha512-0FOrbNIny8mzBrzQnSIkEjAXk0JMSnPmWYxt3ZDTPVg9S8xIPzB6lfgTg9+Mimu0RKCpGKBpd+v2WcR5vGzyUQ==", - "extraneous": true, - "dependencies": { - "@microsoft/tsdoc": "0.13.2", - "@microsoft/tsdoc-config": "~0.15.2", - "@rushstack/node-core-library": "3.45.1" - } - }, - "node_modules/ganache/node_modules/@microsoft/api-extractor/node_modules/typescript": { - "version": "4.5.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz", - "integrity": "sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==", - "extraneous": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/ganache/node_modules/@microsoft/tsdoc": { - "version": "0.13.2", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.13.2.tgz", - "integrity": "sha512-WrHvO8PDL8wd8T2+zBGKrMwVL5IyzR3ryWUsl0PXgEV0QHup4mTLi0QcATefGI6Gx9Anu7vthPyyyLpY0EpiQg==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@microsoft/tsdoc-config": { - "version": "0.15.2", - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.15.2.tgz", - "integrity": "sha512-mK19b2wJHSdNf8znXSMYVShAHktVr/ib0Ck2FA3lsVBSEhSI/TfXT7DJQkAYgcztTuwazGcg58ZjYdk0hTCVrA==", - "extraneous": true, - "dependencies": { - "@microsoft/tsdoc": "0.13.2", - "ajv": "~6.12.6", - "jju": "~1.4.0", - "resolve": "~1.19.0" - } - }, - "node_modules/ganache/node_modules/@microsoft/tsdoc-config/node_modules/resolve": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", - "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", - "extraneous": true, - "dependencies": { - "is-core-module": "^2.1.0", - "path-parse": "^1.0.6" - } - }, - "node_modules/ganache/node_modules/@rushstack/node-core-library": { - "version": "3.45.1", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.45.1.tgz", - "integrity": "sha512-BwdssTNe007DNjDBxJgInHg8ePytIPyT0La7ZZSQZF9+rSkT42AygXPGvbGsyFfEntjr4X37zZSJI7yGzL16cQ==", - "extraneous": true, - "dependencies": { - "@types/node": "12.20.24", - "colors": "~1.2.1", - "fs-extra": "~7.0.1", - "import-lazy": "~4.0.0", - "jju": "~1.4.0", - "resolve": "~1.17.0", - "semver": "~7.3.0", - "timsort": "~0.3.0", - "z-schema": "~5.0.2" - } - }, - "node_modules/ganache/node_modules/@rushstack/node-core-library/node_modules/@types/node": { - "version": "12.20.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.24.tgz", - "integrity": "sha512-yxDeaQIAJlMav7fH5AQqPH1u8YIuhYJXYBzxaQ4PifsU0GDO38MSdmEDeRlIxrKbC6NbEaaEHDanWb+y30U8SQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@rushstack/rig-package": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.3.8.tgz", - "integrity": "sha512-MDWg1xovea99PWloSiYMjFcCLsrdjFtYt6aOyHNs5ojn5mxrzR6U9F83hvbQjTWnKPMvZtr0vcek+4n+OQOp3Q==", - "extraneous": true, - "dependencies": { - "resolve": "~1.17.0", - "strip-json-comments": "~3.1.1" - } - }, - "node_modules/ganache/node_modules/@rushstack/ts-command-line": { - "version": "4.10.7", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.10.7.tgz", - "integrity": "sha512-CjS+DfNXUSO5Ab2wD1GBGtUTnB02OglRWGqfaTcac9Jn45V5MeUOsq/wA8wEeS5Y/3TZ2P1k+IWdVDiuOFP9Og==", - "extraneous": true, - "dependencies": { - "@types/argparse": "1.0.38", - "argparse": "~1.0.9", - "colors": "~1.2.1", - "string-argv": "~0.3.1" - } - }, - "node_modules/ganache/node_modules/@trufflesuite/bigint-buffer": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/@trufflesuite/bigint-buffer/-/bigint-buffer-1.1.10.tgz", - "integrity": "sha512-pYIQC5EcMmID74t26GCC67946mgTJFiLXOT/BYozgrd4UEY2JHEGLhWi9cMiQCt5BSqFEvKkCHNnoj82SRjiEw==", - "hasInstallScript": true, - "inBundle": true, - "license": "Apache-2.0", - "dependencies": { - "node-gyp-build": "4.4.0" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/ganache/node_modules/@trufflesuite/bigint-buffer/node_modules/node-gyp-build": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", - "integrity": "sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==", - "inBundle": true, - "license": "MIT", - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/ganache/node_modules/@trufflesuite/uws-js-unofficial": { - "version": "20.30.0-unofficial.0", - "resolved": "https://registry.npmjs.org/@trufflesuite/uws-js-unofficial/-/uws-js-unofficial-20.30.0-unofficial.0.tgz", - "integrity": "sha512-r5X0aOQcuT6pLwTRLD+mPnAM/nlKtvIK4Z+My++A8tTOR0qTjNRx8UB8jzRj3D+p9PMAp5LnpCUUGmz7/TppwA==", - "dependencies": { - "ws": "8.13.0" - }, - "optionalDependencies": { - "bufferutil": "4.0.7", - "utf-8-validate": "6.0.3" - } - }, - "node_modules/ganache/node_modules/@trufflesuite/uws-js-unofficial/node_modules/bufferutil": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.7.tgz", - "integrity": "sha512-kukuqc39WOHtdxtw4UScxF/WVnMFVSQVKhtx3AjZJzhd0RGZZldcrfSEbVsWWe6KNH253574cq5F+wpv0G9pJw==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=6.14.2" - } - }, - "node_modules/ganache/node_modules/@trufflesuite/uws-js-unofficial/node_modules/utf-8-validate": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-6.0.3.tgz", - "integrity": "sha512-uIuGf9TWQ/y+0Lp+KGZCMuJWc3N9BHA+l/UmHd/oUHwJJDeysyTRxNQVkbzsIWfGFbRe3OcgML/i0mvVRPOyDA==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=6.14.2" - } - }, - "node_modules/ganache/node_modules/@trufflesuite/uws-js-unofficial/node_modules/ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/ganache/node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@tsconfig/node16": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", - "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@types/abstract-leveldown": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@types/abstract-leveldown/-/abstract-leveldown-7.2.0.tgz", - "integrity": "sha512-q5veSX6zjUy/DlDhR4Y4cU0k2Ar+DT2LUraP00T19WLmTO6Se1djepCCaqU6nQrwcJ5Hyo/CWqxTzrrFg8eqbQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@types/argparse": { - "version": "1.0.38", - "resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-1.0.38.tgz", - "integrity": "sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@types/bn.js": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.0.tgz", - "integrity": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/ganache/node_modules/@types/eslint": { - "version": "8.4.10", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", - "integrity": "sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==", - "extraneous": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/ganache/node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "extraneous": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/ganache/node_modules/@types/estree": { - "version": "0.0.50", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", - "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@types/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" - }, - "node_modules/ganache/node_modules/@types/mocha": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.0.0.tgz", - "integrity": "sha512-scN0hAWyLVAvLR9AyW7HoFF5sJZglyBsbPuHO4fv7JRvfmPBMfp1ozWqOf/e4wwPNxezBZXRfWzMb6iFLgEVRA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@types/node": { - "version": "17.0.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.0.tgz", - "integrity": "sha512-eMhwJXc931Ihh4tkU+Y7GiLzT/y/DBNpNtr4yU9O2w3SYBsr9NaOPhQlLKRmoWtI54uNwuo0IOUFQjVOTZYRvw==" - }, - "node_modules/ganache/node_modules/@types/seedrandom": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/seedrandom/-/seedrandom-3.0.1.tgz", - "integrity": "sha512-giB9gzDeiCeloIXDgzFBCgjj1k4WxcDrZtGl6h1IqmUPlxF+Nx8Ve+96QCyDZ/HseB/uvDsKbpib9hU5cU53pw==" - }, - "node_modules/ganache/node_modules/@ungap/promise-all-settled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", - "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "extraneous": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "node_modules/ganache/node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "extraneous": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/ganache/node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "extraneous": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "node_modules/ganache/node_modules/@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "extraneous": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/ganache/node_modules/@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "extraneous": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/ganache/node_modules/@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "extraneous": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "node_modules/ganache/node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "extraneous": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/ganache/node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "extraneous": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "node_modules/ganache/node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "extraneous": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/ganache/node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "extraneous": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/ganache/node_modules/@webpack-cli/configtest": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", - "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@webpack-cli/info": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", - "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", - "extraneous": true, - "dependencies": { - "envinfo": "^7.7.3" - } - }, - "node_modules/ganache/node_modules/@webpack-cli/serve": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", - "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/abstract-level": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/abstract-level/-/abstract-level-1.0.3.tgz", - "integrity": "sha512-t6jv+xHy+VYwc4xqZMn2Pa9DjcdzvzZmQGRjTFc8spIbRGHgBrEKbPq+rYXc7CCo0lxgYvSgKVg9qZAhpVQSjA==", - "dependencies": { - "buffer": "^6.0.3", - "catering": "^2.1.0", - "is-buffer": "^2.0.5", - "level-supports": "^4.0.0", - "level-transcoder": "^1.0.1", - "module-error": "^1.0.1", - "queue-microtask": "^1.2.3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/ganache/node_modules/abstract-level/node_modules/level-supports": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-4.0.1.tgz", - "integrity": "sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA==", - "engines": { - "node": ">=12" - } - }, - "node_modules/ganache/node_modules/abstract-leveldown": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-7.2.0.tgz", - "integrity": "sha512-DnhQwcFEaYsvYDnACLZhMmCWd3rkOeEvglpa4q5i/5Jlm3UIsWaxVzuXvDLFCSCWRO3yy2/+V/G7FusFgejnfQ==", - "inBundle": true, - "license": "MIT", - "dependencies": { - "buffer": "^6.0.3", - "catering": "^2.0.0", - "is-buffer": "^2.0.5", - "level-concat-iterator": "^3.0.0", - "level-supports": "^2.0.1", - "queue-microtask": "^1.2.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/acorn": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", - "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", - "extraneous": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/ganache/node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "extraneous": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/ganache/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "extraneous": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "node_modules/ganache/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "extraneous": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "extraneous": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "extraneous": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/ganache/node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "extraneous": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/ganache/node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "extraneous": true, - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/ganache/node_modules/asn1.js/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "extraneous": true, - "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "node_modules/ganache/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dependencies": { - "lodash": "^4.17.14" - } - }, - "node_modules/ganache/node_modules/async-eventemitter": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/async-eventemitter/-/async-eventemitter-0.2.4.tgz", - "integrity": "sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw==", - "dependencies": { - "async": "^2.4.0" - } - }, - "node_modules/ganache/node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "extraneous": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "MIT" - }, - "node_modules/ganache/node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "extraneous": true, - "engines": { - "node": "*" - } - }, - "node_modules/ganache/node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "extraneous": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/ganache/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "extraneous": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "inBundle": true, - "license": "MIT" - }, - "node_modules/ganache/node_modules/browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "extraneous": true, - "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/ganache/node_modules/browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "extraneous": true, - "dependencies": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "node_modules/ganache/node_modules/browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "extraneous": true, - "dependencies": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/ganache/node_modules/browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", - "extraneous": true, - "dependencies": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" - } - }, - "node_modules/ganache/node_modules/browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "extraneous": true, - "dependencies": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "node_modules/ganache/node_modules/browserslist": { - "version": "4.21.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", - "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", - "extraneous": true, - "dependencies": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/ganache/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/ganache/node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/bufferutil": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.5.tgz", - "integrity": "sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=6.14.2" - } - }, - "node_modules/ganache/node_modules/builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "extraneous": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "node_modules/ganache/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "extraneous": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/caniuse-lite": { - "version": "1.0.30001435", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001435.tgz", - "integrity": "sha512-kdCkUTjR+v4YAJelyiDTqiu82BDr4W4CP5sgTA0ZBmqn30XfS2ZghPLMowik9TPhS+psWJiUNxsqLyurDbmutA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/catering": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz", - "integrity": "sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "extraneous": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/chalk/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "extraneous": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/chokidar": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", - "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", - "extraneous": true, - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/ganache/node_modules/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "extraneous": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/ganache/node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "extraneous": true, - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/ganache/node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "extraneous": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/ganache/node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "extraneous": true, - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "extraneous": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/ganache/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/colors": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz", - "integrity": "sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==", - "extraneous": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/ganache/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "extraneous": true - }, - "node_modules/ganache/node_modules/create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "extraneous": true, - "dependencies": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - } - }, - "node_modules/ganache/node_modules/create-ecdh/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "extraneous": true, - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "node_modules/ganache/node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "extraneous": true, - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "node_modules/ganache/node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/cross-env": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", - "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", - "extraneous": true, - "dependencies": { - "cross-spawn": "^7.0.1" - }, - "bin": { - "cross-env": "src/bin/cross-env.js", - "cross-env-shell": "src/bin/cross-env-shell.js" - }, - "engines": { - "node": ">=10.14", - "npm": ">=6", - "yarn": ">=1" - } - }, - "node_modules/ganache/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "extraneous": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/ganache/node_modules/crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "extraneous": true, - "dependencies": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - }, - "engines": { - "node": "*" - } - }, - "node_modules/ganache/node_modules/debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "extraneous": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/ganache/node_modules/debug/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, - "node_modules/ganache/node_modules/decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "extraneous": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "extraneous": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "extraneous": true, - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/ganache/node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "extraneous": true, - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/ganache/node_modules/diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "extraneous": true, - "dependencies": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "node_modules/ganache/node_modules/diffie-hellman/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/electron-to-chromium": { - "version": "1.4.284", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", - "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "inBundle": true, - "license": "MIT", - "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" - } - }, - "node_modules/ganache/node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "inBundle": true, - "license": "MIT" - }, - "node_modules/ganache/node_modules/emittery": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.10.0.tgz", - "integrity": "sha512-AGvFfs+d0JKCJQ4o01ASQLGPmSCxgfU9RFXvzPvZdjKK8oscynksuJhWrSTSw7j7Ep/sZct5b5ZhYCi8S/t0HQ==", - "engines": { - "node": ">=12" - } - }, - "node_modules/ganache/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "extraneous": true - }, - "node_modules/ganache/node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "extraneous": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/ganache/node_modules/enhanced-resolve": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", - "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", - "extraneous": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/ganache/node_modules/envinfo": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", - "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", - "extraneous": true, - "bin": { - "envinfo": "dist/cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ganache/node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "extraneous": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "extraneous": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "extraneous": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/ganache/node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "extraneous": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/ganache/node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "extraneous": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/ganache/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "extraneous": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/ganache/node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "extraneous": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/ganache/node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "extraneous": true, - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/ganache/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "extraneous": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "extraneous": true - }, - "node_modules/ganache/node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/fastest-levenshtein": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", - "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", - "extraneous": true, - "engines": { - "node": ">= 4.9.1" - } - }, - "node_modules/ganache/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "extraneous": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "extraneous": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "extraneous": true, - "bin": { - "flat": "cli.js" - } - }, - "node_modules/ganache/node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "extraneous": true, - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/ganache/node_modules/fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "extraneous": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/ganache/node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "extraneous": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/ganache/node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "extraneous": true - }, - "node_modules/ganache/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "extraneous": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/ganache/node_modules/get-intrinsic": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", - "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", - "extraneous": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "node_modules/ganache/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "extraneous": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "extraneous": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/ganache/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "extraneous": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/ganache/node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "extraneous": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - } - }, - "node_modules/ganache/node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "extraneous": true, - "engines": { - "node": ">=4.x" - } - }, - "node_modules/ganache/node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "extraneous": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/ganache/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "extraneous": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - } - }, - "node_modules/ganache/node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "extraneous": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "extraneous": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "extraneous": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ganache/node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "inBundle": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/ganache/node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "extraneous": true, - "bin": { - "he": "bin/he" - } - }, - "node_modules/ganache/node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "inBundle": true, - "license": "MIT", - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/ganache/node_modules/https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", - "extraneous": true - }, - "node_modules/ganache/node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "extraneous": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/ganache/node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "BSD-3-Clause" - }, - "node_modules/ganache/node_modules/import-lazy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", - "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "extraneous": true, - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "extraneous": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/ganache/node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "inBundle": true, - "license": "ISC" - }, - "node_modules/ganache/node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "extraneous": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/ganache/node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "extraneous": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "extraneous": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/ganache/node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "extraneous": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "extraneous": true, - "dependencies": { - "has": "^1.0.3" - } - }, - "node_modules/ganache/node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "extraneous": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ganache/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "extraneous": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "extraneous": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ganache/node_modules/is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "extraneous": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "extraneous": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/ganache/node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "extraneous": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ganache/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", - "extraneous": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "extraneous": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "extraneous": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ganache/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "extraneous": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/ganache/node_modules/jju": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", - "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "extraneous": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/ganache/node_modules/js-yaml/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "extraneous": true - }, - "node_modules/ganache/node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "extraneous": true - }, - "node_modules/ganache/node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "extraneous": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "extraneous": true, - "dependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/ganache/node_modules/keccak": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", - "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", - "hasInstallScript": true, - "inBundle": true, - "license": "MIT", - "dependencies": { - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/ganache/node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "extraneous": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ganache/node_modules/level-concat-iterator": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-3.1.0.tgz", - "integrity": "sha512-BWRCMHBxbIqPxJ8vHOvKUsaO0v1sLYZtjN3K2iZJsRBYtp+ONsY6Jfi6hy9K3+zolgQRryhIn2NRZjZnWJ9NmQ==", - "inBundle": true, - "license": "MIT", - "dependencies": { - "catering": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/level-js": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/level-js/-/level-js-6.1.0.tgz", - "integrity": "sha512-i7mPtkZm68aewfv0FnIUWvFUFfoyzIvVKnUmuQGrelEkP72vSPTaA1SGneWWoCV5KZJG4wlzbJLp1WxVNGuc6A==", - "extraneous": true, - "dependencies": { - "abstract-leveldown": "^7.2.0", - "buffer": "^6.0.3", - "inherits": "^2.0.3", - "ltgt": "^2.1.2", - "run-parallel-limit": "^1.1.0" - } - }, - "node_modules/ganache/node_modules/level-supports": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-2.1.0.tgz", - "integrity": "sha512-E486g1NCjW5cF78KGPrMDRBYzPuueMZ6VBXHT6gC7A8UYWGiM14fGgp+s/L1oFfDWSPV/+SFkYCmZ0SiESkRKA==", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/level-transcoder": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-transcoder/-/level-transcoder-1.0.1.tgz", - "integrity": "sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w==", - "dependencies": { - "buffer": "^6.0.3", - "module-error": "^1.0.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/ganache/node_modules/leveldown": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-6.1.0.tgz", - "integrity": "sha512-8C7oJDT44JXxh04aSSsfcMI8YiaGRhOFI9/pMEL7nWJLVsWajDPTRxsSHTM2WcTVY5nXM+SuRHzPPi0GbnDX+w==", - "hasInstallScript": true, - "inBundle": true, - "license": "MIT", - "dependencies": { - "abstract-leveldown": "^7.2.0", - "napi-macros": "~2.0.0", - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/ganache/node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "extraneous": true, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/ganache/node_modules/loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "extraneous": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/ganache/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "extraneous": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "node_modules/ganache/node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "extraneous": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "extraneous": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/ltgt": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", - "integrity": "sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/mcl-wasm": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.9.0.tgz", - "integrity": "sha512-rvU7L/68ZrDk4dpPZteiEqvK9nB/1XbbHmuLK6qIvc4xuuJb/iv1p5X3KEyq6AYatLnc+zbdSlLXTlKgTnCRZQ==", - "extraneous": true, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/ganache/node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "extraneous": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/ganache/node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "extraneous": true - }, - "node_modules/ganache/node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "extraneous": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/ganache/node_modules/miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "extraneous": true, - "dependencies": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "bin": { - "miller-rabin": "bin/miller-rabin" - } - }, - "node_modules/ganache/node_modules/miller-rabin/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "extraneous": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/ganache/node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "extraneous": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/ganache/node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "extraneous": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "inBundle": true, - "license": "ISC" - }, - "node_modules/ganache/node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "inBundle": true, - "license": "MIT" - }, - "node_modules/ganache/node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "extraneous": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/ganache/node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", - "extraneous": true - }, - "node_modules/ganache/node_modules/mocha": { - "version": "9.1.3", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.1.3.tgz", - "integrity": "sha512-Xcpl9FqXOAYqI3j79pEtHBBnQgVXIhpULjGQa7DVb0Po+VzmSIK9kanAiWLHoRR/dbZ2qpdPshuXr8l1VaHCzw==", - "extraneous": true, - "dependencies": { - "@ungap/promise-all-settled": "1.1.2", - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.2", - "debug": "4.3.2", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.1.7", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "3.0.4", - "ms": "2.1.3", - "nanoid": "3.1.25", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "which": "2.0.2", - "workerpool": "6.1.5", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/ganache/node_modules/module-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/module-error/-/module-error-1.0.2.tgz", - "integrity": "sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/nanoid": { - "version": "3.1.25", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", - "integrity": "sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==", - "extraneous": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/ganache/node_modules/napi-macros": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz", - "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==", - "inBundle": true, - "license": "MIT" - }, - "node_modules/ganache/node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/node-addon-api": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", - "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==", - "inBundle": true, - "license": "MIT" - }, - "node_modules/ganache/node_modules/node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", - "inBundle": true, - "license": "MIT", - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/ganache/node_modules/node-loader": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/node-loader/-/node-loader-1.0.2.tgz", - "integrity": "sha512-myxAxpyMR7knjA4Uzwf3gjxaMtxSWj2vpm9o6AYWWxQ1S3XMBNeG2vzYcp/5eW03cBGfgSxyP+wntP8qhBJNhQ==", - "extraneous": true, - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/ganache/node_modules/node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", - "extraneous": true - }, - "node_modules/ganache/node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "extraneous": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ganache/node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "extraneous": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", - "extraneous": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "extraneous": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ganache/node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "extraneous": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/ganache/node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "extraneous": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", - "extraneous": true - }, - "node_modules/ganache/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "extraneous": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "extraneous": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "extraneous": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "extraneous": true, - "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/ganache/node_modules/path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", - "extraneous": true - }, - "node_modules/ganache/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "extraneous": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ganache/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "extraneous": true - }, - "node_modules/ganache/node_modules/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "extraneous": true, - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/ganache/node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "extraneous": true, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/ganache/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "extraneous": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "extraneous": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "extraneous": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "extraneous": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "extraneous": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "extraneous": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/ganache/node_modules/public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "extraneous": true, - "dependencies": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/ganache/node_modules/public-encrypt/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "extraneous": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "MIT" - }, - "node_modules/ganache/node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "extraneous": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/ganache/node_modules/randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "extraneous": true, - "dependencies": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "node_modules/ganache/node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "inBundle": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/ganache/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "extraneous": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/ganache/node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", - "extraneous": true, - "dependencies": { - "resolve": "^1.1.6" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/ganache/node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "extraneous": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ganache/node_modules/resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "extraneous": true, - "dependencies": { - "path-parse": "^1.0.6" - } - }, - "node_modules/ganache/node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "extraneous": true, - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "extraneous": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "node_modules/ganache/node_modules/run-parallel-limit": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.1.0.tgz", - "integrity": "sha512-jJA7irRNM91jaKc3Hcl1npHsFLOXOoTkPCUL1JEa1R82O2miplXXRaGdjW/KM/98YQWDhJLiSs793CnXfblJUw==", - "extraneous": true, - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/ganache/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "MIT" - }, - "node_modules/ganache/node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "extraneous": true - }, - "node_modules/ganache/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "extraneous": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/ganache/node_modules/scrypt-js": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", - "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", - "hasInstallScript": true, - "inBundle": true, - "license": "MIT", - "dependencies": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/ganache/node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "extraneous": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ganache/node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "extraneous": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/ganache/node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "extraneous": true, - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" - } - }, - "node_modules/ganache/node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "extraneous": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "extraneous": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/shebang-loader": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/shebang-loader/-/shebang-loader-0.0.1.tgz", - "integrity": "sha512-nQvhUHvKyzGK5aqPxHfHB5nlAN2EZ2U61S2G0YrxAuCRU5iGhFcxxRiaAdb18UoRS1zVMhRz4gdQ1xFEg3AOyA==", - "extraneous": true - }, - "node_modules/ganache/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", - "extraneous": true, - "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ganache/node_modules/shx": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/shx/-/shx-0.3.3.tgz", - "integrity": "sha512-nZJ3HFWVoTSyyB+evEKjJ1STiixGztlqwKLTUNV5KqMWtGey9fTd4KU1gdZ1X9BV6215pswQ/Jew9NsuS/fNDA==", - "extraneous": true, - "dependencies": { - "minimist": "^1.2.3", - "shelljs": "^0.8.4" - }, - "bin": { - "shx": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "extraneous": true - }, - "node_modules/ganache/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "extraneous": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ganache/node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "extraneous": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/ganache/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "node_modules/ganache/node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", "extraneous": true }, - "node_modules/ganache/node_modules/stream-browserify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "extraneous": true, - "dependencies": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } + "node_modules/ganache/node_modules/@types/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" }, - "node_modules/ganache/node_modules/stream-http": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", - "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", - "extraneous": true, - "dependencies": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" - } + "node_modules/ganache/node_modules/@types/mocha": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.0.0.tgz", + "integrity": "sha512-scN0hAWyLVAvLR9AyW7HoFF5sJZglyBsbPuHO4fv7JRvfmPBMfp1ozWqOf/e4wwPNxezBZXRfWzMb6iFLgEVRA==", + "extraneous": true }, - "node_modules/ganache/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "inBundle": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.2.0" - } + "node_modules/ganache/node_modules/@types/node": { + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.0.tgz", + "integrity": "sha512-eMhwJXc931Ihh4tkU+Y7GiLzT/y/DBNpNtr4yU9O2w3SYBsr9NaOPhQlLKRmoWtI54uNwuo0IOUFQjVOTZYRvw==" }, - "node_modules/ganache/node_modules/string-argv": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", - "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", - "extraneous": true, - "engines": { - "node": ">=0.6.19" - } + "node_modules/ganache/node_modules/@types/seedrandom": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/seedrandom/-/seedrandom-3.0.1.tgz", + "integrity": "sha512-giB9gzDeiCeloIXDgzFBCgjj1k4WxcDrZtGl6h1IqmUPlxF+Nx8Ve+96QCyDZ/HseB/uvDsKbpib9hU5cU53pw==" }, - "node_modules/ganache/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "extraneous": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } + "node_modules/ganache/node_modules/@ungap/promise-all-settled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", + "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", + "extraneous": true }, - "node_modules/ganache/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/ganache/node_modules/@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", "extraneous": true, "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ganache/node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "extraneous": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ganache/node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "extraneous": true, - "engines": { - "node": ">=8" + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" } }, - "node_modules/ganache/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "extraneous": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - } + "node_modules/ganache/node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", + "extraneous": true }, - "node_modules/ganache/node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "extraneous": true, - "engines": { - "node": ">=6" - } + "node_modules/ganache/node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", + "extraneous": true }, - "node_modules/ganache/node_modules/terser": { - "version": "5.16.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", - "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", - "extraneous": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } + "node_modules/ganache/node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", + "extraneous": true }, - "node_modules/ganache/node_modules/terser-webpack-plugin": { - "version": "5.2.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.2.5.tgz", - "integrity": "sha512-3luOVHku5l0QBeYS8r4CdHYWEGMmIj3H1U64jgkdZzECcSOJAyJ9TjuqcQZvw1Y+4AOBN9SeYJPJmFn2cM4/2g==", + "node_modules/ganache/node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", "extraneous": true, "dependencies": { - "jest-worker": "^27.0.6", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1", - "terser": "^5.7.2" - }, - "engines": { - "node": ">= 10.13.0" + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" } }, - "node_modules/ganache/node_modules/timsort": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", - "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==", + "node_modules/ganache/node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", "extraneous": true }, - "node_modules/ganache/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "extraneous": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/ganache/node_modules/ts-loader": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.3.1.tgz", - "integrity": "sha512-OkyShkcZTsTwyS3Kt7a4rsT/t2qvEVQuKCTg4LJmpj9fhFR7ukGdZwV6Qq3tRUkqcXtfGpPR7+hFKHCG/0d3Lw==", + "node_modules/ganache/node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", "extraneous": true, "dependencies": { - "chalk": "^4.1.0", - "enhanced-resolve": "^5.0.0", - "micromatch": "^4.0.0", - "semver": "^7.3.4" - }, - "engines": { - "node": ">=12.0.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" } }, - "node_modules/ganache/node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "extraneous": true, - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" + "node_modules/ganache/node_modules/@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "extraneous": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" } }, - "node_modules/ganache/node_modules/ts-node/node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "node_modules/ganache/node_modules/@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", "extraneous": true, - "engines": { - "node": ">=0.3.1" + "dependencies": { + "@xtuc/long": "4.2.2" } }, - "node_modules/ganache/node_modules/typescript": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", - "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "node_modules/ganache/node_modules/@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", "extraneous": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" } }, - "node_modules/ganache/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "node_modules/ganache/node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", "extraneous": true, - "engines": { - "node": ">= 4.0.0" + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" } }, - "node_modules/ganache/node_modules/update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "node_modules/ganache/node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", "extraneous": true, "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" } }, - "node_modules/ganache/node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "node_modules/ganache/node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", "extraneous": true, "dependencies": { - "punycode": "^2.1.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" } }, - "node_modules/ganache/node_modules/utf-8-validate": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.7.tgz", - "integrity": "sha512-vLt1O5Pp+flcArHGIyKEQq883nBt8nN8tVBcoL0qUXj2XT1n7p70yGIq2VK98I5FdZ1YHc0wk/koOnHjnXWk1Q==", - "hasInstallScript": true, - "optional": true, + "node_modules/ganache/node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "extraneous": true, "dependencies": { - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=6.14.2" + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" } }, - "node_modules/ganache/node_modules/util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "node_modules/ganache/node_modules/@webpack-cli/configtest": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", + "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", + "extraneous": true + }, + "node_modules/ganache/node_modules/@webpack-cli/info": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", + "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", "extraneous": true, "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", - "which-typed-array": "^1.1.2" + "envinfo": "^7.7.3" } }, - "node_modules/ganache/node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "inBundle": true, - "license": "MIT" + "node_modules/ganache/node_modules/@webpack-cli/serve": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", + "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", + "extraneous": true }, - "node_modules/ganache/node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "node_modules/ganache/node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", "extraneous": true }, - "node_modules/ganache/node_modules/validator": { - "version": "13.7.0", - "resolved": "https://registry.npmjs.org/validator/-/validator-13.7.0.tgz", - "integrity": "sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw==", - "extraneous": true, + "node_modules/ganache/node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/abstract-level": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/abstract-level/-/abstract-level-1.0.3.tgz", + "integrity": "sha512-t6jv+xHy+VYwc4xqZMn2Pa9DjcdzvzZmQGRjTFc8spIbRGHgBrEKbPq+rYXc7CCo0lxgYvSgKVg9qZAhpVQSjA==", + "dependencies": { + "buffer": "^6.0.3", + "catering": "^2.1.0", + "is-buffer": "^2.0.5", + "level-supports": "^4.0.0", + "level-transcoder": "^1.0.1", + "module-error": "^1.0.1", + "queue-microtask": "^1.2.3" + }, "engines": { - "node": ">= 0.10" + "node": ">=12" } }, - "node_modules/ganache/node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "extraneous": true, + "node_modules/ganache/node_modules/abstract-level/node_modules/level-supports": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-4.0.1.tgz", + "integrity": "sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/ganache/node_modules/abstract-leveldown": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-7.2.0.tgz", + "integrity": "sha512-DnhQwcFEaYsvYDnACLZhMmCWd3rkOeEvglpa4q5i/5Jlm3UIsWaxVzuXvDLFCSCWRO3yy2/+V/G7FusFgejnfQ==", + "inBundle": true, + "license": "MIT", "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" + "buffer": "^6.0.3", + "catering": "^2.0.0", + "is-buffer": "^2.0.5", + "level-concat-iterator": "^3.0.0", + "level-supports": "^2.0.1", + "queue-microtask": "^1.2.3" }, "engines": { - "node": ">=10.13.0" + "node": ">=10" } }, - "node_modules/ganache/node_modules/webpack": { - "version": "5.65.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.65.0.tgz", - "integrity": "sha512-Q5or2o6EKs7+oKmJo7LaqZaMOlDWQse9Tm5l1WAfU/ujLGN5Pb0SqGeVkN/4bpPmEqEP5RnVhiqsOtWtUVwGRw==", + "node_modules/ganache/node_modules/acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "extraneous": true, - "dependencies": { - "@types/eslint-scope": "^3.7.0", - "@types/estree": "^0.0.50", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.8.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.4", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.2" - }, "bin": { - "webpack": "bin/webpack.js" + "acorn": "bin/acorn" }, "engines": { - "node": ">=10.13.0" + "node": ">=0.4.0" + } + }, + "node_modules/ganache/node_modules/acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "extraneous": true, + "engines": { + "node": ">=0.4.0" } }, - "node_modules/ganache/node_modules/webpack-cli": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.1.tgz", - "integrity": "sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ==", + "node_modules/ganache/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "extraneous": true, "dependencies": { - "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.1.0", - "@webpack-cli/info": "^1.4.0", - "@webpack-cli/serve": "^1.6.0", - "colorette": "^2.0.14", - "commander": "^7.0.0", - "execa": "^5.0.0", - "fastest-levenshtein": "^1.0.12", - "import-local": "^3.0.2", - "interpret": "^2.2.0", - "rechoir": "^0.7.0", - "webpack-merge": "^5.7.3" - }, - "bin": { - "webpack-cli": "bin/cli.js" - }, - "engines": { - "node": ">=10.13.0" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, - "node_modules/ganache/node_modules/webpack-cli/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "node_modules/ganache/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", "extraneous": true, "engines": { - "node": ">= 10" + "node": ">=6" } }, - "node_modules/ganache/node_modules/webpack-cli/node_modules/interpret": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "node_modules/ganache/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "extraneous": true, "engines": { - "node": ">= 0.10" + "node": ">=8" } }, - "node_modules/ganache/node_modules/webpack-cli/node_modules/rechoir": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", - "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", + "node_modules/ganache/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "extraneous": true, "dependencies": { - "resolve": "^1.9.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 0.10" + "node": ">=8" } }, - "node_modules/ganache/node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "node_modules/ganache/node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "extraneous": true, "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": ">=10.0.0" + "node": ">= 8" } }, - "node_modules/ganache/node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "node_modules/ganache/node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "extraneous": true, - "engines": { - "node": ">=10.13.0" + "dependencies": { + "sprintf-js": "~1.0.2" } }, - "node_modules/ganache/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "node_modules/ganache/node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", "extraneous": true, "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" } }, - "node_modules/ganache/node_modules/which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "node_modules/ganache/node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/assert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", + "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", "extraneous": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, + "es6-object-assign": "^1.1.0", + "is-nan": "^1.2.1", + "object-is": "^1.0.1", + "util": "^0.12.0" + } + }, + "node_modules/ganache/node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/ganache/node_modules/async-eventemitter": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/async-eventemitter/-/async-eventemitter-0.2.4.tgz", + "integrity": "sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw==", + "dependencies": { + "async": "^2.4.0" + } + }, + "node_modules/ganache/node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "extraneous": true, "engines": { "node": ">= 0.4" } }, - "node_modules/ganache/node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "node_modules/ganache/node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "extraneous": true }, - "node_modules/ganache/node_modules/workerpool": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.5.tgz", - "integrity": "sha512-XdKkCK0Zqc6w3iTxLckiuJ81tiD/o5rBE/m+nXpRCB+/Sq4DqkfXZ/x0jW02DG1tGsfUGXbTJyZDP+eu67haSw==", - "extraneous": true + "node_modules/ganache/node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "MIT" }, - "node_modules/ganache/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "node_modules/ganache/node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "extraneous": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, "engines": { - "node": ">=10" + "node": "*" } }, - "node_modules/ganache/node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "node_modules/ganache/node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ganache/node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", "extraneous": true }, - "node_modules/ganache/node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "node_modules/ganache/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "extraneous": true, - "engines": { - "node": ">=0.4" + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/ganache/node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "node_modules/ganache/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "extraneous": true, + "dependencies": { + "fill-range": "^7.0.1" + }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/ganache/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/ganache/node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "inBundle": true, + "license": "MIT" + }, + "node_modules/ganache/node_modules/browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "extraneous": true }, - "node_modules/ganache/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "node_modules/ganache/node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "extraneous": true, "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, - "node_modules/ganache/node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "node_modules/ganache/node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "extraneous": true, - "engines": { - "node": ">=10" + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" } }, - "node_modules/ganache/node_modules/yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "node_modules/ganache/node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "extraneous": true, "dependencies": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "engines": { - "node": ">=10" + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" } }, - "node_modules/ganache/node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "node_modules/ganache/node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", "extraneous": true, - "engines": { - "node": ">=6" + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" } }, - "node_modules/ganache/node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "node_modules/ganache/node_modules/browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", "extraneous": true, - "engines": { - "node": ">=10" + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" } }, - "node_modules/ganache/node_modules/z-schema": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-5.0.4.tgz", - "integrity": "sha512-gm/lx3hDzJNcLwseIeQVm1UcwhWIKpSB4NqH89pTBtFns4k/HDHudsICtvG05Bvw/Mv3jMyk700y5dadueLHdA==", + "node_modules/ganache/node_modules/browserslist": { + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", "extraneous": true, "dependencies": { - "commander": "^2.20.3", - "lodash.get": "^4.4.2", - "lodash.isequal": "^4.5.0", - "validator": "^13.7.0" + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" }, "bin": { - "z-schema": "bin/z-schema" + "browserslist": "cli.js" }, "engines": { - "node": ">=8.0.0" + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" + "node_modules/ganache/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, + "node_modules/ganache/node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/bufferutil": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.5.tgz", + "integrity": "sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "node-gyp-build": "^4.3.0" + }, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">=6.14.2" } }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, + "node_modules/ganache/node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "extraneous": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "node_modules/ganache/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "extraneous": true, "engines": { - "node": "*" + "node": ">=10" } }, - "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, + "node_modules/ganache/node_modules/caniuse-lite": { + "version": "1.0.30001435", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001435.tgz", + "integrity": "sha512-kdCkUTjR+v4YAJelyiDTqiu82BDr4W4CP5sgTA0ZBmqn30XfS2ZghPLMowik9TPhS+psWJiUNxsqLyurDbmutA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/catering": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz", + "integrity": "sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==", + "inBundle": true, + "license": "MIT", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, + "node_modules/ganache/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { - "node": ">=8.0.0" + "node": ">=10" } }, - "node_modules/get-pkg-repo": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz", - "integrity": "sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==", - "dev": true, + "node_modules/ganache/node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "extraneous": true, "dependencies": { - "@hutson/parse-repository-url": "^3.0.0", - "hosted-git-info": "^4.0.0", - "through2": "^2.0.0", - "yargs": "^16.2.0" - }, - "bin": { - "get-pkg-repo": "src/cli.js" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=8" } }, - "node_modules/get-pkg-repo/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, + "node_modules/ganache/node_modules/chokidar": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "extraneous": true, "dependencies": { - "lru-cache": "^6.0.0" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">=10" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/get-pkg-repo/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, + "node_modules/ganache/node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "extraneous": true, "engines": { - "node": ">=10" + "node": ">=6.0" } }, - "node_modules/get-pkg-repo/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/ganache/node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "extraneous": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } }, - "node_modules/get-pkg-repo/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, + "node_modules/ganache/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "extraneous": true, "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "node_modules/get-port": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", - "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/ganache/node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "extraneous": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=6" } }, - "node_modules/get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true, + "node_modules/ganache/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "extraneous": true, + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=4" + "node": ">=7.0.0" } }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, + "node_modules/ganache/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/colors": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz", + "integrity": "sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==", + "extraneous": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.1.90" } }, - "node_modules/get-symbol-description": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", - "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", - "dev": true, + "node_modules/ganache/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "extraneous": true + }, + "node_modules/ganache/node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" } }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, + "node_modules/ganache/node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "extraneous": true, "dependencies": { - "assert-plus": "^1.0.0" + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" } }, - "node_modules/ghost-testrpc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/ghost-testrpc/-/ghost-testrpc-0.0.2.tgz", - "integrity": "sha512-i08dAEgJ2g8z5buJIrCTduwPIhih3DP+hOCTyyryikfV8T0bNvHnGXO67i0DD1H4GBDETTclPy9njZbfluQYrQ==", - "dev": true, + "node_modules/ganache/node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "extraneous": true, "dependencies": { - "chalk": "^2.4.2", - "node-emoji": "^1.10.0" - }, - "bin": { - "testrpc-sc": "index.js" + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, - "node_modules/git-raw-commits": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-3.0.0.tgz", - "integrity": "sha512-b5OHmZ3vAgGrDn/X0kS+9qCfNKWe4K/jFnhwzVWWg0/k5eLa3060tZShrRg8Dja5kPc+YjS0Gc6y7cRr44Lpjw==", - "dev": true, + "node_modules/ganache/node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "extraneous": true, "dependencies": { - "dargs": "^7.0.0", - "meow": "^8.1.2", - "split2": "^3.2.2" + "cross-spawn": "^7.0.1" }, "bin": { - "git-raw-commits": "cli.js" + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" }, "engines": { - "node": ">=14" + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" } }, - "node_modules/git-remote-origin-url": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz", - "integrity": "sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==", - "dev": true, + "node_modules/ganache/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "extraneous": true, "dependencies": { - "gitconfiglocal": "^1.0.0", - "pify": "^2.3.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">= 8" } }, - "node_modules/git-remote-origin-url/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, + "node_modules/ganache/node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "extraneous": true, + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, "engines": { - "node": ">=0.10.0" + "node": "*" } }, - "node_modules/git-semver-tags": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-5.0.1.tgz", - "integrity": "sha512-hIvOeZwRbQ+7YEUmCkHqo8FOLQZCEn18yevLHADlFPZY02KJGsu5FZt9YW/lybfK2uhWFI7Qg/07LekJiTv7iA==", - "dev": true, + "node_modules/ganache/node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "extraneous": true, "dependencies": { - "meow": "^8.1.2", - "semver": "^7.0.0" - }, - "bin": { - "git-semver-tags": "cli.js" + "ms": "2.1.2" }, "engines": { - "node": ">=14" + "node": ">=6.0" } }, - "node_modules/git-semver-tags/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, + "node_modules/ganache/node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "extraneous": true + }, + "node_modules/ganache/node_modules/decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "extraneous": true, "engines": { "node": ">=10" } }, - "node_modules/git-up": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz", - "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==", - "dev": true, - "dependencies": { - "is-ssh": "^1.4.0", - "parse-url": "^8.1.0" - } - }, - "node_modules/git-url-parse": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-14.0.0.tgz", - "integrity": "sha512-NnLweV+2A4nCvn4U/m2AoYu0pPKlsmhK9cknG7IMwsjFY1S2jxM+mAhsDxyxfCIGfGaD+dozsyX4b6vkYc83yQ==", - "dev": true, + "node_modules/ganache/node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "extraneous": true, "dependencies": { - "git-up": "^7.0.0" + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/gitconfiglocal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz", - "integrity": "sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==", - "dev": true, + "node_modules/ganache/node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "extraneous": true, "dependencies": { - "ini": "^1.3.2" + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "devOptional": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, + "node_modules/ganache/node_modules/diff": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", + "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "extraneous": true, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=0.3.1" } }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, + "node_modules/ganache/node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "extraneous": true, "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" } }, - "node_modules/global": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", - "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", - "dev": true, + "node_modules/ganache/node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/electron-to-chromium": { + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "inBundle": true, + "license": "MIT", "dependencies": { - "min-document": "^2.19.0", - "process": "^0.11.10" + "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" } }, - "node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dev": true, - "dependencies": { - "global-prefix": "^3.0.0" - }, + "node_modules/ganache/node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "inBundle": true, + "license": "MIT" + }, + "node_modules/ganache/node_modules/emittery": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.10.0.tgz", + "integrity": "sha512-AGvFfs+d0JKCJQ4o01ASQLGPmSCxgfU9RFXvzPvZdjKK8oscynksuJhWrSTSw7j7Ep/sZct5b5ZhYCi8S/t0HQ==", "engines": { - "node": ">=6" + "node": ">=12" } }, - "node_modules/global-prefix": { + "node_modules/ganache/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "extraneous": true + }, + "node_modules/ganache/node_modules/emojis-list": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dev": true, - "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">= 4" } }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, + "node_modules/ganache/node_modules/enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "extraneous": true, "dependencies": { - "isexe": "^2.0.0" + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" }, - "bin": { - "which": "bin/which" + "engines": { + "node": ">=10.13.0" } }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, + "node_modules/ganache/node_modules/envinfo": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", + "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", + "extraneous": true, + "bin": { + "envinfo": "dist/cli.js" + }, "engines": { "node": ">=4" } }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dependencies": { - "define-properties": "^1.1.3" - }, + "node_modules/ganache/node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/es6-object-assign": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", + "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "extraneous": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, + "node_modules/ganache/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "extraneous": true, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "node_modules/ganache/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "extraneous": true, "dependencies": { - "get-intrinsic": "^1.1.3" + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8.0.0" } }, - "node_modules/got": { - "version": "11.8.6", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", - "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", - "devOptional": true, + "node_modules/ganache/node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "extraneous": true, "dependencies": { - "@sindresorhus/is": "^4.0.0", - "@szmarczak/http-timer": "^4.0.5", - "@types/cacheable-request": "^6.0.1", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.2", - "decompress-response": "^6.0.0", - "http2-wrapper": "^1.0.0-beta.5.2", - "lowercase-keys": "^2.0.0", - "p-cancelable": "^2.0.0", - "responselike": "^2.0.0" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=10.19.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" + "node": ">=4.0" } }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "node_modules/handlebars": { - "version": "4.7.8", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", - "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.2", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" - }, + "node_modules/ganache/node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "extraneous": true, "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" + "node": ">=4.0" } }, - "node_modules/har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", - "dev": true, + "node_modules/ganache/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=4.0" } }, - "node_modules/har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "deprecated": "this library is no longer supported", - "dev": true, - "dependencies": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - }, + "node_modules/ganache/node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">=0.8.x" } }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true, - "engines": { - "node": ">=6" + "node_modules/ganache/node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "extraneous": true, + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" } }, - "node_modules/hardhat": { - "version": "2.19.5", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.19.5.tgz", - "integrity": "sha512-vx8R7zWCYVgM56vA6o0Wqx2bIIptkN4TMs9QwDqZVNGRhMzBfzqUeEYbp+69gxWp1neg2V2nYQUaaUv7aom1kw==", - "dev": true, + "node_modules/ganache/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "extraneous": true, "dependencies": { - "@ethersproject/abi": "^5.1.2", - "@metamask/eth-sig-util": "^4.0.0", - "@nomicfoundation/ethereumjs-block": "5.0.2", - "@nomicfoundation/ethereumjs-blockchain": "7.0.2", - "@nomicfoundation/ethereumjs-common": "4.0.2", - "@nomicfoundation/ethereumjs-evm": "2.0.2", - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "@nomicfoundation/ethereumjs-statemanager": "2.0.2", - "@nomicfoundation/ethereumjs-trie": "6.0.2", - "@nomicfoundation/ethereumjs-tx": "5.0.2", - "@nomicfoundation/ethereumjs-util": "9.0.2", - "@nomicfoundation/ethereumjs-vm": "7.0.2", - "@nomicfoundation/solidity-analyzer": "^0.1.0", - "@sentry/node": "^5.18.1", - "@types/bn.js": "^5.1.0", - "@types/lru-cache": "^5.1.0", - "adm-zip": "^0.4.16", - "aggregate-error": "^3.0.0", - "ansi-escapes": "^4.3.0", - "boxen": "^5.1.2", - "chalk": "^2.4.2", - "chokidar": "^3.4.0", - "ci-info": "^2.0.0", - "debug": "^4.1.1", - "enquirer": "^2.3.0", - "env-paths": "^2.2.0", - "ethereum-cryptography": "^1.0.3", - "ethereumjs-abi": "^0.6.8", - "find-up": "^2.1.0", - "fp-ts": "1.19.3", - "fs-extra": "^7.0.1", - "glob": "7.2.0", - "immutable": "^4.0.0-rc.12", - "io-ts": "1.10.4", - "keccak": "^3.0.2", - "lodash": "^4.17.11", - "mnemonist": "^0.38.0", - "mocha": "^10.0.0", - "p-map": "^4.0.0", - "raw-body": "^2.4.1", - "resolve": "1.17.0", - "semver": "^6.3.0", - "solc": "0.7.3", - "source-map-support": "^0.5.13", - "stacktrace-parser": "^0.1.10", - "tsort": "0.0.1", - "undici": "^5.14.0", - "uuid": "^8.3.2", - "ws": "^7.4.6" - }, - "bin": { - "hardhat": "internal/cli/bootstrap.js" - }, - "peerDependencies": { - "ts-node": "*", - "typescript": "*" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - }, - "typescript": { - "optional": true - } + "engines": { + "node": ">=10" + } + }, + "node_modules/ganache/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "extraneous": true + }, + "node_modules/ganache/node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "extraneous": true, + "engines": { + "node": ">= 4.9.1" } }, - "node_modules/hardhat-gas-reporter": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/hardhat-gas-reporter/-/hardhat-gas-reporter-1.0.10.tgz", - "integrity": "sha512-02N4+So/fZrzJ88ci54GqwVA3Zrf0C9duuTyGt0CFRIh/CdNwbnTgkXkRfojOMLBQ+6t+lBIkgbsOtqMvNwikA==", - "dev": true, + "node_modules/ganache/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "extraneous": true, "dependencies": { - "array-uniq": "1.0.3", - "eth-gas-reporter": "^0.2.25", - "sha1": "^1.1.1" + "to-regex-range": "^5.0.1" }, - "peerDependencies": { - "hardhat": "^2.0.2" + "engines": { + "node": ">=8" } }, - "node_modules/hardhat/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", - "dev": true, + "node_modules/ganache/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "extraneous": true, "dependencies": { - "locate-path": "^2.0.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/hardhat/node_modules/fs-extra": { + "node_modules/ganache/node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "extraneous": true, + "bin": { + "flat": "cli.js" + } + }, + "node_modules/ganache/node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "extraneous": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/ganache/node_modules/fs-extra": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "dev": true, + "extraneous": true, "dependencies": { "graceful-fs": "^4.1.2", "jsonfile": "^4.0.0", @@ -18036,180 +13440,331 @@ "node": ">=6 <7 || >=8" } }, - "node_modules/hardhat/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "node_modules/ganache/node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "extraneous": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/hardhat/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", - "dev": true, + "node_modules/ganache/node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "extraneous": true + }, + "node_modules/ganache/node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "extraneous": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/ganache/node_modules/get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "extraneous": true, "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "node_modules/ganache/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "extraneous": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ganache/node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "extraneous": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=4" + "node": "*" } }, - "node_modules/hardhat/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, + "node_modules/ganache/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "extraneous": true, "dependencies": { - "p-try": "^1.0.0" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=4" + "node": ">= 6" } }, - "node_modules/hardhat/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", - "dev": true, + "node_modules/ganache/node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "extraneous": true, "dependencies": { - "p-limit": "^1.1.0" + "get-intrinsic": "^1.1.3" + } + }, + "node_modules/ganache/node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "extraneous": true, + "engines": { + "node": ">=4.x" + } + }, + "node_modules/ganache/node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "extraneous": true, + "dependencies": { + "function-bind": "^1.1.1" }, "engines": { - "node": ">=4" + "node": ">= 0.4.0" } }, - "node_modules/hardhat/node_modules/p-try": { + "node_modules/ganache/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ganache/node_modules/has-property-descriptors": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", - "dev": true, + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "extraneous": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + } + }, + "node_modules/ganache/node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "node_modules/hardhat/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true, + "node_modules/ganache/node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "extraneous": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ganache/node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "extraneous": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, "engines": { "node": ">=4" } }, - "node_modules/hardhat/node_modules/resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dev": true, + "node_modules/ganache/node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "inBundle": true, + "license": "MIT", "dependencies": { - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" } }, - "node_modules/hardhat/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" + "node_modules/ganache/node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "extraneous": true, + "bin": { + "he": "bin/he" } }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/ganache/node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "inBundle": true, + "license": "MIT", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" } }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, + "node_modules/ganache/node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", + "extraneous": true + }, + "node_modules/ganache/node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=10.17.0" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "node_modules/ganache/node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "BSD-3-Clause" + }, + "node_modules/ganache/node_modules/import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ganache/node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "extraneous": true, "dependencies": { - "es-define-property": "^1.0.0" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" } }, - "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/ganache/node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "extraneous": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "node_modules/ganache/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/ganache/node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "extraneous": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.10" } }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, + "node_modules/ganache/node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "extraneous": true, "dependencies": { - "has-symbols": "^1.0.3" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "node_modules/ganache/node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "extraneous": true, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" + "binary-extensions": "^2.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/hash-base/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "node_modules/ganache/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", "funding": [ { "type": "github", @@ -18223,2783 +13778,3080 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/ganache/node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ganache/node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "extraneous": true, + "dependencies": { + "has": "^1.0.3" + } + }, + "node_modules/ganache/node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ganache/node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "extraneous": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "node_modules/ganache/node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "extraneous": true, "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "node_modules/ganache/node_modules/is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "extraneous": true, "dependencies": { - "function-bind": "^1.1.2" + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" }, "engines": { "node": ">= 0.4" } }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "bin": { - "he": "bin/he" + "node_modules/ganache/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "extraneous": true, + "engines": { + "node": ">=0.12.0" } }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "node_modules/ganache/node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "extraneous": true, + "engines": { + "node": ">=8" } }, - "node_modules/hosted-git-info": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", - "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", - "dev": true, + "node_modules/ganache/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "extraneous": true, "dependencies": { - "lru-cache": "^10.0.1" + "isobject": "^3.0.1" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=0.10.0" } }, - "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true - }, - "node_modules/hpagent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-1.2.0.tgz", - "integrity": "sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA==", + "node_modules/ganache/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "extraneous": true, "engines": { - "node": ">=14" + "node": ">=8" } }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/http-basic": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz", - "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==", - "dev": true, + "node_modules/ganache/node_modules/is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "extraneous": true, "dependencies": { - "caseless": "^0.12.0", - "concat-stream": "^1.6.2", - "http-response-object": "^3.0.1", - "parse-cache-control": "^1.0.1" + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.4" } }, - "node_modules/http-basic/node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "engines": [ - "node >= 0.8" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" + "node_modules/ganache/node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "extraneous": true, + "engines": { + "node": ">=10" } }, - "node_modules/http-basic/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true + "node_modules/ganache/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "extraneous": true }, - "node_modules/http-basic/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, + "node_modules/ganache/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ganache/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "extraneous": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" } }, - "node_modules/http-basic/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, + "node_modules/ganache/node_modules/jju": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", + "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, "dependencies": { - "safe-buffer": "~5.1.0" + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "devOptional": true + "node_modules/ganache/node_modules/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true }, - "node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "optional": true, + "node_modules/ganache/node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "extraneous": true + }, + "node_modules/ganache/node_modules/json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "extraneous": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ganache/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "extraneous": true, "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" + "graceful-fs": "^4.1.6" + } + }, + "node_modules/ganache/node_modules/keccak": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", + "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", + "hasInstallScript": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0", + "readable-stream": "^3.6.0" }, "engines": { - "node": ">= 0.6" + "node": ">=10.0.0" } }, - "node_modules/http-errors/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "optional": true, + "node_modules/ganache/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "extraneous": true, "engines": { - "node": ">= 0.6" + "node": ">=0.10.0" } }, - "node_modules/http-https": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", - "integrity": "sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg==", - "dev": true - }, - "node_modules/http-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", - "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", - "dev": true, + "node_modules/ganache/node_modules/level-concat-iterator": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-3.1.0.tgz", + "integrity": "sha512-BWRCMHBxbIqPxJ8vHOvKUsaO0v1sLYZtjN3K2iZJsRBYtp+ONsY6Jfi6hy9K3+zolgQRryhIn2NRZjZnWJ9NmQ==", + "inBundle": true, + "license": "MIT", "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" + "catering": "^2.1.0" }, "engines": { - "node": ">= 14" - } - }, - "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", - "dev": true, - "engines": { - "node": ">= 14" + "node": ">=10" } }, - "node_modules/http-response-object": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", - "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", - "dev": true, + "node_modules/ganache/node_modules/level-js": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/level-js/-/level-js-6.1.0.tgz", + "integrity": "sha512-i7mPtkZm68aewfv0FnIUWvFUFfoyzIvVKnUmuQGrelEkP72vSPTaA1SGneWWoCV5KZJG4wlzbJLp1WxVNGuc6A==", + "extraneous": true, "dependencies": { - "@types/node": "^10.0.3" + "abstract-leveldown": "^7.2.0", + "buffer": "^6.0.3", + "inherits": "^2.0.3", + "ltgt": "^2.1.2", + "run-parallel-limit": "^1.1.0" } }, - "node_modules/http-response-object/node_modules/@types/node": { - "version": "10.17.60", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", - "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", - "dev": true + "node_modules/ganache/node_modules/level-supports": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-2.1.0.tgz", + "integrity": "sha512-E486g1NCjW5cF78KGPrMDRBYzPuueMZ6VBXHT6gC7A8UYWGiM14fGgp+s/L1oFfDWSPV/+SFkYCmZ0SiESkRKA==", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=10" + } }, - "node_modules/http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", - "dev": true, + "node_modules/ganache/node_modules/level-transcoder": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/level-transcoder/-/level-transcoder-1.0.1.tgz", + "integrity": "sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w==", "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "buffer": "^6.0.3", + "module-error": "^1.0.1" }, "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" + "node": ">=12" } }, - "node_modules/http2-wrapper": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", - "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", - "devOptional": true, + "node_modules/ganache/node_modules/leveldown": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-6.1.0.tgz", + "integrity": "sha512-8C7oJDT44JXxh04aSSsfcMI8YiaGRhOFI9/pMEL7nWJLVsWajDPTRxsSHTM2WcTVY5nXM+SuRHzPPi0GbnDX+w==", + "hasInstallScript": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" + "abstract-leveldown": "^7.2.0", + "napi-macros": "~2.0.0", + "node-gyp-build": "^4.3.0" }, "engines": { - "node": ">=10.19.0" + "node": ">=10.12.0" } }, - "node_modules/http2-wrapper/node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "devOptional": true, + "node_modules/ganache/node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "extraneous": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6.11.5" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, + "node_modules/ganache/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "extraneous": true, "dependencies": { - "agent-base": "6", - "debug": "4" + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" }, "engines": { - "node": ">= 6" + "node": ">=8.9.0" } }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, + "node_modules/ganache/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "extraneous": true, + "dependencies": { + "p-locate": "^5.0.0" + }, "engines": { - "node": ">=10.17.0" + "node": ">=10" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, + "node_modules/ganache/node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/ganache/node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "extraneous": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/idna-uts46-hx": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/idna-uts46-hx/-/idna-uts46-hx-2.3.1.tgz", - "integrity": "sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==", - "dev": true, + "node_modules/ganache/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "extraneous": true, "dependencies": { - "punycode": "2.1.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">=4.0.0" + "node": ">=10" } }, - "node_modules/idna-uts46-hx/node_modules/punycode": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", - "integrity": "sha512-Yxz2kRwT90aPiWEMHVYnEf4+rhwF1tBmmZ4KepCP+Wkium9JxtWnUm1nqGwpiAHr/tnTSeHqr3wb++jgSkXjhA==", - "dev": true, + "node_modules/ganache/node_modules/ltgt": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", + "integrity": "sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/mcl-wasm": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.9.0.tgz", + "integrity": "sha512-rvU7L/68ZrDk4dpPZteiEqvK9nB/1XbbHmuLK6qIvc4xuuJb/iv1p5X3KEyq6AYatLnc+zbdSlLXTlKgTnCRZQ==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">=8.9.0" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/ganache/node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "extraneous": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } }, - "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", - "dev": true, + "node_modules/ganache/node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "extraneous": true + }, + "node_modules/ganache/node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "extraneous": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, "engines": { - "node": ">= 4" + "node": ">=8.6" } }, - "node_modules/ignore-walk": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz", - "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==", - "dev": true, + "node_modules/ganache/node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "extraneous": true, "dependencies": { - "minimatch": "^9.0.0" + "bn.js": "^4.0.0", + "brorand": "^1.0.1" }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "bin": { + "miller-rabin": "bin/miller-rabin" } }, - "node_modules/ignore-walk/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" + "node_modules/ganache/node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "extraneous": true, + "engines": { + "node": ">= 0.6" } }, - "node_modules/ignore-walk/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, + "node_modules/ganache/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "extraneous": true, "dependencies": { - "brace-expansion": "^2.0.1" + "mime-db": "1.52.0" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">= 0.6" } }, - "node_modules/immutable": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", - "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", - "dev": true + "node_modules/ganache/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "extraneous": true, + "engines": { + "node": ">=6" + } }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, + "node_modules/ganache/node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "inBundle": true, + "license": "ISC" + }, + "node_modules/ganache/node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "inBundle": true, + "license": "MIT" + }, + "node_modules/ganache/node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "extraneous": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "*" } }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, + "node_modules/ganache/node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "extraneous": true + }, + "node_modules/ganache/node_modules/mocha": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.1.3.tgz", + "integrity": "sha512-Xcpl9FqXOAYqI3j79pEtHBBnQgVXIhpULjGQa7DVb0Po+VzmSIK9kanAiWLHoRR/dbZ2qpdPshuXr8l1VaHCzw==", + "extraneous": true, "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" + "@ungap/promise-all-settled": "1.1.2", + "ansi-colors": "4.1.1", + "browser-stdout": "1.3.1", + "chokidar": "3.5.2", + "debug": "4.3.2", + "diff": "5.0.0", + "escape-string-regexp": "4.0.0", + "find-up": "5.0.0", + "glob": "7.1.7", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "4.1.0", + "log-symbols": "4.1.0", + "minimatch": "3.0.4", + "ms": "2.1.3", + "nanoid": "3.1.25", + "serialize-javascript": "6.0.0", + "strip-json-comments": "3.1.1", + "supports-color": "8.1.1", + "which": "2.0.2", + "workerpool": "6.1.5", + "yargs": "16.2.0", + "yargs-parser": "20.2.4", + "yargs-unparser": "2.0.0" }, "bin": { - "import-local-fixture": "fixtures/cli.js" + "_mocha": "bin/_mocha", + "mocha": "bin/mocha" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 12.0.0" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, + "node_modules/ganache/node_modules/module-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/module-error/-/module-error-1.0.2.tgz", + "integrity": "sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA==", "engines": { - "node": ">=0.8.19" + "node": ">=10" } }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/ganache/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "extraneous": true }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "devOptional": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "node_modules/ganache/node_modules/nanoid": { + "version": "3.1.25", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", + "integrity": "sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==", + "extraneous": true, + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "node_modules/ganache/node_modules/napi-macros": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz", + "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==", + "inBundle": true, + "license": "MIT" }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "node_modules/ganache/node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "extraneous": true }, - "node_modules/init-package-json": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-6.0.3.tgz", - "integrity": "sha512-Zfeb5ol+H+eqJWHTaGca9BovufyGeIfr4zaaBorPmJBMrJ+KBnN+kQx2ZtXdsotUTgldHmHQV44xvUWOUA7E2w==", - "dev": true, - "dependencies": { - "@npmcli/package-json": "^5.0.0", - "npm-package-arg": "^11.0.0", - "promzard": "^1.0.0", - "read": "^3.0.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } + "node_modules/ganache/node_modules/node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==", + "inBundle": true, + "license": "MIT" }, - "node_modules/init-package-json/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "node_modules/ganache/node_modules/node-gyp-build": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", + "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", + "inBundle": true, + "license": "MIT", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" } }, - "node_modules/inquirer": { - "version": "8.2.6", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz", - "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==", - "dev": true, + "node_modules/ganache/node_modules/node-loader": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/node-loader/-/node-loader-1.0.2.tgz", + "integrity": "sha512-myxAxpyMR7knjA4Uzwf3gjxaMtxSWj2vpm9o6AYWWxQ1S3XMBNeG2vzYcp/5eW03cBGfgSxyP+wntP8qhBJNhQ==", + "extraneous": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^6.0.1" + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" }, "engines": { - "node": ">=12.0.0" + "node": ">= 10.13.0" } }, - "node_modules/inquirer-autocomplete-prompt": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/inquirer-autocomplete-prompt/-/inquirer-autocomplete-prompt-1.4.0.tgz", - "integrity": "sha512-qHgHyJmbULt4hI+kCmwX92MnSxDs/Yhdt4wPA30qnoa01OF6uTXV8yvH4hKXgdaTNmkZ9D01MHjqKYEuJN+ONw==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.3.1", - "chalk": "^4.0.0", - "figures": "^3.2.0", - "run-async": "^2.4.0", - "rxjs": "^6.6.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "inquirer": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" - } + "node_modules/ganache/node_modules/node-releases": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", + "extraneous": true }, - "node_modules/inquirer-autocomplete-prompt/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, + "node_modules/ganache/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "extraneous": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/inquirer-autocomplete-prompt/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, + "node_modules/ganache/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "extraneous": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "path-key": "^3.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=8" } }, - "node_modules/inquirer-autocomplete-prompt/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, + "node_modules/ganache/node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "extraneous": true, "dependencies": { - "color-name": "~1.1.4" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" }, "engines": { - "node": ">=7.0.0" + "node": ">= 0.4" } }, - "node_modules/inquirer-autocomplete-prompt/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer-autocomplete-prompt/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, + "node_modules/ganache/node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "node_modules/inquirer-autocomplete-prompt/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, + "node_modules/ganache/node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "extraneous": true, "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" + "wrappy": "1" } }, - "node_modules/inquirer-autocomplete-prompt/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, + "node_modules/ganache/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "extraneous": true, "dependencies": { - "has-flag": "^4.0.0" + "mimic-fn": "^2.1.0" }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } + "node_modules/ganache/node_modules/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", + "extraneous": true }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, + "node_modules/ganache/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "extraneous": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "yocto-queue": "^0.1.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, + "node_modules/ganache/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "extraneous": true, "dependencies": { - "color-name": "~1.1.4" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=7.0.0" + "node": ">=10" } }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, + "node_modules/ganache/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, + "node_modules/ganache/node_modules/parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "extraneous": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" } }, - "node_modules/inquirer/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, + "node_modules/ganache/node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "extraneous": true + }, + "node_modules/ganache/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "extraneous": true, "engines": { "node": ">=8" } }, - "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - }, + "node_modules/ganache/node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "extraneous": true, "engines": { - "node": ">= 0.4" + "node": ">=0.10.0" } }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "dev": true, + "node_modules/ganache/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "extraneous": true, "engines": { - "node": ">= 0.10" + "node": ">=8" } }, - "node_modules/io-ts": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-1.10.4.tgz", - "integrity": "sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==", - "dev": true, - "dependencies": { - "fp-ts": "^1.0.0" - } + "node_modules/ganache/node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "extraneous": true }, - "node_modules/ip-address": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", - "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", - "dev": true, + "node_modules/ganache/node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "extraneous": true, "dependencies": { - "jsbn": "1.1.0", - "sprintf-js": "^1.1.3" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" }, "engines": { - "node": ">= 12" + "node": ">=0.12" } }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, + "node_modules/ganache/node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "extraneous": true, "engines": { - "node": ">= 0.10" + "node": ">=8.6" } }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dev": true, + "node_modules/ganache/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "find-up": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", - "dev": true, + "node_modules/ganache/node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, + "node_modules/ganache/node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "extraneous": true, "dependencies": { - "has-bigints": "^1.0.1" + "p-locate": "^4.1.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, + "node_modules/ganache/node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, "dependencies": { - "binary-extensions": "^2.0.0" + "p-try": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, + "node_modules/ganache/node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "p-limit": "^2.2.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "node_modules/ganache/node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">= 0.6.0" } }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/ganache/node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "extraneous": true, + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" } }, - "node_modules/is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dev": true, - "dependencies": { - "ci-info": "^3.2.0" - }, - "bin": { - "is-ci": "bin.js" + "node_modules/ganache/node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "extraneous": true, + "engines": { + "node": ">=6" } }, - "node_modules/is-ci/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, + "node_modules/ganache/node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "funding": [ { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } ], - "engines": { - "node": ">=8" + "inBundle": true, + "license": "MIT" + }, + "node_modules/ganache/node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "extraneous": true, + "dependencies": { + "safe-buffer": "^5.1.0" } }, - "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", - "dev": true, + "node_modules/ganache/node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "extraneous": true, "dependencies": { - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" } }, - "node_modules/is-data-view": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", - "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", - "dev": true, + "node_modules/ganache/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "inBundle": true, + "license": "MIT", "dependencies": { - "is-typed-array": "^1.1.13" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 6" } }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, + "node_modules/ganache/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "extraneous": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "picomatch": "^2.2.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8.10.0" } }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" + "node_modules/ganache/node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "extraneous": true, + "dependencies": { + "resolve": "^1.1.6" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.10" } }, - "node_modules/is-extglob": { + "node_modules/ganache/node_modules/require-directory": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/is-fullwidth-code-point": { + "node_modules/ganache/node_modules/resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "extraneous": true, + "dependencies": { + "path-parse": "^1.0.6" + } + }, + "node_modules/ganache/node_modules/resolve-cwd": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "extraneous": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/is-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", - "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==", - "dev": true - }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true, + "node_modules/ganache/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "dev": true, + "node_modules/ganache/node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "extraneous": true, "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "hash-base": "^3.0.0", + "inherits": "^2.0.1" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, + "node_modules/ganache/node_modules/run-parallel-limit": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.1.0.tgz", + "integrity": "sha512-jJA7irRNM91jaKc3Hcl1npHsFLOXOoTkPCUL1JEa1R82O2miplXXRaGdjW/KM/98YQWDhJLiSs793CnXfblJUw==", + "extraneous": true, "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-hex-prefixed": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", - "integrity": "sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==", - "dev": true, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" + "queue-microtask": "^1.2.2" } }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/ganache/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "MIT" }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true + "node_modules/ganache/node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "extraneous": true }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", - "dev": true, - "engines": { - "node": ">= 0.4" + "node_modules/ganache/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "extraneous": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 10.13.0" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, + "node_modules/ganache/node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", + "extraneous": true + }, + "node_modules/ganache/node_modules/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", + "hasInstallScript": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "elliptic": "^6.5.4", + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + }, "engines": { - "node": ">=0.12.0" + "node": ">=10.0.0" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, + "node_modules/ganache/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "extraneous": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "lru-cache": "^6.0.0" }, - "engines": { - "node": ">= 0.4" + "bin": { + "semver": "bin/semver.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/ganache/node_modules/serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "extraneous": true, + "dependencies": { + "randombytes": "^2.1.0" } }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/ganache/node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "extraneous": true }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, + "node_modules/ganache/node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "extraneous": true, "dependencies": { - "isobject": "^3.0.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" }, - "engines": { - "node": ">=0.10.0" + "bin": { + "sha.js": "bin.js" } }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, + "node_modules/ganache/node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "kind-of": "^6.0.2" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", - "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", - "dev": true, + "node_modules/ganache/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.7" + "shebang-regex": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-ssh": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.1.tgz", - "integrity": "sha512-JNeu1wQsHjyHgn9NcWTaXq6zWSR6hqE0++zhfZlkFBbScNkyvxCdeV8sRkSBaeLKxmbpR21brail63ACNxJ0Tg==", - "dev": true, - "dependencies": { - "protocols": "^2.0.1" - } + "node_modules/ganache/node_modules/shebang-loader": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/shebang-loader/-/shebang-loader-0.0.1.tgz", + "integrity": "sha512-nQvhUHvKyzGK5aqPxHfHB5nlAN2EZ2U61S2G0YrxAuCRU5iGhFcxxRiaAdb18UoRS1zVMhRz4gdQ1xFEg3AOyA==", + "extraneous": true }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "node_modules/ganache/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "extraneous": true, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, + "node_modules/ganache/node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "extraneous": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" }, - "engines": { - "node": ">= 0.4" + "bin": { + "shjs": "bin/shjs" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=4" } }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, + "node_modules/ganache/node_modules/shx": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/shx/-/shx-0.3.3.tgz", + "integrity": "sha512-nZJ3HFWVoTSyyB+evEKjJ1STiixGztlqwKLTUNV5KqMWtGey9fTd4KU1gdZ1X9BV6215pswQ/Jew9NsuS/fNDA==", + "extraneous": true, "dependencies": { - "has-symbols": "^1.0.2" + "minimist": "^1.2.3", + "shelljs": "^0.8.4" }, - "engines": { - "node": ">= 0.4" + "bin": { + "shx": "lib/cli.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=6" } }, - "node_modules/is-text-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", - "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==", - "dev": true, - "dependencies": { - "text-extensions": "^1.0.0" - }, + "node_modules/ganache/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/is-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", - "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", - "dev": true, + "node_modules/ganache/node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "extraneous": true, "dependencies": { - "which-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true + "node_modules/ganache/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "extraneous": true + }, + "node_modules/ganache/node_modules/stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "extraneous": true, + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/ganache/node_modules/stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "extraneous": true, + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "node_modules/ganache/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "inBundle": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, + "node_modules/ganache/node_modules/string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "extraneous": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.6.19" } }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, + "node_modules/ganache/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, + "node_modules/ganache/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "extraneous": true, "dependencies": { - "is-docker": "^2.0.0" + "ansi-regex": "^5.0.1" }, "engines": { "node": ">=8" } }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "node_modules/isexe": { + "node_modules/ganache/node_modules/strip-final-newline": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "extraneous": true, + "engines": { + "node": ">=6" + } }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, + "node_modules/ganache/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/isomorphic-fetch": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", - "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "node_modules/ganache/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "extraneous": true, "dependencies": { - "node-fetch": "^2.6.1", - "whatwg-fetch": "^3.4.1" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/isomorphic-ws": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz", - "integrity": "sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==", - "peerDependencies": { - "ws": "*" + "node_modules/ganache/node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "extraneous": true, + "engines": { + "node": ">=6" } }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true + "node_modules/ganache/node_modules/terser": { + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", + "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", + "extraneous": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", - "dev": true, + "node_modules/ganache/node_modules/terser-webpack-plugin": { + "version": "5.2.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.2.5.tgz", + "integrity": "sha512-3luOVHku5l0QBeYS8r4CdHYWEGMmIj3H1U64jgkdZzECcSOJAyJ9TjuqcQZvw1Y+4AOBN9SeYJPJmFn2cM4/2g==", + "extraneous": true, + "dependencies": { + "jest-worker": "^27.0.6", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1", + "terser": "^5.7.2" + }, "engines": { - "node": ">=8" + "node": ">= 10.13.0" } }, - "node_modules/istanbul-lib-instrument": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz", - "integrity": "sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==", - "dev": true, + "node_modules/ganache/node_modules/timsort": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", + "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==", + "extraneous": true + }, + "node_modules/ganache/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "extraneous": true, "dependencies": { - "@babel/core": "^7.23.9", - "@babel/parser": "^7.23.9", - "@istanbuljs/schema": "^0.1.3", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^7.5.4" + "is-number": "^7.0.0" }, "engines": { - "node": ">=10" + "node": ">=8.0" } }, - "node_modules/istanbul-lib-instrument/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, + "node_modules/ganache/node_modules/ts-loader": { + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.3.1.tgz", + "integrity": "sha512-OkyShkcZTsTwyS3Kt7a4rsT/t2qvEVQuKCTg4LJmpj9fhFR7ukGdZwV6Qq3tRUkqcXtfGpPR7+hFKHCG/0d3Lw==", + "extraneous": true, "dependencies": { - "yallist": "^4.0.0" + "chalk": "^4.1.0", + "enhanced-resolve": "^5.0.0", + "micromatch": "^4.0.0", + "semver": "^7.3.4" }, "engines": { - "node": ">=10" + "node": ">=12.0.0" } }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, + "node_modules/ganache/node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "extraneous": true, "dependencies": { - "lru-cache": "^6.0.0" + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" }, "bin": { - "semver": "bin/semver.js" + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + } + }, + "node_modules/ganache/node_modules/ts-node/node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "extraneous": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/ganache/node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "extraneous": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, "engines": { - "node": ">=10" + "node": ">=14.17" } }, - "node_modules/istanbul-lib-instrument/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/ganache/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "extraneous": true, + "engines": { + "node": ">= 4.0.0" + } }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, + "node_modules/ganache/node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "extraneous": true, "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" + "escalade": "^3.1.1", + "picocolors": "^1.0.0" }, - "engines": { - "node": ">=10" + "bin": { + "browserslist-lint": "cli.js" } }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/ganache/node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "extraneous": true, + "dependencies": { + "punycode": "^2.1.0" } }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, + "node_modules/ganache/node_modules/utf-8-validate": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.7.tgz", + "integrity": "sha512-vLt1O5Pp+flcArHGIyKEQq883nBt8nN8tVBcoL0qUXj2XT1n7p70yGIq2VK98I5FdZ1YHc0wk/koOnHjnXWk1Q==", + "hasInstallScript": true, + "optional": true, "dependencies": { - "has-flag": "^4.0.0" + "node-gyp-build": "^4.3.0" }, "engines": { - "node": ">=8" + "node": ">=6.14.2" } }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, + "node_modules/ganache/node_modules/util": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", + "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "extraneous": true, "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "safe-buffer": "^5.1.2", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/ganache/node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "inBundle": true, + "license": "MIT" + }, + "node_modules/ganache/node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "extraneous": true + }, + "node_modules/ganache/node_modules/validator": { + "version": "13.7.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-13.7.0.tgz", + "integrity": "sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw==", + "extraneous": true, "engines": { - "node": ">=10" + "node": ">= 0.10" } }, - "node_modules/istanbul-reports": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", - "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", - "dev": true, + "node_modules/ganache/node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "extraneous": true, "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" }, "engines": { - "node": ">=8" + "node": ">=10.13.0" } }, - "node_modules/jackspeak": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", - "dev": true, + "node_modules/ganache/node_modules/webpack": { + "version": "5.65.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.65.0.tgz", + "integrity": "sha512-Q5or2o6EKs7+oKmJo7LaqZaMOlDWQse9Tm5l1WAfU/ujLGN5Pb0SqGeVkN/4bpPmEqEP5RnVhiqsOtWtUVwGRw==", + "extraneous": true, "dependencies": { - "@isaacs/cliui": "^8.0.2" + "@types/eslint-scope": "^3.7.0", + "@types/estree": "^0.0.50", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.4.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.8.3", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.4", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.3.1", + "webpack-sources": "^3.2.2" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "bin": { + "webpack": "bin/webpack.js" }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" + "engines": { + "node": ">=10.13.0" } }, - "node_modules/jake": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", - "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", - "dev": true, + "node_modules/ganache/node_modules/webpack-cli": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.1.tgz", + "integrity": "sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ==", + "extraneous": true, "dependencies": { - "async": "^3.2.3", - "chalk": "^4.0.2", - "filelist": "^1.0.4", - "minimatch": "^3.1.2" + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^1.1.0", + "@webpack-cli/info": "^1.4.0", + "@webpack-cli/serve": "^1.6.0", + "colorette": "^2.0.14", + "commander": "^7.0.0", + "execa": "^5.0.0", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^2.2.0", + "rechoir": "^0.7.0", + "webpack-merge": "^5.7.3" }, "bin": { - "jake": "bin/cli.js" + "webpack-cli": "bin/cli.js" }, "engines": { - "node": ">=10" + "node": ">=10.13.0" } }, - "node_modules/jake/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, + "node_modules/ganache/node_modules/webpack-cli/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "extraneous": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">= 10" } }, - "node_modules/jake/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, + "node_modules/ganache/node_modules/webpack-cli/node_modules/interpret": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", + "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "extraneous": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">= 0.10" } }, - "node_modules/jake/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, + "node_modules/ganache/node_modules/webpack-cli/node_modules/rechoir": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", + "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", + "extraneous": true, "dependencies": { - "color-name": "~1.1.4" + "resolve": "^1.9.0" }, "engines": { - "node": ">=7.0.0" + "node": ">= 0.10" } }, - "node_modules/jake/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jake/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, + "node_modules/ganache/node_modules/webpack-merge": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "extraneous": true, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, "engines": { - "node": ">=8" + "node": ">=10.0.0" } }, - "node_modules/jake/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, + "node_modules/ganache/node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">=10.13.0" } }, - "node_modules/jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", - "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", - "dev": true, + "node_modules/ganache/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "extraneous": true, "dependencies": { - "@jest/core": "^29.7.0", - "@jest/types": "^29.6.3", - "import-local": "^3.0.2", - "jest-cli": "^29.7.0" + "isexe": "^2.0.0" }, "bin": { - "jest": "bin/jest.js" + "node-which": "bin/node-which" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">= 8" } }, - "node_modules/jest-changed-files": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", - "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", - "dev": true, + "node_modules/ganache/node_modules/which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "extraneous": true, "dependencies": { - "execa": "^5.0.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0" + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" } }, - "node_modules/jest-circus": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", - "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", - "dev": true, + "node_modules/ganache/node_modules/wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/workerpool": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.5.tgz", + "integrity": "sha512-XdKkCK0Zqc6w3iTxLckiuJ81tiD/o5rBE/m+nXpRCB+/Sq4DqkfXZ/x0jW02DG1tGsfUGXbTJyZDP+eu67haSw==", + "extraneous": true + }, + "node_modules/ganache/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "extraneous": true, "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^1.0.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^29.7.0", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0", - "pretty-format": "^29.7.0", - "pure-rand": "^6.0.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/jest-circus/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, + "node_modules/ganache/node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "extraneous": true + }, + "node_modules/ganache/node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "extraneous": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=0.4" } }, - "node_modules/jest-circus/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, + "node_modules/ganache/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "extraneous": true, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-circus/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, + "node_modules/ganache/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "extraneous": true + }, + "node_modules/ganache/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "extraneous": true, "dependencies": { - "color-name": "~1.1.4" + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" }, "engines": { - "node": ">=7.0.0" + "node": ">=10" } }, - "node_modules/jest-circus/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-circus/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, + "node_modules/ganache/node_modules/yargs-parser": { + "version": "20.2.4", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", + "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/jest-circus/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, + "node_modules/ganache/node_modules/yargs-unparser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "extraneous": true, "dependencies": { - "has-flag": "^4.0.0" + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/jest-cli": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", - "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", - "dev": true, - "dependencies": { - "@jest/core": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "create-jest": "^29.7.0", - "exit": "^0.1.2", - "import-local": "^3.0.2", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "yargs": "^17.3.1" - }, - "bin": { - "jest": "bin/jest.js" - }, + "node_modules/ganache/node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "extraneous": true, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">=6" } }, - "node_modules/jest-cli/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, + "node_modules/ganache/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "extraneous": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ganache/node_modules/z-schema": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-5.0.4.tgz", + "integrity": "sha512-gm/lx3hDzJNcLwseIeQVm1UcwhWIKpSB4NqH89pTBtFns4k/HDHudsICtvG05Bvw/Mv3jMyk700y5dadueLHdA==", + "extraneous": true, "dependencies": { - "color-convert": "^2.0.1" + "commander": "^2.20.3", + "lodash.get": "^4.4.2", + "lodash.isequal": "^4.5.0", + "validator": "^13.7.0" }, - "engines": { - "node": ">=8" + "bin": { + "z-schema": "bin/z-schema" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "engines": { + "node": ">=8.0.0" } }, - "node_modules/jest-cli/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=6.9.0" } }, - "node_modules/jest-cli/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/jest-cli/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-cli/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", "dev": true, "engines": { - "node": ">=8" + "node": "*" } }, - "node_modules/jest-cli/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dependencies": { - "has-flag": "^4.0.0" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-config": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", - "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-jest": "^29.7.0", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-circus": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@types/node": "*", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "ts-node": { - "optional": true - } + "node": ">=8.0.0" } }, - "node_modules/jest-config/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/get-pkg-repo": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz", + "integrity": "sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "@hutson/parse-repository-url": "^3.0.0", + "hosted-git-info": "^4.0.0", + "through2": "^2.0.0", + "yargs": "^16.2.0" }, - "engines": { - "node": ">=8" + "bin": { + "get-pkg-repo": "src/cli.js" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/jest-config/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/get-pkg-repo/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "lru-cache": "^6.0.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-config/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "node_modules/get-pkg-repo/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/jest-config/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/get-pkg-repo/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/get-pkg-repo/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" }, "engines": { - "node": ">=7.0.0" + "node": ">=10" } }, - "node_modules/jest-config/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-config/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/get-port": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", + "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-config/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/jest-diff": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", - "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.6.3", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-diff/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-diff/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/ghost-testrpc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/ghost-testrpc/-/ghost-testrpc-0.0.2.tgz", + "integrity": "sha512-i08dAEgJ2g8z5buJIrCTduwPIhih3DP+hOCTyyryikfV8T0bNvHnGXO67i0DD1H4GBDETTclPy9njZbfluQYrQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" + "chalk": "^2.4.2", + "node-emoji": "^1.10.0" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "bin": { + "testrpc-sc": "index.js" } }, - "node_modules/jest-diff/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/git-raw-commits": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-3.0.0.tgz", + "integrity": "sha512-b5OHmZ3vAgGrDn/X0kS+9qCfNKWe4K/jFnhwzVWWg0/k5eLa3060tZShrRg8Dja5kPc+YjS0Gc6y7cRr44Lpjw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "dargs": "^7.0.0", + "meow": "^8.1.2", + "split2": "^3.2.2" + }, + "bin": { + "git-raw-commits": "cli.js" }, "engines": { - "node": ">=7.0.0" + "node": ">=14" } }, - "node_modules/jest-diff/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "node_modules/git-remote-origin-url": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz", + "integrity": "sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==", + "dev": true, + "dependencies": { + "gitconfiglocal": "^1.0.0", + "pify": "^2.3.0" + }, + "engines": { + "node": ">=4" + } }, - "node_modules/jest-diff/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/git-remote-origin-url/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "dev": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/jest-diff/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/git-semver-tags": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-5.0.1.tgz", + "integrity": "sha512-hIvOeZwRbQ+7YEUmCkHqo8FOLQZCEn18yevLHADlFPZY02KJGsu5FZt9YW/lybfK2uhWFI7Qg/07LekJiTv7iA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "meow": "^8.1.2", + "semver": "^7.0.0" + }, + "bin": { + "git-semver-tags": "cli.js" }, "engines": { - "node": ">=8" + "node": ">=14" } }, - "node_modules/jest-docblock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", - "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "node_modules/git-semver-tags/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "detect-newline": "^3.0.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/jest-each": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", - "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "node_modules/git-up": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz", + "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==", "dev": true, "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "jest-util": "^29.7.0", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "is-ssh": "^1.4.0", + "parse-url": "^8.1.0" } }, - "node_modules/jest-each/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/git-url-parse": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-14.0.0.tgz", + "integrity": "sha512-NnLweV+2A4nCvn4U/m2AoYu0pPKlsmhK9cknG7IMwsjFY1S2jxM+mAhsDxyxfCIGfGaD+dozsyX4b6vkYc83yQ==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "git-up": "^7.0.0" } }, - "node_modules/jest-each/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/gitconfiglocal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz", + "integrity": "sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "ini": "^1.3.2" + } + }, + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "devOptional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=10" + "node": "*" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/jest-each/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "is-glob": "^4.0.3" }, "engines": { - "node": ">=7.0.0" + "node": ">=10.13.0" } }, - "node_modules/jest-each/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-each/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", "dev": true, + "dependencies": { + "global-prefix": "^3.0.0" + }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/jest-each/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/jest-environment-node": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", - "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" + "isexe": "^2.0.0" }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "bin": { + "which": "bin/which" } }, - "node_modules/jest-get-type": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", - "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=4" } }, - "node_modules/jest-haste-map": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", - "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "micromatch": "^4.0.4", - "walker": "^1.0.8" + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dependencies": { + "define-properties": "^1.1.3" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-leak-detector": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", - "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, "dependencies": { - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-matcher-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", - "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", - "dev": true, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" + "get-intrinsic": "^1.1.3" }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-matcher-utils/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, + "node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "optional": true, "dependencies": { - "color-convert": "^2.0.1" + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=10.19.0" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sindresorhus/got?sponsor=1" } }, - "node_modules/jest-matcher-utils/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/handlebars": { + "version": "4.7.8", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", + "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" }, "engines": { - "node": ">=10" + "node": ">=0.4.7" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "optionalDependencies": { + "uglify-js": "^3.1.4" } }, - "node_modules/jest-matcher-utils/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=6" } }, - "node_modules/jest-matcher-utils/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "node_modules/hardhat": { + "version": "2.19.5", + "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.19.5.tgz", + "integrity": "sha512-vx8R7zWCYVgM56vA6o0Wqx2bIIptkN4TMs9QwDqZVNGRhMzBfzqUeEYbp+69gxWp1neg2V2nYQUaaUv7aom1kw==", + "dev": true, + "dependencies": { + "@ethersproject/abi": "^5.1.2", + "@metamask/eth-sig-util": "^4.0.0", + "@nomicfoundation/ethereumjs-block": "5.0.2", + "@nomicfoundation/ethereumjs-blockchain": "7.0.2", + "@nomicfoundation/ethereumjs-common": "4.0.2", + "@nomicfoundation/ethereumjs-evm": "2.0.2", + "@nomicfoundation/ethereumjs-rlp": "5.0.2", + "@nomicfoundation/ethereumjs-statemanager": "2.0.2", + "@nomicfoundation/ethereumjs-trie": "6.0.2", + "@nomicfoundation/ethereumjs-tx": "5.0.2", + "@nomicfoundation/ethereumjs-util": "9.0.2", + "@nomicfoundation/ethereumjs-vm": "7.0.2", + "@nomicfoundation/solidity-analyzer": "^0.1.0", + "@sentry/node": "^5.18.1", + "@types/bn.js": "^5.1.0", + "@types/lru-cache": "^5.1.0", + "adm-zip": "^0.4.16", + "aggregate-error": "^3.0.0", + "ansi-escapes": "^4.3.0", + "boxen": "^5.1.2", + "chalk": "^2.4.2", + "chokidar": "^3.4.0", + "ci-info": "^2.0.0", + "debug": "^4.1.1", + "enquirer": "^2.3.0", + "env-paths": "^2.2.0", + "ethereum-cryptography": "^1.0.3", + "ethereumjs-abi": "^0.6.8", + "find-up": "^2.1.0", + "fp-ts": "1.19.3", + "fs-extra": "^7.0.1", + "glob": "7.2.0", + "immutable": "^4.0.0-rc.12", + "io-ts": "1.10.4", + "keccak": "^3.0.2", + "lodash": "^4.17.11", + "mnemonist": "^0.38.0", + "mocha": "^10.0.0", + "p-map": "^4.0.0", + "raw-body": "^2.4.1", + "resolve": "1.17.0", + "semver": "^6.3.0", + "solc": "0.7.3", + "source-map-support": "^0.5.13", + "stacktrace-parser": "^0.1.10", + "tsort": "0.0.1", + "undici": "^5.14.0", + "uuid": "^8.3.2", + "ws": "^7.4.6" + }, + "bin": { + "hardhat": "internal/cli/bootstrap.js" + }, + "peerDependencies": { + "ts-node": "*", + "typescript": "*" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + }, + "typescript": { + "optional": true + } + } }, - "node_modules/jest-matcher-utils/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/hardhat-gas-reporter": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/hardhat-gas-reporter/-/hardhat-gas-reporter-1.0.10.tgz", + "integrity": "sha512-02N4+So/fZrzJ88ci54GqwVA3Zrf0C9duuTyGt0CFRIh/CdNwbnTgkXkRfojOMLBQ+6t+lBIkgbsOtqMvNwikA==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "array-uniq": "1.0.3", + "eth-gas-reporter": "^0.2.25", + "sha1": "^1.1.1" + }, + "peerDependencies": { + "hardhat": "^2.0.2" } }, - "node_modules/jest-matcher-utils/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/hardhat/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "locate-path": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/jest-message-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", - "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "node_modules/hardhat/node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=6 <7 || >=8" + } + }, + "node_modules/hardhat/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/jest-message-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/hardhat/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=4" } }, - "node_modules/jest-message-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/hardhat/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "p-try": "^1.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=4" } }, - "node_modules/jest-message-util/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/hardhat/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "p-limit": "^1.1.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=4" } }, - "node_modules/jest-message-util/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-message-util/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/hardhat/node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/jest-message-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/hardhat/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/jest-mock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", - "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "node_modules/hardhat/node_modules/resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-util": "^29.7.0" + "path-parse": "^1.0.6" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hardhat/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 4.0.0" } }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, "engines": { - "node": ">=6" + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dependencies": { + "es-define-property": "^1.0.0" }, - "peerDependencies": { - "jest-resolve": "*" + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "engines": { + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-regex-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", - "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", - "dev": true, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-resolve": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", - "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, "dependencies": { - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "resolve": "^1.20.0", - "resolve.exports": "^2.0.0", - "slash": "^3.0.0" + "has-symbols": "^1.0.3" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-resolve-dependencies": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", - "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", - "dev": true, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", "dependencies": { - "jest-regex-util": "^29.6.3", - "jest-snapshot": "^29.7.0" + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=4" } }, - "node_modules/jest-resolve/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, + "node_modules/hash-base/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "dependencies": { - "color-convert": "^2.0.1" + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">= 0.4" } }, - "node_modules/jest-resolve/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/heap": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", + "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==", + "dev": true + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" } }, - "node_modules/jest-resolve/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/hosted-git-info": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", + "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "lru-cache": "^10.0.1" }, "engines": { - "node": ">=7.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/jest-resolve/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", "dev": true }, - "node_modules/jest-resolve/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, + "node_modules/hpagent": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-1.2.0.tgz", + "integrity": "sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA==", "engines": { - "node": ">=8" + "node": ">=14" } }, - "node_modules/jest-resolve/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-basic": { + "version": "8.1.3", + "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz", + "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "caseless": "^0.12.0", + "concat-stream": "^1.6.2", + "http-response-object": "^3.0.1", + "parse-cache-control": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=6.0.0" } }, - "node_modules/jest-runner": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", - "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "node_modules/http-basic/node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, + "engines": [ + "node >= 0.8" + ], "dependencies": { - "@jest/console": "^29.7.0", - "@jest/environment": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-leak-detector": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-resolve": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-util": "^29.7.0", - "jest-watcher": "^29.7.0", - "jest-worker": "^29.7.0", - "p-limit": "^3.1.0", - "source-map-support": "0.5.13" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "node_modules/jest-runner/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/http-basic/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/http-basic/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/jest-runner/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/http-basic/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "safe-buffer": "~5.1.0" } }, - "node_modules/jest-runner/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "devOptional": true + }, + "node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "optional": true, "dependencies": { - "color-name": "~1.1.4" + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" }, "engines": { - "node": ">=7.0.0" + "node": ">= 0.6" } }, - "node_modules/jest-runner/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-runner/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, + "node_modules/http-errors/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "optional": true, "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runner/node_modules/source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "node": ">= 0.6" } }, - "node_modules/jest-runner/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, "engines": { - "node": ">=8" + "node": ">= 14" } }, - "node_modules/jest-runtime": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", - "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "node_modules/http-proxy-agent/node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/globals": "^29.7.0", - "@jest/source-map": "^29.6.3", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 14" } }, - "node_modules/jest-runtime/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/http-response-object": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", + "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "@types/node": "^10.0.3" + } + }, + "node_modules/http-response-object/node_modules/@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", + "dev": true + }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "optional": true, + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">=10.19.0" + } + }, + "node_modules/http2-wrapper/node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "optional": true, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-runtime/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "agent-base": "6", + "debug": "4" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">= 6" } }, - "node_modules/jest-runtime/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">=7.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-runtime/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/jest-runtime/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 4" } }, - "node_modules/jest-runtime/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/ignore-walk": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz", + "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "minimatch": "^9.0.0" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/jest-snapshot": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", - "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "node_modules/ignore-walk/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "@babel/core": "^7.11.6", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-jsx": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/types": "^7.3.3", - "@jest/expect-utils": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "natural-compare": "^1.4.0", - "pretty-format": "^29.7.0", - "semver": "^7.5.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "balanced-match": "^1.0.0" } }, - "node_modules/jest-snapshot/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/jest-snapshot/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/immutable": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-snapshot/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" }, "engines": { - "node": ">=7.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-snapshot/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } }, - "node_modules/jest-snapshot/node_modules/has-flag": { + "node_modules/indent-string": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "devOptional": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/init-package-json": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-6.0.3.tgz", + "integrity": "sha512-Zfeb5ol+H+eqJWHTaGca9BovufyGeIfr4zaaBorPmJBMrJ+KBnN+kQx2ZtXdsotUTgldHmHQV44xvUWOUA7E2w==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "@npmcli/package-json": "^5.0.0", + "npm-package-arg": "^11.0.0", + "promzard": "^1.0.0", + "read": "^3.0.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": ">=10" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/init-package-json/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -21007,42 +16859,52 @@ "node": ">=10" } }, - "node_modules/jest-snapshot/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/inquirer": { + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz", + "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^6.0.1" }, "engines": { - "node": ">=8" + "node": ">=12.0.0" } }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/jest-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", - "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "node_modules/inquirer-autocomplete-prompt": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/inquirer-autocomplete-prompt/-/inquirer-autocomplete-prompt-1.4.0.tgz", + "integrity": "sha512-qHgHyJmbULt4hI+kCmwX92MnSxDs/Yhdt4wPA30qnoa01OF6uTXV8yvH4hKXgdaTNmkZ9D01MHjqKYEuJN+ONw==", "dev": true, "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", + "ansi-escapes": "^4.3.1", "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "figures": "^3.2.0", + "run-async": "^2.4.0", + "rxjs": "^6.6.2" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=10" + }, + "peerDependencies": { + "inquirer": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/jest-util/node_modules/ansi-styles": { + "node_modules/inquirer-autocomplete-prompt/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -21057,7 +16919,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-util/node_modules/chalk": { + "node_modules/inquirer-autocomplete-prompt/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -21073,22 +16935,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-util/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/node_modules/color-convert": { + "node_modules/inquirer-autocomplete-prompt/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -21100,13 +16947,13 @@ "node": ">=7.0.0" } }, - "node_modules/jest-util/node_modules/color-name": { + "node_modules/inquirer-autocomplete-prompt/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/jest-util/node_modules/has-flag": { + "node_modules/inquirer-autocomplete-prompt/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", @@ -21115,36 +16962,31 @@ "node": ">=8" } }, - "node_modules/jest-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/inquirer-autocomplete-prompt/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "tslib": "^1.9.0" }, "engines": { - "node": ">=8" + "npm": ">=2.0.0" } }, - "node_modules/jest-validate": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", - "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "node_modules/inquirer-autocomplete-prompt/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "@jest/types": "^29.6.3", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "leven": "^3.1.0", - "pretty-format": "^29.7.0" + "has-flag": "^4.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/jest-validate/node_modules/ansi-styles": { + "node_modules/inquirer/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -21159,7 +17001,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-validate/node_modules/chalk": { + "node_modules/inquirer/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -21175,7 +17017,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-validate/node_modules/color-convert": { + "node_modules/inquirer/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -21187,13 +17029,13 @@ "node": ">=7.0.0" } }, - "node_modules/jest-validate/node_modules/color-name": { + "node_modules/inquirer/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/jest-validate/node_modules/has-flag": { + "node_modules/inquirer/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", @@ -21202,7 +17044,7 @@ "node": ">=8" } }, - "node_modules/jest-validate/node_modules/supports-color": { + "node_modules/inquirer/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", @@ -21214,1363 +17056,1179 @@ "node": ">=8" } }, - "node_modules/jest-watcher": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", - "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "jest-util": "^29.7.0", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-watcher/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/inquirer/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-watcher/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-watcher/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" }, "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-watcher/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-watcher/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "node_modules/jest-watcher/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.10" } }, - "node_modules/jest-worker": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", - "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "node_modules/io-ts": { + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-1.10.4.tgz", + "integrity": "sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==", "dev": true, "dependencies": { - "@types/node": "*", - "jest-util": "^29.7.0", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "fp-ts": "^1.0.0" } }, - "node_modules/jest-worker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", "dev": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, "engines": { - "node": ">=8" + "node": ">= 12" } }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/js-sdsl": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.2.tgz", - "integrity": "sha512-dwXFwByc/ajSV6m5bcKAPwe4yDDF6D614pxmIi5odytzxRlwqF6nwoiCek80Ixc7Cvma5awClxrzFtxCQvcM8w==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/js-sha256": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", - "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==", - "optional": true - }, - "node_modules/js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, "dependencies": { - "argparse": "^2.0.1" + "has-bigints": "^1.0.1" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsbn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", - "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", - "dev": true - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, - "bin": { - "jsesc": "bin/jsesc" + "dependencies": { + "binary-extensions": "^2.0.0" }, "engines": { - "node": ">=4" - } - }, - "node_modules/json-bigint": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", - "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==", - "dependencies": { - "bignumber.js": "^9.0.0" + "node": ">=8" } }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "devOptional": true - }, - "node_modules/json-duplicate-key-handle": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-duplicate-key-handle/-/json-duplicate-key-handle-1.0.0.tgz", - "integrity": "sha512-OLIxL+UpfwUsqcLX3i6Z51ChTou/Vje+6bSeGUSubj96dF/SfjObDprLy++ZXYH07KITuEzsXS7PX7e/BGf4jw==", + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, "dependencies": { - "backslash": "^0.2.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "node_modules/json-parse-even-better-errors": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", - "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=4" } }, - "node_modules/json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/json-stringify-nice": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz", - "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==", + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, + "engines": { + "node": ">= 0.4" + }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "node_modules/is-ci": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dependencies": { - "universalify": "^2.0.0" + "ci-info": "^3.2.0" }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "bin": { + "is-ci": "bin.js" } }, - "node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true, - "engines": [ - "node >= 0.2.0" - ] - }, - "node_modules/jsonschema": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz", - "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==", + "node_modules/is-ci/node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "engines": { - "node": "*" + "node": ">=8" } }, - "node_modules/JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "dependencies": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - }, - "bin": { - "JSONStream": "bin.js" + "hasown": "^2.0.0" }, - "engines": { - "node": "*" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", "dev": true, "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=0.6.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/just-diff": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/just-diff/-/just-diff-6.0.2.tgz", - "integrity": "sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA==", - "dev": true - }, - "node_modules/just-diff-apply": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.5.0.tgz", - "integrity": "sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==", - "dev": true - }, - "node_modules/just-extend": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-6.2.0.tgz", - "integrity": "sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw==" - }, - "node_modules/keccak": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.4.tgz", - "integrity": "sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==", - "hasInstallScript": true, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, "dependencies": { - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0", - "readable-stream": "^3.6.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=10.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "devOptional": true, - "dependencies": { - "json-buffer": "3.0.1" + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "integrity": "sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.9" + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" } }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", "dev": true, "engines": { "node": ">=6" } }, - "node_modules/kuler": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", - "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" - }, - "node_modules/lerna": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/lerna/-/lerna-8.2.1.tgz", - "integrity": "sha512-Xwjv9/4ixp7fpBWhtvp7dz4NoQT8DEf7hzibHKCgu/8kmZUHeXsTn+TKspHqhI+p4YDmdkDnkg8xmymz73kVOg==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "@lerna/create": "8.2.1", - "@npmcli/arborist": "7.5.4", - "@npmcli/package-json": "5.2.0", - "@npmcli/run-script": "8.1.0", - "@nx/devkit": ">=17.1.2 < 21", - "@octokit/plugin-enterprise-rest": "6.0.1", - "@octokit/rest": "20.1.2", - "aproba": "2.0.0", - "byte-size": "8.1.1", - "chalk": "4.1.0", - "clone-deep": "4.0.1", - "cmd-shim": "6.0.3", - "color-support": "1.1.3", - "columnify": "1.6.0", - "console-control-strings": "^1.1.0", - "conventional-changelog-angular": "7.0.0", - "conventional-changelog-core": "5.0.1", - "conventional-recommended-bump": "7.0.1", - "cosmiconfig": "9.0.0", - "dedent": "1.5.3", - "envinfo": "7.13.0", - "execa": "5.0.0", - "fs-extra": "^11.2.0", - "get-port": "5.1.1", - "get-stream": "6.0.0", - "git-url-parse": "14.0.0", - "glob-parent": "6.0.2", - "globby": "11.1.0", - "graceful-fs": "4.2.11", - "has-unicode": "2.0.1", - "import-local": "3.1.0", - "ini": "^1.3.8", - "init-package-json": "6.0.3", - "inquirer": "^8.2.4", - "is-ci": "3.0.1", - "is-stream": "2.0.0", - "jest-diff": ">=29.4.3 < 30", - "js-yaml": "4.1.0", - "libnpmaccess": "8.0.6", - "libnpmpublish": "9.0.9", - "load-json-file": "6.2.0", - "lodash": "^4.17.21", - "make-dir": "4.0.0", - "minimatch": "3.0.5", - "multimatch": "5.0.0", - "node-fetch": "2.6.7", - "npm-package-arg": "11.0.2", - "npm-packlist": "8.0.2", - "npm-registry-fetch": "^17.1.0", - "nx": ">=17.1.2 < 21", - "p-map": "4.0.0", - "p-map-series": "2.1.0", - "p-pipe": "3.1.0", - "p-queue": "6.6.2", - "p-reduce": "2.1.0", - "p-waterfall": "2.1.1", - "pacote": "^18.0.6", - "pify": "5.0.0", - "read-cmd-shim": "4.0.0", - "resolve-from": "5.0.0", - "rimraf": "^4.4.1", - "semver": "^7.3.8", - "set-blocking": "^2.0.0", - "signal-exit": "3.0.7", - "slash": "3.0.0", - "ssri": "^10.0.6", - "string-width": "^4.2.3", - "strong-log-transformer": "2.1.0", - "tar": "6.2.1", - "temp-dir": "1.0.0", - "typescript": ">=3 < 6", - "upath": "2.0.1", - "uuid": "^10.0.0", - "validate-npm-package-license": "3.0.4", - "validate-npm-package-name": "5.0.1", - "wide-align": "1.1.5", - "write-file-atomic": "5.0.1", - "write-pkg": "4.0.0", - "yargs": "17.7.2", - "yargs-parser": "21.1.1" - }, - "bin": { - "lerna": "dist/cli.js" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">=18.0.0" + "node": ">=0.10.0" } }, - "node_modules/lerna-update-wizard": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/lerna-update-wizard/-/lerna-update-wizard-1.1.2.tgz", - "integrity": "sha512-VOP3UxEHfwnlNNQKi79giXnHzGvQ0BohUA/lw1WbpHKAHq9+OWSTTmiqVyLou+SNDrNscdvH65CIt+hs9OGKXA==", + "node_modules/is-hex-prefixed": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", + "integrity": "sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==", "dev": true, - "dependencies": { - "chalk": "^4.1.2", - "execution-time": "^1.4.1", - "fs-extra": "^10.0.0", - "globby": "^11.0.4", - "inquirer": "^8.2.0", - "inquirer-autocomplete-prompt": "^1.4.0", - "lodash": "^4.17.21", - "meow": "^9.0.0", - "minimist": "^1.2.5", - "normalize-path": "^3.0.0", - "semver-compare": "^1.0.0" - }, - "bin": { - "lernaupdate": "bin/lernaupdate" - }, "engines": { - "node": ">=12" + "node": ">=6.5.0", + "npm": ">=3" } }, - "node_modules/lerna-update-wizard/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true, - "dependencies": { - "color-convert": "^2.0.1" + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=0.12.0" } }, - "node_modules/lerna-update-wizard/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lerna-update-wizard/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=8" } }, - "node_modules/lerna-update-wizard/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/lerna-update-wizard/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/lerna-update-wizard/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "isobject": "^3.0.1" }, "engines": { - "node": ">=12" + "node": ">=0.10.0" } }, - "node_modules/lerna-update-wizard/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lerna-update-wizard/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" + "call-bind": "^1.0.7" }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lerna-update-wizard/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/is-ssh": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.1.tgz", + "integrity": "sha512-JNeu1wQsHjyHgn9NcWTaXq6zWSR6hqE0++zhfZlkFBbScNkyvxCdeV8sRkSBaeLKxmbpR21brail63ACNxJ0Tg==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" - }, + "protocols": "^2.0.1" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lerna-update-wizard/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lerna-update-wizard/node_modules/meow": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", - "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize": "^1.2.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.18.0", - "yargs-parser": "^20.2.3" + "has-symbols": "^1.0.2" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lerna-update-wizard/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "node_modules/is-text-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", + "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==", "dev": true, "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" + "text-extensions": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/lerna-update-wizard/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "which-typed-array": "^1.1.14" }, "engines": { - "node": ">=6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lerna-update-wizard/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lerna-update-wizard/node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "call-bind": "^1.0.2" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lerna-update-wizard/node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", "dev": true, "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" + "is-docker": "^2.0.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lerna-update-wizard/node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/lerna-update-wizard/node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "node_modules/lerna-update-wizard/node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, + "node_modules/isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" } }, - "node_modules/lerna-update-wizard/node_modules/read-pkg/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" + "node_modules/isomorphic-ws": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz", + "integrity": "sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==", + "peerDependencies": { + "ws": "*" } }, - "node_modules/lerna-update-wizard/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/lerna-update-wizard/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/istanbul-lib-instrument": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz", + "integrity": "sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" }, "engines": { "node": ">=10" } }, - "node_modules/lerna-update-wizard/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/istanbul-lib-instrument/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/lerna-update-wizard/node_modules/type-fest": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", - "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lerna-update-wizard/node_modules/yallist": { + "node_modules/istanbul-lib-instrument/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/lerna/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=10" } }, - "node_modules/lerna/node_modules/chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=8" } }, - "node_modules/lerna/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=8" } }, - "node_modules/lerna/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/lerna/node_modules/execa": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", - "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/lerna/node_modules/get-stream": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", - "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=8" } }, - "node_modules/lerna/node_modules/glob": { - "version": "9.3.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", - "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" + "@isaacs/cliui": "^8.0.2" }, "funding": { "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "node_modules/lerna/node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/lerna/node_modules/glob/node_modules/minimatch": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", - "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", + "node_modules/jake": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", + "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" }, - "engines": { - "node": ">=16 || 14 >=14.17" + "bin": { + "jake": "bin/cli.js" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/lerna/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/lerna/node_modules/is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "node_modules/jake/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/lerna/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/jake/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/lerna/node_modules/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", + "node_modules/jake/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "color-name": "~1.1.4" }, "engines": { - "node": "*" + "node": ">=7.0.0" } }, - "node_modules/lerna/node_modules/minipass": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", - "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", + "node_modules/jake/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jake/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/lerna/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/jake/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/lerna/node_modules/rimraf": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", - "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, "dependencies": { - "glob": "^9.2.0" + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" }, "bin": { - "rimraf": "dist/cjs/src/bin.js" + "jest": "bin/jest.js" }, "engines": { - "node": ">=14" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/lerna/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" }, "engines": { - "node": ">=10" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/lerna/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/lerna/node_modules/uuid": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", - "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "bin": { - "uuid": "dist/bin/uuid" + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/lerna/node_modules/write-file-atomic": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^4.0.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/lerna/node_modules/write-file-atomic/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "engines": { - "node": ">=14" + "dependencies": { + "color-name": "~1.1.4" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "engines": { + "node": ">=7.0.0" } }, - "node_modules/lerna/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/lerna/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "node_modules/jest-circus/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/level": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/level/-/level-8.0.1.tgz", - "integrity": "sha512-oPBGkheysuw7DmzFQYyFe8NAia5jFLAgEnkgWnK3OXAuJr8qFT+xBQIwokAZPME2bhPFzS8hlYcL16m8UZrtwQ==", + "node_modules/jest-circus/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "abstract-level": "^1.0.4", - "browser-level": "^1.0.1", - "classic-level": "^1.2.0" - }, - "engines": { - "node": ">=12" + "has-flag": "^4.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/level" - } - }, - "node_modules/level-supports": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-4.0.1.tgz", - "integrity": "sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA==", - "dev": true, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/level-transcoder": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-transcoder/-/level-transcoder-1.0.1.tgz", - "integrity": "sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w==", + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", "dev": true, "dependencies": { - "buffer": "^6.0.3", - "module-error": "^1.0.1" + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" }, "engines": { - "node": ">=12" - } - }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true, - "engines": { - "node": ">=6" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/jest-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/libnpmaccess": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-8.0.6.tgz", - "integrity": "sha512-uM8DHDEfYG6G5gVivVl+yQd4pH3uRclHC59lzIbSvy7b5FEwR+mU49Zq1jEyRtRFv7+M99mUW9S0wL/4laT4lw==", + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "npm-package-arg": "^11.0.2", - "npm-registry-fetch": "^17.0.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/libnpmpublish": { - "version": "9.0.9", - "resolved": "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-9.0.9.tgz", - "integrity": "sha512-26zzwoBNAvX9AWOPiqqF6FG4HrSCPsHFkQm7nT+xU1ggAujL/eae81RnCv4CJ2In9q9fh10B88sYSzKCUh/Ghg==", + "node_modules/jest-cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "ci-info": "^4.0.0", - "normalize-package-data": "^6.0.1", - "npm-package-arg": "^11.0.2", - "npm-registry-fetch": "^17.0.1", - "proc-log": "^4.2.0", - "semver": "^7.3.7", - "sigstore": "^2.2.0", - "ssri": "^10.0.6" + "color-name": "~1.1.4" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=7.0.0" } }, - "node_modules/libnpmpublish/node_modules/ci-info": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.2.0.tgz", - "integrity": "sha512-cYY9mypksY8NRqgDB1XD1RiJL338v/551niynFTGkZOO2LHuB2OmOYxDIe/ttN9AHwrqdum1360G3ald0W9kCg==", + "node_modules/jest-cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-cli/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], "engines": { "node": ">=8" } }, - "node_modules/libnpmpublish/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "node_modules/jest-cli/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "has-flag": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/libsodium-sumo": { - "version": "0.7.13", - "resolved": "https://registry.npmjs.org/libsodium-sumo/-/libsodium-sumo-0.7.13.tgz", - "integrity": "sha512-zTGdLu4b9zSNLfovImpBCbdAA4xkpkZbMnSQjP8HShyOutnGjRHmSOKlsylh1okao6QhLiz7nG98EGn+04cZjQ==" - }, - "node_modules/libsodium-wrappers-sumo": { - "version": "0.7.13", - "resolved": "https://registry.npmjs.org/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.13.tgz", - "integrity": "sha512-lz4YdplzDRh6AhnLGF2Dj2IUj94xRN6Bh8T0HLNwzYGwPehQJX6c7iYVrFUPZ3QqxE0bqC+K0IIqqZJYWumwSQ==", + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, "dependencies": { - "libsodium-sumo": "^0.7.13" + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } } }, - "node_modules/lines-and-columns": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", - "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/load-json-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz", - "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==", + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^5.0.0", - "strip-bom": "^4.0.0", - "type-fest": "^0.6.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/load-json-file/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "node_modules/jest-config/node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "engines": { "node": ">=8" } }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "p-locate": "^5.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=7.0.0" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "node_modules/lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", - "dev": true - }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" - }, - "node_modules/lodash.ismatch": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", - "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==", - "dev": true - }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==" + "node_modules/jest-config/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "node_modules/jest-config/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/log-symbols/node_modules/ansi-styles": { + "node_modules/jest-diff/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -22585,7 +18243,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/log-symbols/node_modules/chalk": { + "node_modules/jest-diff/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -22601,7 +18259,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/log-symbols/node_modules/color-convert": { + "node_modules/jest-diff/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -22613,13 +18271,13 @@ "node": ">=7.0.0" } }, - "node_modules/log-symbols/node_modules/color-name": { + "node_modules/jest-diff/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/log-symbols/node_modules/has-flag": { + "node_modules/jest-diff/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", @@ -22628,7 +18286,7 @@ "node": ">=8" } }, - "node_modules/log-symbols/node_modules/supports-color": { + "node_modules/jest-diff/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", @@ -22640,1771 +18298,1776 @@ "node": ">=8" } }, - "node_modules/logform": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz", - "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==", + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dev": true, "dependencies": { - "@colors/colors": "1.6.0", - "@types/triple-beam": "^1.3.2", - "fecha": "^4.2.0", - "ms": "^2.1.1", - "safe-stable-stringify": "^2.3.1", - "triple-beam": "^1.3.0" + "detect-newline": "^3.0.0" }, "engines": { - "node": ">= 12.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "node_modules/loupe": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", - "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", "dev": true, "dependencies": { - "get-func-name": "^2.0.1" - } - }, - "node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "devOptional": true, + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, "engines": { - "node": ">=8" - } - }, - "node_modules/lru_map": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", - "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==", - "dev": true - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "semver": "^7.5.3" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/make-dir/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "color-name": "~1.1.4" }, "engines": { - "node": ">=10" + "node": ">=7.0.0" } }, - "node_modules/make-dir/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/make-fetch-happen": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", - "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "node_modules/jest-each/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "proc-log": "^4.2.0", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" - }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "node_modules/jest-each/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "tmpl": "1.0.5" - } - }, - "node_modules/map-obj": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", - "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "dev": true, + "has-flag": "^4.0.0" + }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/markdown-table": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-1.1.3.tgz", - "integrity": "sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==", - "dev": true - }, - "node_modules/mcl-wasm": { - "version": "0.7.9", - "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.7.9.tgz", - "integrity": "sha512-iJIUcQWA88IJB/5L15GnJVnSQJmf/YaxxV6zRavv83HILHaJQb6y0iFyDMdDO0gN8X37tdxmAOrH/P8B6RB8sQ==", + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, "engines": { - "node": ">=8.9.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, "engines": { - "node": ">= 0.6" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/memory-level": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/memory-level/-/memory-level-1.0.0.tgz", - "integrity": "sha512-UXzwewuWeHBz5krr7EvehKcmLFNoXxGcvuYhC41tRnkrTbJohtS7kVn9akmgirtRygg+f7Yjsfi8Uu5SGSQ4Og==", + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", "dev": true, "dependencies": { - "abstract-level": "^1.0.0", - "functional-red-black-tree": "^1.0.1", - "module-error": "^1.0.1" + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "engines": { - "node": ">=12" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, "engines": { - "node": ">= 0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/meow": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", - "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.18.0", - "yargs-parser": "^20.2.3" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/meow/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/meow/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=10" + "node": ">=7.0.0" } }, - "node_modules/meow/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-matcher-utils/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/meow/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": ">=10" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/meow/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/meow/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=6" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/meow/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "color-name": "~1.1.4" }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-message-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, "engines": { "node": ">=8" } }, - "node_modules/meow/node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "node_modules/jest-message-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/meow/node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", "dev": true, "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "engines": { + "node": ">=6" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } } }, - "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", "dev": true, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/meow/node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", "dev": true, "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/meow/node_modules/read-pkg/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", "dev": true, + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/meow/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "color-convert": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/meow/node_modules/type-fest": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", - "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/meow/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/merge-descriptors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", - "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "node_modules/jest-resolve/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">= 8" + "node": ">=8" } }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "node_modules/micro-ftch": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.3.1.tgz", - "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==" - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", "dev": true, "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" }, "engines": { - "node": ">=8.6" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" + "color-convert": "^2.0.1" }, - "bin": { - "miller-rabin": "bin/miller-rabin" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/miller-rabin/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "bin": { - "mime": "cli.js" + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "dependencies": { - "mime-db": "1.52.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">= 0.6" + "node": ">=7.0.0" } }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "devOptional": true, + "node_modules/jest-runner/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/min-document": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==", + "node_modules/jest-runner/node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", "dev": true, "dependencies": { - "dom-walk": "^0.1.0" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "node_modules/jest-runner/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "devOptional": true, "dependencies": { - "brace-expansion": "^1.1.7" + "has-flag": "^4.0.0" }, "engines": { - "node": "*" + "node": ">=8" } }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/minipass": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/minipass-collect": { + "node_modules/jest-runtime/node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", - "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "minipass": "^7.0.3" + "color-name": "~1.1.4" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=7.0.0" } }, - "node_modules/minipass-fetch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", - "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-runtime/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" + "node": ">=8" } }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "minipass": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 8" + "node": ">=8" } }, - "node_modules/minipass-flush/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/minipass-flush/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "minipass": "^3.0.0" + "color-convert": "^2.0.1" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/minipass-pipeline/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/minipass-pipeline/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "minipass": "^3.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/minipass-sized/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-snapshot/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/minipass-sized/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "devOptional": true, + "node_modules/jest-snapshot/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, "dependencies": { - "minipass": "^3.0.0", "yallist": "^4.0.0" }, "engines": { - "node": ">= 8" + "node": ">=10" } }, - "node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "devOptional": true, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, "dependencies": { - "yallist": "^4.0.0" + "lru-cache": "^6.0.0" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "devOptional": true - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "devOptional": true, "bin": { - "mkdirp": "bin/cmd.js" + "semver": "bin/semver.js" }, "engines": { "node": ">=10" } }, - "node_modules/mkdirp-promise": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz", - "integrity": "sha512-Hepn5kb1lJPtVW84RFT40YG1OddBNTOVUZR2bzQUHc+Z03en8/3uX0+060JDhcEzyO08HmipsN9DcnFMxhIL9w==", - "deprecated": "This package is broken and no longer maintained. 'mkdirp' itself supports promises now, please switch to that.", + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "mkdirp": "*" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/mnemonist": { - "version": "0.38.5", - "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", - "integrity": "sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==", - "dev": true, - "dependencies": { - "obliterator": "^2.0.0" - } + "node_modules/jest-snapshot/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, - "node_modules/mocha": { - "version": "10.8.2", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", - "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, "dependencies": { - "ansi-colors": "^4.1.3", - "browser-stdout": "^1.3.1", - "chokidar": "^3.5.3", - "debug": "^4.3.5", - "diff": "^5.2.0", - "escape-string-regexp": "^4.0.0", - "find-up": "^5.0.0", - "glob": "^8.1.0", - "he": "^1.2.0", - "js-yaml": "^4.1.0", - "log-symbols": "^4.1.0", - "minimatch": "^5.1.6", - "ms": "^2.1.3", - "serialize-javascript": "^6.0.2", - "strip-json-comments": "^3.1.1", - "supports-color": "^8.1.1", - "workerpool": "^6.5.1", - "yargs": "^16.2.0", - "yargs-parser": "^20.2.9", - "yargs-unparser": "^2.0.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha.js" + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">= 14.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/mocha/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/mocha/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, + "color-convert": "^2.0.1" + }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/mocha/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/mocha/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/jest-util/node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "engines": { "node": ">=8" } }, - "node_modules/mocha/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "node_modules/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "color-name": "~1.1.4" }, "engines": { - "node": ">=10" + "node": ">=7.0.0" } }, - "node_modules/mocha/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">=8" } }, - "node_modules/mocha/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=10" - } - }, - "node_modules/mocha/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/mock-fs": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", - "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==", - "dev": true - }, - "node_modules/modify-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", - "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/module-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/module-error/-/module-error-1.0.2.tgz", - "integrity": "sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA==", + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, "engines": { - "node": ">=10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/multibase": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.6.1.tgz", - "integrity": "sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==", - "deprecated": "This module has been superseded by the multiformats module", + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "base-x": "^3.0.8", - "buffer": "^5.5.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/multibase/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/multicodec": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-0.5.7.tgz", - "integrity": "sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==", - "deprecated": "This module has been superseded by the multiformats module", + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-validate/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "varint": "^5.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/multihashes": { - "version": "0.4.21", - "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-0.4.21.tgz", - "integrity": "sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==", + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "buffer": "^5.5.0", - "multibase": "^0.7.0", - "varint": "^5.0.0" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/multihashes/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/multihashes/node_modules/multibase": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.7.0.tgz", - "integrity": "sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==", - "deprecated": "This module has been superseded by the multiformats module", + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "base-x": "^3.0.8", - "buffer": "^5.5.0" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/multimatch": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", - "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "@types/minimatch": "^3.0.3", - "array-differ": "^3.0.0", - "array-union": "^2.1.0", - "arrify": "^2.0.1", - "minimatch": "^3.0.4" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/multimatch/node_modules/arrify": { + "node_modules/jest-watcher/node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=8" - } - }, - "node_modules/mustache": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", - "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==", - "optional": true, - "bin": { - "mustache": "bin/mustache" + "node": ">=7.0.0" } }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nano-json-stream-parser": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz", - "integrity": "sha512-9MqxMH/BSJC7dnLsEMPyfN5Dvoo49IsPFYMcHw3Bcfc2kN0lpHRBSzlMSVx4HGyJ7s9B31CyBTVehWJoQ8Ctew==", - "dev": true - }, - "node_modules/nanoassert": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/nanoassert/-/nanoassert-1.1.0.tgz", - "integrity": "sha512-C40jQ3NzfkP53NsO8kEOFd79p4b9kDXQMwgiY1z8ZwrDZgUyom0AHwGegF4Dm99L+YoYhuaB0ceerUcXmqr1rQ==" - }, - "node_modules/napi-macros": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.2.2.tgz", - "integrity": "sha512-hmEVtAGYzVQpCKdbQea4skABsdXW4RUh5t5mJ2zzqowJS2OyXZTU1KhDVFhx+NlWZ4ap9mqR9TcDO3LTTttd+g==", - "dev": true - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true + "node_modules/jest-watcher/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/near-abi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/near-abi/-/near-abi-0.1.1.tgz", - "integrity": "sha512-RVDI8O+KVxRpC3KycJ1bpfVj9Zv+xvq9PlW1yIFl46GhrnLw83/72HqHGjGDjQ8DtltkcpSjY9X3YIGZ+1QyzQ==", - "optional": true, + "node_modules/jest-watcher/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { - "@types/json-schema": "^7.0.11" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/near-api-js": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/near-api-js/-/near-api-js-2.1.4.tgz", - "integrity": "sha512-e1XicyvJvQMtu7qrG8oWyAdjHJJCoy+cvbW6h2Dky4yj7vC85omQz/x7IgKl71VhzDj2/TGUwjTVESp6NSe75A==", - "optional": true, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, "dependencies": { - "@near-js/accounts": "0.1.4", - "@near-js/crypto": "0.0.5", - "@near-js/keystores": "0.0.5", - "@near-js/keystores-browser": "0.0.5", - "@near-js/keystores-node": "0.0.5", - "@near-js/providers": "0.0.7", - "@near-js/signers": "0.0.5", - "@near-js/transactions": "0.2.1", - "@near-js/types": "0.0.4", - "@near-js/utils": "0.0.4", - "@near-js/wallet-account": "0.0.7", - "ajv": "^8.11.2", - "ajv-formats": "^2.1.1", - "bn.js": "5.2.1", - "borsh": "^0.7.0", - "depd": "^2.0.0", - "error-polyfill": "^0.1.3", - "http-errors": "^1.7.2", - "near-abi": "0.1.1", - "node-fetch": "^2.6.1", - "tweetnacl": "^1.0.1" + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" } }, - "node_modules/near-api-js/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "optional": true, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/near-api-js/node_modules/borsh": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz", - "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==", - "optional": true, - "dependencies": { - "bn.js": "^5.2.0", - "bs58": "^4.0.0", - "text-encoding-utf-8": "^1.0.2" + "node_modules/js-sdsl": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.2.tgz", + "integrity": "sha512-dwXFwByc/ajSV6m5bcKAPwe4yDDF6D614pxmIi5odytzxRlwqF6nwoiCek80Ixc7Cvma5awClxrzFtxCQvcM8w==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" } }, - "node_modules/near-api-js/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "node_modules/js-sha256": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", + "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==", "optional": true }, - "node_modules/near-sandbox": { - "version": "0.0.17", - "resolved": "https://registry.npmjs.org/near-sandbox/-/near-sandbox-0.0.17.tgz", - "integrity": "sha512-bL0We378hFZ0/xHAKP5mAWKS5OjzU6+VuvMlXpMwyFAwG2s5NwOnzRTezvYYwQNtG3iU+xvQ6jWvp7UO1STGLQ==", - "hasInstallScript": true, - "optional": true, + "node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, "dependencies": { - "got": "^11.8.2", - "tar": "^6.1.0" + "argparse": "^2.0.1" }, "bin": { - "near-sandbox": "run.js", - "sandbox": "run.js" + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/near-units": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/near-units/-/near-units-0.1.9.tgz", - "integrity": "sha512-xiuBjpNsi+ywiu7P6iWRZdgFm7iCr/cfWlVO6+e5uaAqH4mE1rrurElyrL91llNDSnMwogd9XmlZOw5KbbHNsA==", - "optional": true, - "dependencies": { - "bn.js": "^5.2.0" - }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "dev": true + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, "bin": { - "near-units": "dist/cli.js" + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" } }, - "node_modules/near-workspaces": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/near-workspaces/-/near-workspaces-3.5.0.tgz", - "integrity": "sha512-lkRCP2os8v7W+q1maQPSEI98f+YiPb86ibDyIy8bxr6fqnJPOsIRR3xE33rOwBsiph3WuUH46qtpYK0a+Co+EQ==", - "hasInstallScript": true, - "optional": true, + "node_modules/json-bigint": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", + "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==", "dependencies": { - "base64url": "^3.0.1", - "bn.js": "^5.2.0", - "borsh": "^0.5.0", - "bs58": "^4.0.1", - "callsites": "^4.0.0", - "fs-extra": "^10.0.0", - "js-sha256": "^0.9.0", - "near-api-js": "^v2.1.4", - "near-sandbox": "^0.0.17", - "near-units": "^0.1.9", - "node-port-check": "^2.0.1", - "promisify-child-process": "^4.1.1", - "proper-lockfile": "^4.1.2", - "pure-uuid": "^1.6.2", - "rimraf": "^3.0.2", - "temp-dir": "^2.0.0" - }, - "engines": { - "node": ">= 14.0.0", - "npm": ">= 6.0.0" + "bignumber.js": "^9.0.0" } }, - "node_modules/near-workspaces/node_modules/callsites": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.1.0.tgz", - "integrity": "sha512-aBMbD1Xxay75ViYezwT40aQONfr+pSXTHwNKvIXhXD6+LY3F1dLIcceoC5OZKBVHbXcysz1hL9D2w0JJIMXpUw==", - "optional": true, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "devOptional": true + }, + "node_modules/json-duplicate-key-handle": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-duplicate-key-handle/-/json-duplicate-key-handle-1.0.0.tgz", + "integrity": "sha512-OLIxL+UpfwUsqcLX3i6Z51ChTou/Vje+6bSeGUSubj96dF/SfjObDprLy++ZXYH07KITuEzsXS7PX7e/BGf4jw==", + "dependencies": { + "backslash": "^0.2.0" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", + "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", + "dev": true, "engines": { - "node": ">=12.20" - }, + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json-stringify-nice": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz", + "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==", + "dev": true, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/near-workspaces/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "optional": true, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", "universalify": "^2.0.0" }, - "engines": { - "node": ">=12" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/near-workspaces/node_modules/temp-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", - "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", - "optional": true, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/jsonschema": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz", + "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==", + "dev": true, "engines": { - "node": ">=8" + "node": "*" } }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", "dev": true, + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, "engines": { - "node": ">= 0.6" + "node": "*" } }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "node_modules/just-diff": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/just-diff/-/just-diff-6.0.2.tgz", + "integrity": "sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA==", "dev": true }, - "node_modules/next-tick": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", - "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", + "node_modules/just-diff-apply": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.5.0.tgz", + "integrity": "sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==", "dev": true }, - "node_modules/nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true + "node_modules/just-extend": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-6.2.0.tgz", + "integrity": "sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw==" }, - "node_modules/nise": { - "version": "5.1.9", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.9.tgz", - "integrity": "sha512-qOnoujW4SV6e40dYxJOb3uvuoPHtmLzIk4TFo+j0jPJoC+5Z9xja5qH5JZobEPsa8+YYphMrOSwnrshEhG2qww==", + "node_modules/keccak": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.4.tgz", + "integrity": "sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==", + "hasInstallScript": true, "dependencies": { - "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^11.2.2", - "@sinonjs/text-encoding": "^0.7.2", - "just-extend": "^6.2.0", - "path-to-regexp": "^6.2.1" + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10.0.0" } }, - "node_modules/nise/node_modules/@sinonjs/fake-timers": { - "version": "11.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", - "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "devOptional": true, "dependencies": { - "@sinonjs/commons": "^3.0.0" + "json-buffer": "3.0.1" } }, - "node_modules/nise/node_modules/path-to-regexp": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", - "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==" - }, - "node_modules/node-addon-api": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", - "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/node-emoji": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", - "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "node_modules/klaw": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", + "integrity": "sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==", "dev": true, - "dependencies": { - "lodash": "^4.17.21" + "optionalDependencies": { + "graceful-fs": "^4.1.9" } }, - "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "node": ">=6" } }, - "node_modules/node-gyp": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.3.1.tgz", - "integrity": "sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ==", + "node_modules/kuler": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" + }, + "node_modules/lerna": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/lerna/-/lerna-8.2.1.tgz", + "integrity": "sha512-Xwjv9/4ixp7fpBWhtvp7dz4NoQT8DEf7hzibHKCgu/8kmZUHeXsTn+TKspHqhI+p4YDmdkDnkg8xmymz73kVOg==", "dev": true, "dependencies": { - "env-paths": "^2.2.0", - "exponential-backoff": "^3.1.1", - "glob": "^10.3.10", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^13.0.0", - "nopt": "^7.0.0", - "proc-log": "^4.1.0", - "semver": "^7.3.5", - "tar": "^6.2.1", - "which": "^4.0.0" + "@lerna/create": "8.2.1", + "@npmcli/arborist": "7.5.4", + "@npmcli/package-json": "5.2.0", + "@npmcli/run-script": "8.1.0", + "@nx/devkit": ">=17.1.2 < 21", + "@octokit/plugin-enterprise-rest": "6.0.1", + "@octokit/rest": "20.1.2", + "aproba": "2.0.0", + "byte-size": "8.1.1", + "chalk": "4.1.0", + "clone-deep": "4.0.1", + "cmd-shim": "6.0.3", + "color-support": "1.1.3", + "columnify": "1.6.0", + "console-control-strings": "^1.1.0", + "conventional-changelog-angular": "7.0.0", + "conventional-changelog-core": "5.0.1", + "conventional-recommended-bump": "7.0.1", + "cosmiconfig": "9.0.0", + "dedent": "1.5.3", + "envinfo": "7.13.0", + "execa": "5.0.0", + "fs-extra": "^11.2.0", + "get-port": "5.1.1", + "get-stream": "6.0.0", + "git-url-parse": "14.0.0", + "glob-parent": "6.0.2", + "globby": "11.1.0", + "graceful-fs": "4.2.11", + "has-unicode": "2.0.1", + "import-local": "3.1.0", + "ini": "^1.3.8", + "init-package-json": "6.0.3", + "inquirer": "^8.2.4", + "is-ci": "3.0.1", + "is-stream": "2.0.0", + "jest-diff": ">=29.4.3 < 30", + "js-yaml": "4.1.0", + "libnpmaccess": "8.0.6", + "libnpmpublish": "9.0.9", + "load-json-file": "6.2.0", + "lodash": "^4.17.21", + "make-dir": "4.0.0", + "minimatch": "3.0.5", + "multimatch": "5.0.0", + "node-fetch": "2.6.7", + "npm-package-arg": "11.0.2", + "npm-packlist": "8.0.2", + "npm-registry-fetch": "^17.1.0", + "nx": ">=17.1.2 < 21", + "p-map": "4.0.0", + "p-map-series": "2.1.0", + "p-pipe": "3.1.0", + "p-queue": "6.6.2", + "p-reduce": "2.1.0", + "p-waterfall": "2.1.1", + "pacote": "^18.0.6", + "pify": "5.0.0", + "read-cmd-shim": "4.0.0", + "resolve-from": "5.0.0", + "rimraf": "^4.4.1", + "semver": "^7.3.8", + "set-blocking": "^2.0.0", + "signal-exit": "3.0.7", + "slash": "3.0.0", + "ssri": "^10.0.6", + "string-width": "^4.2.3", + "strong-log-transformer": "2.1.0", + "tar": "6.2.1", + "temp-dir": "1.0.0", + "typescript": ">=3 < 6", + "upath": "2.0.1", + "uuid": "^10.0.0", + "validate-npm-package-license": "3.0.4", + "validate-npm-package-name": "5.0.1", + "wide-align": "1.1.5", + "write-file-atomic": "5.0.1", + "write-pkg": "4.0.0", + "yargs": "17.7.2", + "yargs-parser": "21.1.1" }, "bin": { - "node-gyp": "bin/node-gyp.js" + "lerna": "dist/cli.js" }, "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/node-gyp-build": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", - "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/node-gyp/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" + "node": ">=18.0.0" } }, - "node_modules/node-gyp/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "node_modules/lerna-update-wizard": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/lerna-update-wizard/-/lerna-update-wizard-1.1.2.tgz", + "integrity": "sha512-VOP3UxEHfwnlNNQKi79giXnHzGvQ0BohUA/lw1WbpHKAHq9+OWSTTmiqVyLou+SNDrNscdvH65CIt+hs9OGKXA==", "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" + "dependencies": { + "chalk": "^4.1.2", + "execution-time": "^1.4.1", + "fs-extra": "^10.0.0", + "globby": "^11.0.4", + "inquirer": "^8.2.0", + "inquirer-autocomplete-prompt": "^1.4.0", + "lodash": "^4.17.21", + "meow": "^9.0.0", + "minimist": "^1.2.5", + "normalize-path": "^3.0.0", + "semver-compare": "^1.0.0" }, "bin": { - "glob": "dist/esm/bin.mjs" + "lernaupdate": "bin/lernaupdate" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/isexe": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", - "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", - "dev": true, "engines": { - "node": ">=16" + "node": ">=12" } }, - "node_modules/node-gyp/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "node_modules/lerna-update-wizard/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/node-gyp/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "node_modules/lerna-update-wizard/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/node-gyp/node_modules/which": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", - "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "node_modules/lerna-update-wizard/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "isexe": "^3.1.1" - }, - "bin": { - "node-which": "bin/which.js" + "color-name": "~1.1.4" }, "engines": { - "node": "^16.13.0 || >=18.0.0" + "node": ">=7.0.0" } }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node_modules/node-machine-id": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz", - "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==", - "dev": true - }, - "node_modules/node-port-check": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/node-port-check/-/node-port-check-2.0.1.tgz", - "integrity": "sha512-PV1tj5OPbWwxvhPcChXxwCIKl/IfVEdPP4u/gQz2lao/VGoeIUXb/4U72KSHLZpTVBmgTnMm0me7yR0wUsIuPg==", - "optional": true - }, - "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "node_modules/lerna-update-wizard/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/nopt": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", - "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "node_modules/lerna-update-wizard/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "abbrev": "^2.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/normalize-package-data": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", - "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", + "node_modules/lerna-update-wizard/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, "dependencies": { - "hosted-git-info": "^7.0.0", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "node_modules/lerna-update-wizard/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "devOptional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/npm-bundled": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz", - "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==", + "node_modules/lerna-update-wizard/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, "dependencies": { - "npm-normalize-package-bin": "^3.0.0" + "lru-cache": "^6.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/npm-install-checks": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", - "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", + "node_modules/lerna-update-wizard/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { - "semver": "^7.1.1" + "p-locate": "^4.1.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/npm-install-checks/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "node_modules/lerna-update-wizard/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "yallist": "^4.0.0" }, "engines": { "node": ">=10" } }, - "node_modules/npm-normalize-package-bin": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", - "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-package-arg": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz", - "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==", + "node_modules/lerna-update-wizard/node_modules/meow": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", + "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", "dev": true, "dependencies": { - "hosted-git-info": "^7.0.0", - "proc-log": "^4.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/npm-package-arg/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize": "^1.2.0", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-packlist": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", - "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", + "node_modules/lerna-update-wizard/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "dev": true, "dependencies": { - "ignore-walk": "^6.0.4" + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/npm-pick-manifest": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", - "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", + "node_modules/lerna-update-wizard/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^11.0.0", - "semver": "^7.3.5" + "p-try": "^2.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-pick-manifest/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "node_modules/lerna-update-wizard/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "p-limit": "^2.2.0" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/npm-registry-fetch": { - "version": "17.1.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz", - "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==", + "node_modules/lerna-update-wizard/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, "dependencies": { - "@npmcli/redact": "^2.0.0", - "jsonparse": "^1.3.1", - "make-fetch-happen": "^13.0.0", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minizlib": "^2.1.2", - "npm-package-arg": "^11.0.0", - "proc-log": "^4.0.0" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/npm-run-all": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "node_modules/lerna-update-wizard/node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" - }, - "bin": { - "npm-run-all": "bin/npm-run-all/index.js", - "run-p": "bin/run-p/index.js", - "run-s": "bin/run-s/index.js" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" }, "engines": { - "node": ">= 4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-run-all/node_modules/cross-spawn": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", - "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", + "node_modules/lerna-update-wizard/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true, - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, "engines": { - "node": ">=4.8" + "node": ">=8" } }, - "node_modules/npm-run-all/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "node_modules/lerna-update-wizard/node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "node_modules/lerna-update-wizard/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, - "engines": { - "node": ">=4" + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "node_modules/npm-run-all/node_modules/semver": { + "node_modules/lerna-update-wizard/node_modules/read-pkg/node_modules/semver": { "version": "5.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", @@ -24413,143 +20076,61 @@ "semver": "bin/semver" } }, - "node_modules/npm-run-all/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", - "dev": true, - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-all/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "node_modules/lerna-update-wizard/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/npm-run-all/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "node_modules/lerna-update-wizard/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "lru-cache": "^6.0.0" }, "bin": { - "which": "bin/which" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" + "semver": "bin/semver.js" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/number-to-bn": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", - "integrity": "sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==", + "node_modules/lerna-update-wizard/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "bn.js": "4.11.6", - "strip-hex-prefix": "1.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6.5.0", - "npm": ">=3" + "node": ">=8" } - }, - "node_modules/number-to-bn/node_modules/bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", - "dev": true - }, - "node_modules/nx": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/nx/-/nx-20.7.2.tgz", - "integrity": "sha512-T9pCTw6pA9PoowpLsm9L+GeQw0iHitrIX96jrpMXKbSjPmryokP7EJ+LNkdEV6xX+MrATERWJlPd+NYwnYxbIA==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "@napi-rs/wasm-runtime": "0.2.4", - "@yarnpkg/lockfile": "^1.1.0", - "@yarnpkg/parsers": "3.0.2", - "@zkochan/js-yaml": "0.0.7", - "axios": "^1.8.3", - "chalk": "^4.1.0", - "cli-cursor": "3.1.0", - "cli-spinners": "2.6.1", - "cliui": "^8.0.1", - "dotenv": "~16.4.5", - "dotenv-expand": "~11.0.6", - "enquirer": "~2.3.6", - "figures": "3.2.0", - "flat": "^5.0.2", - "front-matter": "^4.0.2", - "ignore": "^5.0.4", - "jest-diff": "^29.4.1", - "jsonc-parser": "3.2.0", - "lines-and-columns": "2.0.3", - "minimatch": "9.0.3", - "node-machine-id": "1.1.12", - "npm-run-path": "^4.0.1", - "open": "^8.4.0", - "ora": "5.3.0", - "resolve.exports": "2.0.3", - "semver": "^7.5.3", - "string-width": "^4.2.3", - "tar-stream": "~2.2.0", - "tmp": "~0.2.1", - "tsconfig-paths": "^4.1.2", - "tslib": "^2.3.0", - "yaml": "^2.6.0", - "yargs": "^17.6.2", - "yargs-parser": "21.1.1" - }, - "bin": { - "nx": "bin/nx.js", - "nx-cloud": "bin/nx-cloud.js" - }, - "optionalDependencies": { - "@nx/nx-darwin-arm64": "20.7.2", - "@nx/nx-darwin-x64": "20.7.2", - "@nx/nx-freebsd-x64": "20.7.2", - "@nx/nx-linux-arm-gnueabihf": "20.7.2", - "@nx/nx-linux-arm64-gnu": "20.7.2", - "@nx/nx-linux-arm64-musl": "20.7.2", - "@nx/nx-linux-x64-gnu": "20.7.2", - "@nx/nx-linux-x64-musl": "20.7.2", - "@nx/nx-win32-arm64-msvc": "20.7.2", - "@nx/nx-win32-x64-msvc": "20.7.2" - }, - "peerDependencies": { - "@swc-node/register": "^1.8.0", - "@swc/core": "^1.3.85" + }, + "node_modules/lerna-update-wizard/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "engines": { + "node": ">=10" }, - "peerDependenciesMeta": { - "@swc-node/register": { - "optional": true - }, - "@swc/core": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/nx/node_modules/ansi-styles": { + "node_modules/lerna-update-wizard/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/lerna/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -24564,19 +20145,10 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/nx/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/nx/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/lerna/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "dependencies": { "ansi-styles": "^4.1.0", @@ -24589,21 +20161,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/nx/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/nx/node_modules/color-convert": { + "node_modules/lerna/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -24615,37 +20173,78 @@ "node": ">=7.0.0" } }, - "node_modules/nx/node_modules/color-name": { + "node_modules/lerna/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/nx/node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "node_modules/lerna/node_modules/execa": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", + "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", "dev": true, "dependencies": { - "ansi-colors": "^4.1.1" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">=8.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/nx/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/lerna/node_modules/get-stream": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", + "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", "dev": true, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/nx/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/lerna/node_modules/glob": { + "version": "9.3.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", + "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "minimatch": "^8.0.2", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/lerna/node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/lerna/node_modules/glob/node_modules/minimatch": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -24657,82 +20256,156 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nx/node_modules/ora": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz", - "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", + "node_modules/lerna/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lerna/node_modules/is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lerna/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "bl": "^4.0.3", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "log-symbols": "^4.0.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" + "yallist": "^4.0.0" }, "engines": { "node": ">=10" + } + }, + "node_modules/lerna/node_modules/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "*" } }, - "node_modules/nx/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "node_modules/lerna/node_modules/minipass": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", + "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lerna/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lerna/node_modules/rimraf": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", + "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", "dev": true, + "dependencies": { + "glob": "^9.2.0" + }, "bin": { - "semver": "bin/semver.js" + "rimraf": "dist/cjs/src/bin.js" }, "engines": { - "node": ">=10" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nx/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "node_modules/lerna/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/nx/node_modules/supports-color": { + "node_modules/lerna/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lerna/node_modules/uuid": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", + "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", + "dev": true, + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/lerna/node_modules/write-file-atomic": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/nx/node_modules/tsconfig-paths": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", - "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==", + "node_modules/lerna/node_modules/write-file-atomic/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, - "dependencies": { - "json5": "^2.2.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nx/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "node_modules/lerna/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/nx/node_modules/yargs-parser": { + "node_modules/lerna/node_modules/yargs-parser": { "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", @@ -24741,225 +20414,235 @@ "node": ">=12" } }, - "node_modules/o3": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/o3/-/o3-1.0.3.tgz", - "integrity": "sha512-f+4n+vC6s4ysy7YO7O2gslWZBUu8Qj2i2OUJOvjRxQva7jVjYjB29jrr9NCjmxZQR0gzrOcv1RnqoYOeMs5VRQ==", - "optional": true, - "dependencies": { - "capability": "^0.2.5" - } - }, - "node_modules/oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "node_modules/level": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/level/-/level-8.0.1.tgz", + "integrity": "sha512-oPBGkheysuw7DmzFQYyFe8NAia5jFLAgEnkgWnK3OXAuJr8qFT+xBQIwokAZPME2bhPFzS8hlYcL16m8UZrtwQ==", "dev": true, + "dependencies": { + "abstract-level": "^1.0.4", + "browser-level": "^1.0.1", + "classic-level": "^1.2.0" + }, "engines": { - "node": "*" + "node": ">=12" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/level" } }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "node_modules/level-supports": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-4.0.1.tgz", + "integrity": "sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=12" } }, - "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "node_modules/level-transcoder": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/level-transcoder/-/level-transcoder-1.0.1.tgz", + "integrity": "sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dependencies": { + "buffer": "^6.0.3", + "module-error": "^1.0.1" + }, "engines": { - "node": ">= 0.4" + "node": ">=12" } }, - "node_modules/object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", "dev": true, - "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "node_modules/object.fromentries": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.8.0" } }, - "node_modules/object.groupby": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", - "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "node_modules/libnpmaccess": { + "version": "8.0.6", + "resolved": "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-8.0.6.tgz", + "integrity": "sha512-uM8DHDEfYG6G5gVivVl+yQd4pH3uRclHC59lzIbSvy7b5FEwR+mU49Zq1jEyRtRFv7+M99mUW9S0wL/4laT4lw==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2" + "npm-package-arg": "^11.0.2", + "npm-registry-fetch": "^17.0.1" }, "engines": { - "node": ">= 0.4" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/object.values": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", - "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", + "node_modules/libnpmpublish": { + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-9.0.9.tgz", + "integrity": "sha512-26zzwoBNAvX9AWOPiqqF6FG4HrSCPsHFkQm7nT+xU1ggAujL/eae81RnCv4CJ2In9q9fh10B88sYSzKCUh/Ghg==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" + "ci-info": "^4.0.0", + "normalize-package-data": "^6.0.1", + "npm-package-arg": "^11.0.2", + "npm-registry-fetch": "^17.0.1", + "proc-log": "^4.2.0", + "semver": "^7.3.7", + "sigstore": "^2.2.0", + "ssri": "^10.0.6" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/obliterator": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz", - "integrity": "sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==", - "dev": true - }, - "node_modules/oboe": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.5.tgz", - "integrity": "sha512-zRFWiF+FoicxEs3jNI/WYUrVEgA7DeET/InK0XQuudGHRg8iIob3cNPrJTKaz4004uaA9Pbe+Dwa8iluhjLZWA==", + "node_modules/libnpmpublish/node_modules/ci-info": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.2.0.tgz", + "integrity": "sha512-cYY9mypksY8NRqgDB1XD1RiJL338v/551niynFTGkZOO2LHuB2OmOYxDIe/ttN9AHwrqdum1360G3ald0W9kCg==", "dev": true, - "dependencies": { - "http-https": "^1.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" } }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "node_modules/libnpmpublish/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "ee-first": "1.1.1" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">= 0.8" + "node": ">=10" } }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "devOptional": true, + "node_modules/libsodium-sumo": { + "version": "0.7.13", + "resolved": "https://registry.npmjs.org/libsodium-sumo/-/libsodium-sumo-0.7.13.tgz", + "integrity": "sha512-zTGdLu4b9zSNLfovImpBCbdAA4xkpkZbMnSQjP8HShyOutnGjRHmSOKlsylh1okao6QhLiz7nG98EGn+04cZjQ==" + }, + "node_modules/libsodium-wrappers-sumo": { + "version": "0.7.13", + "resolved": "https://registry.npmjs.org/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.13.tgz", + "integrity": "sha512-lz4YdplzDRh6AhnLGF2Dj2IUj94xRN6Bh8T0HLNwzYGwPehQJX6c7iYVrFUPZ3QqxE0bqC+K0IIqqZJYWumwSQ==", "dependencies": { - "wrappy": "1" + "libsodium-sumo": "^0.7.13" } }, - "node_modules/one-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", - "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", - "dependencies": { - "fn.name": "1.x.x" + "node_modules/lines-and-columns": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", + "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "node_modules/load-json-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz", + "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==", "dev": true, "dependencies": { - "mimic-fn": "^2.1.0" + "graceful-fs": "^4.1.15", + "parse-json": "^5.0.0", + "strip-bom": "^4.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "node_modules/load-json-file/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "dev": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "node_modules/lodash.ismatch": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", + "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==", + "dev": true + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, "dependencies": { - "bl": "^4.1.0", "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" + "is-unicode-supported": "^0.1.0" }, "engines": { "node": ">=10" @@ -24968,7 +20651,7 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ora/node_modules/ansi-styles": { + "node_modules/log-symbols/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -24983,7 +20666,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/ora/node_modules/chalk": { + "node_modules/log-symbols/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -24999,7 +20682,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/ora/node_modules/color-convert": { + "node_modules/log-symbols/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -25011,13 +20694,13 @@ "node": ">=7.0.0" } }, - "node_modules/ora/node_modules/color-name": { + "node_modules/log-symbols/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/ora/node_modules/has-flag": { + "node_modules/log-symbols/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", @@ -25026,7 +20709,7 @@ "node": ">=8" } }, - "node_modules/ora/node_modules/supports-color": { + "node_modules/log-symbols/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", @@ -25038,40 +20721,67 @@ "node": ">=8" } }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, + "node_modules/logform": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz", + "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==", + "dependencies": { + "@colors/colors": "1.6.0", + "@types/triple-beam": "^1.3.2", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "safe-stable-stringify": "^2.3.1", + "triple-beam": "^1.3.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 12.0.0" } }, - "node_modules/p-cancelable": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", - "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", - "devOptional": true, + "node_modules/long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" + }, + "node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "dev": true, + "dependencies": { + "get-func-name": "^2.0.1" + } + }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "optional": true, "engines": { "node": ">=8" } }, - "node_modules/p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", + "node_modules/lru_map": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", + "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, - "engines": { - "node": ">=4" + "dependencies": { + "yallist": "^3.0.2" } }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, "dependencies": { - "yocto-queue": "^0.1.0" + "semver": "^7.5.3" }, "engines": { "node": ">=10" @@ -25080,258 +20790,277 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "node_modules/make-dir/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "p-limit": "^3.0.2" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { "node": ">=10" + } + }, + "node_modules/make-dir/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/make-fetch-happen": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "dev": true, + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/map-obj": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "dev": true, + "engines": { + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, + "node_modules/markdown-table": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-1.1.3.tgz", + "integrity": "sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==", + "dev": true + }, + "node_modules/mcl-wasm": { + "version": "0.7.9", + "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.7.9.tgz", + "integrity": "sha512-iJIUcQWA88IJB/5L15GnJVnSQJmf/YaxxV6zRavv83HILHaJQb6y0iFyDMdDO0gN8X37tdxmAOrH/P8B6RB8sQ==", + "dev": true, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" } }, - "node_modules/p-map-series": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-2.1.0.tgz", - "integrity": "sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q==", + "node_modules/memory-level": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/memory-level/-/memory-level-1.0.0.tgz", + "integrity": "sha512-UXzwewuWeHBz5krr7EvehKcmLFNoXxGcvuYhC41tRnkrTbJohtS7kVn9akmgirtRygg+f7Yjsfi8Uu5SGSQ4Og==", "dev": true, + "dependencies": { + "abstract-level": "^1.0.0", + "functional-red-black-tree": "^1.0.1", + "module-error": "^1.0.1" + }, "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/p-pipe": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz", - "integrity": "sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw==", + "node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", "dev": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.10.0" } }, - "node_modules/p-queue": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", - "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==", + "node_modules/meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", "dev": true, "dependencies": { - "eventemitter3": "^4.0.4", - "p-timeout": "^3.2.0" + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-reduce": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz", - "integrity": "sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-timeout": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", - "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "node_modules/meow/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "p-finally": "^1.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "node_modules/meow/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/p-waterfall": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/p-waterfall/-/p-waterfall-2.1.1.tgz", - "integrity": "sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw==", + "node_modules/meow/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { - "p-reduce": "^2.0.0" + "p-locate": "^4.1.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/package-json-from-dist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", - "dev": true - }, - "node_modules/pacote": { - "version": "18.0.6", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz", - "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==", + "node_modules/meow/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "@npmcli/git": "^5.0.0", - "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/package-json": "^5.1.0", - "@npmcli/promise-spawn": "^7.0.0", - "@npmcli/run-script": "^8.0.0", - "cacache": "^18.0.0", - "fs-minipass": "^3.0.0", - "minipass": "^7.0.2", - "npm-package-arg": "^11.0.0", - "npm-packlist": "^8.0.0", - "npm-pick-manifest": "^9.0.0", - "npm-registry-fetch": "^17.0.0", - "proc-log": "^4.0.0", - "promise-retry": "^2.0.1", - "sigstore": "^2.2.0", - "ssri": "^10.0.0", - "tar": "^6.1.11" - }, - "bin": { - "pacote": "bin/index.js" + "yallist": "^4.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/pako": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", - "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "node_modules/meow/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "dev": true, "dependencies": { - "callsites": "^3.0.0" + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/parse-asn1": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz", - "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==", + "node_modules/meow/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "asn1.js": "^4.10.1", - "browserify-aes": "^1.2.0", - "evp_bytestokey": "^1.0.3", - "hash-base": "~3.0", - "pbkdf2": "^3.1.2", - "safe-buffer": "^5.2.1" + "p-try": "^2.0.0" }, "engines": { - "node": ">= 0.10" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/parse-asn1/node_modules/hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", + "node_modules/meow/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "p-limit": "^2.2.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/parse-asn1/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/parse-cache-control": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", - "integrity": "sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==", - "dev": true - }, - "node_modules/parse-conflict-json": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz", - "integrity": "sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==", + "node_modules/meow/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, "dependencies": { - "json-parse-even-better-errors": "^3.0.0", - "just-diff": "^6.0.0", - "just-diff-apply": "^5.2.0" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/parse-headers": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", - "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==", - "dev": true - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "node_modules/meow/node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" }, "engines": { "node": ">=8" @@ -25340,1012 +21069,1234 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/parse-json/node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true + "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/parse-json/node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "node_modules/meow/node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, - "node_modules/parse-path": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.1.tgz", - "integrity": "sha512-6ReLMptznuuOEzLoGEa+I1oWRSj2Zna5jLWC+l6zlfAI4dbbSaIES29ThzuPkbhNahT65dWzfoZEO6cfJw2Ksg==", + "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "dependencies": { - "protocols": "^2.0.0" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "node_modules/parse-url": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz", - "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==", + "node_modules/meow/node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, - "dependencies": { - "parse-path": "^7.0.0" + "bin": { + "semver": "bin/semver" } }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "dev": true, "engines": { - "node": ">= 0.8" + "node": ">=8" } }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "node_modules/meow/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "devOptional": true, + "node_modules/meow/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "node_modules/meow/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 8" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "node_modules/micro-ftch": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.3.1.tgz", + "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==" }, - "node_modules/path-scurry": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + "braces": "^3.0.3", + "picomatch": "^2.3.1" }, "engines": { - "node": ">=16 || 14 >=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=8.6" } }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "dev": true, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "engines": { - "node": "14 || >=16.14" + "node": ">= 0.6" } }, - "node_modules/path-to-regexp": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", - "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", - "dev": true + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "optional": true, "engines": { - "node": "*" + "node": ">=4" } }, - "node_modules/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, "engines": { - "node": ">=0.12" + "node": ">=4" } }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "devOptional": true, + "dependencies": { + "brace-expansion": "^1.1.7" }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "engines": { + "node": "*" } }, - "node_modules/pidtree": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, - "bin": { - "pidtree": "bin/pidtree.js" - }, - "engines": { - "node": ">=0.10" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 6" } }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, "engines": { - "node": ">= 6" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", "dev": true, "dependencies": { - "find-up": "^4.0.0" + "minipass": "^7.0.3" }, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/minipass-fetch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "minipass": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">= 8" } }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "minipass": "^3.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/pony-cause": { - "version": "2.1.11", - "resolved": "https://registry.npmjs.org/pony-cause/-/pony-cause-2.1.11.tgz", - "integrity": "sha512-M7LhCsdNbNgiLYiP4WjsfLUuFmCfnjdF6jKe2R9NKl4WFN+HZPGHJZ9lnLP7f9ZnKe3U9nuWD0szirmj+migUg==", - "engines": { - "node": ">=12.0.0" - } + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, - "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, "engines": { - "node": ">= 0.4" + "node": ">=8" } }, - "node_modules/postcss-selector-parser": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", - "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" + "yallist": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "devOptional": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, "engines": { - "node": ">= 0.8.0" + "node": ">= 8" } }, - "node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "dev": true, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "devOptional": true, + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", - "dev": true, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "devOptional": true + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "devOptional": true, "bin": { - "prettier": "bin-prettier.js" + "mkdirp": "bin/cmd.js" }, "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" + "node": ">=10" } }, - "node_modules/prettier-plugin-solidity": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/prettier-plugin-solidity/-/prettier-plugin-solidity-1.3.1.tgz", - "integrity": "sha512-MN4OP5I2gHAzHZG1wcuJl0FsLS3c4Cc5494bbg+6oQWBPuEamjwDvmGfFMZ6NFzsh3Efd9UUxeT7ImgjNH4ozA==", + "node_modules/mnemonist": { + "version": "0.38.5", + "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", + "integrity": "sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==", "dev": true, "dependencies": { - "@solidity-parser/parser": "^0.17.0", - "semver": "^7.5.4", - "solidity-comments-extractor": "^0.0.8" + "obliterator": "^2.0.0" + } + }, + "node_modules/mocha": { + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", + "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" }, - "engines": { - "node": ">=16" + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" }, - "peerDependencies": { - "prettier": ">=2.3.0" + "engines": { + "node": ">= 14.0.0" } }, - "node_modules/prettier-plugin-solidity/node_modules/@solidity-parser/parser": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.17.0.tgz", - "integrity": "sha512-Nko8R0/kUo391jsEHHxrGM07QFdnPGvlmox4rmH0kNiNAashItAilhy4Mv4pK5gQmW5f4sXAF58fwJbmlkGcVw==", - "dev": true - }, - "node_modules/prettier-plugin-solidity/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/mocha/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "yallist": "^4.0.0" - }, + "balanced-match": "^1.0.0" + } + }, + "node_modules/mocha/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/prettier-plugin-solidity/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/mocha/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": ">=10" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/prettier-plugin-solidity/node_modules/yallist": { + "node_modules/mocha/node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/pretty-format": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", - "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "node_modules/mocha/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, "dependencies": { - "@jest/schemas": "^29.6.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "node_modules/mocha/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==", + "node_modules/mocha/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, "engines": { - "node": ">= 0.8" + "node": ">=10" } }, - "node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "node_modules/mocha/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "node_modules/modify-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", + "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", "dev": true, "engines": { - "node": ">= 0.6.0" + "node": ">=0.10.0" } }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/proggy": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/proggy/-/proggy-2.0.0.tgz", - "integrity": "sha512-69agxLtnI8xBs9gUGqEnK26UfiexpHy+KUpBQWabiytQjnn5wFY8rklAi7GRfABIuPNnQ/ik48+LGLkYYJcy4A==", + "node_modules/module-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/module-error/-/module-error-1.0.2.tgz", + "integrity": "sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/prom-client": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/prom-client/-/prom-client-13.1.0.tgz", - "integrity": "sha512-jT9VccZCWrJWXdyEtQddCDszYsiuWj5T0ekrPszi/WEegj3IZy6Mm09iOOVM86A4IKMWq8hZkT2dD9MaSe+sng==", + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/multimatch": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", + "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", + "dev": true, "dependencies": { - "tdigest": "^0.1.1" + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/promise": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz", - "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==", + "node_modules/multimatch/node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true, - "dependencies": { - "asap": "~2.0.6" + "engines": { + "node": ">=8" } }, - "node_modules/promise-all-reject-late": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz", - "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node_modules/mustache": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", + "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==", + "optional": true, + "bin": { + "mustache": "bin/mustache" } }, - "node_modules/promise-call-limit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-3.0.2.tgz", - "integrity": "sha512-mRPQO2T1QQVw11E7+UdCJu7S61eJVWknzml9sC1heAdj1jxl0fWMBypIt9ZOcLFf8FkG995ZD7RnVk7HH72fZw==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "node_modules/nanoassert": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/nanoassert/-/nanoassert-1.1.0.tgz", + "integrity": "sha512-C40jQ3NzfkP53NsO8kEOFd79p4b9kDXQMwgiY1z8ZwrDZgUyom0AHwGegF4Dm99L+YoYhuaB0ceerUcXmqr1rQ==" + }, + "node_modules/napi-macros": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.2.2.tgz", + "integrity": "sha512-hmEVtAGYzVQpCKdbQea4skABsdXW4RUh5t5mJ2zzqowJS2OyXZTU1KhDVFhx+NlWZ4ap9mqR9TcDO3LTTttd+g==", "dev": true }, - "node_modules/promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/near-abi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/near-abi/-/near-abi-0.1.1.tgz", + "integrity": "sha512-RVDI8O+KVxRpC3KycJ1bpfVj9Zv+xvq9PlW1yIFl46GhrnLw83/72HqHGjGDjQ8DtltkcpSjY9X3YIGZ+1QyzQ==", + "optional": true, "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - }, - "engines": { - "node": ">=10" + "@types/json-schema": "^7.0.11" + } + }, + "node_modules/near-api-js": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/near-api-js/-/near-api-js-2.1.4.tgz", + "integrity": "sha512-e1XicyvJvQMtu7qrG8oWyAdjHJJCoy+cvbW6h2Dky4yj7vC85omQz/x7IgKl71VhzDj2/TGUwjTVESp6NSe75A==", + "optional": true, + "dependencies": { + "@near-js/accounts": "0.1.4", + "@near-js/crypto": "0.0.5", + "@near-js/keystores": "0.0.5", + "@near-js/keystores-browser": "0.0.5", + "@near-js/keystores-node": "0.0.5", + "@near-js/providers": "0.0.7", + "@near-js/signers": "0.0.5", + "@near-js/transactions": "0.2.1", + "@near-js/types": "0.0.4", + "@near-js/utils": "0.0.4", + "@near-js/wallet-account": "0.0.7", + "ajv": "^8.11.2", + "ajv-formats": "^2.1.1", + "bn.js": "5.2.1", + "borsh": "^0.7.0", + "depd": "^2.0.0", + "error-polyfill": "^0.1.3", + "http-errors": "^1.7.2", + "near-abi": "0.1.1", + "node-fetch": "^2.6.1", + "tweetnacl": "^1.0.1" } }, - "node_modules/promisify-child-process": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/promisify-child-process/-/promisify-child-process-4.1.2.tgz", - "integrity": "sha512-APnkIgmaHNJpkAn7k+CrJSi9WMuff5ctYFbD0CO2XIPkM8yO7d/ShouU2clywbpHV/DUsyc4bpJCsNgddNtx4g==", + "node_modules/near-api-js/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "optional": true, - "engines": { - "node": ">=8" + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dev": true, + "node_modules/near-api-js/node_modules/borsh": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz", + "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==", + "optional": true, "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" + "bn.js": "^5.2.0", + "bs58": "^4.0.0", + "text-encoding-utf-8": "^1.0.2" } }, - "node_modules/promzard": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/promzard/-/promzard-1.0.2.tgz", - "integrity": "sha512-2FPputGL+mP3jJ3UZg/Dl9YOkovB7DX0oOr+ck5QbZ5MtORtds8k/BZdn+02peDLI8/YWbmzx34k5fA+fHvCVQ==", - "dev": true, + "node_modules/near-api-js/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "optional": true + }, + "node_modules/near-sandbox": { + "version": "0.0.17", + "resolved": "https://registry.npmjs.org/near-sandbox/-/near-sandbox-0.0.17.tgz", + "integrity": "sha512-bL0We378hFZ0/xHAKP5mAWKS5OjzU6+VuvMlXpMwyFAwG2s5NwOnzRTezvYYwQNtG3iU+xvQ6jWvp7UO1STGLQ==", + "hasInstallScript": true, + "optional": true, "dependencies": { - "read": "^3.0.1" + "got": "^11.8.2", + "tar": "^6.1.0" }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "bin": { + "near-sandbox": "run.js", + "sandbox": "run.js" } }, - "node_modules/proper-lockfile": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz", - "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==", + "node_modules/near-units": { + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/near-units/-/near-units-0.1.9.tgz", + "integrity": "sha512-xiuBjpNsi+ywiu7P6iWRZdgFm7iCr/cfWlVO6+e5uaAqH4mE1rrurElyrL91llNDSnMwogd9XmlZOw5KbbHNsA==", "optional": true, "dependencies": { - "graceful-fs": "^4.2.4", - "retry": "^0.12.0", - "signal-exit": "^3.0.2" + "bn.js": "^5.2.0" + }, + "bin": { + "near-units": "dist/cli.js" } }, - "node_modules/protobufjs": { - "version": "6.11.4", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.4.tgz", - "integrity": "sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==", + "node_modules/near-workspaces": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/near-workspaces/-/near-workspaces-3.5.0.tgz", + "integrity": "sha512-lkRCP2os8v7W+q1maQPSEI98f+YiPb86ibDyIy8bxr6fqnJPOsIRR3xE33rOwBsiph3WuUH46qtpYK0a+Co+EQ==", "hasInstallScript": true, + "optional": true, "dependencies": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/long": "^4.0.1", - "@types/node": ">=13.7.0", - "long": "^4.0.0" + "base64url": "^3.0.1", + "bn.js": "^5.2.0", + "borsh": "^0.5.0", + "bs58": "^4.0.1", + "callsites": "^4.0.0", + "fs-extra": "^10.0.0", + "js-sha256": "^0.9.0", + "near-api-js": "^v2.1.4", + "near-sandbox": "^0.0.17", + "near-units": "^0.1.9", + "node-port-check": "^2.0.1", + "promisify-child-process": "^4.1.1", + "proper-lockfile": "^4.1.2", + "pure-uuid": "^1.6.2", + "rimraf": "^3.0.2", + "temp-dir": "^2.0.0" }, - "bin": { - "pbjs": "bin/pbjs", - "pbts": "bin/pbts" + "engines": { + "node": ">= 14.0.0", + "npm": ">= 6.0.0" } }, - "node_modules/protocols": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.2.tgz", - "integrity": "sha512-hHVTzba3wboROl0/aWRRG9dMytgH6ow//STBZh43l/wQgmMhYhOFi0EHWAPtoCz9IAUymsyP0TSBHkhgMEGNnQ==", - "dev": true + "node_modules/near-workspaces/node_modules/callsites": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.1.0.tgz", + "integrity": "sha512-aBMbD1Xxay75ViYezwT40aQONfr+pSXTHwNKvIXhXD6+LY3F1dLIcceoC5OZKBVHbXcysz1hL9D2w0JJIMXpUw==", + "optional": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, + "node_modules/near-workspaces/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "optional": true, "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": ">= 0.10" + "node": ">=12" } }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" - }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true + "node_modules/near-workspaces/node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "optional": true, + "engines": { + "node": ">=8" + } }, - "node_modules/public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "dev": true, - "dependencies": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" + "engines": { + "node": ">= 0.6" } }, - "node_modules/public-encrypt/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "devOptional": true, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node_modules/nise": { + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.9.tgz", + "integrity": "sha512-qOnoujW4SV6e40dYxJOb3uvuoPHtmLzIk4TFo+j0jPJoC+5Z9xja5qH5JZobEPsa8+YYphMrOSwnrshEhG2qww==", "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "@sinonjs/commons": "^3.0.0", + "@sinonjs/fake-timers": "^11.2.2", + "@sinonjs/text-encoding": "^0.7.2", + "just-extend": "^6.2.0", + "path-to-regexp": "^6.2.1" } }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "engines": { - "node": ">=6" + "node_modules/nise/node_modules/@sinonjs/fake-timers": { + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", + "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", + "dependencies": { + "@sinonjs/commons": "^3.0.0" } }, - "node_modules/pure-rand": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", - "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/dubzzz" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fast-check" - } - ] + "node_modules/nise/node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==" }, - "node_modules/pure-uuid": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/pure-uuid/-/pure-uuid-1.8.1.tgz", - "integrity": "sha512-PIwHXU7NZb/wTBwUfzCSjI85tfwx6DQOm74sRLtNLH8KHsFZEvAQbBQdz7E5ij8SNSv9WGdQPWiiM6NpNIeNfA==", - "optional": true, - "engines": { - "node": ">=8.0.0" - } + "node_modules/node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" }, - "node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "node_modules/node-emoji": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", + "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", "dev": true, "dependencies": { - "side-channel": "^1.0.6" + "lodash": "^4.17.21" + } + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=0.6" + "node": "4.x || >=6.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/query-string": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", - "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "node_modules/node-gyp": { + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.3.1.tgz", + "integrity": "sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ==", "dev": true, "dependencies": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^4.1.0", + "semver": "^7.3.5", + "tar": "^6.2.1", + "which": "^4.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": ">=0.10.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/node-gyp-build": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", + "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" } }, - "node_modules/ramda": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.2.tgz", - "integrity": "sha512-SbiLPU40JuJniHexQSAgad32hfwd+DRUdwF2PlVuI5RZD0/vahUco7R8vD86J/tcEKKF9vZrUVwgtmGCqlCKyA==", - "dev": true - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, "dependencies": { - "safe-buffer": "^5.1.0" + "balanced-match": "^1.0.0" } }, - "node_modules/randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "node_modules/node-gyp/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, "dependencies": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true, "engines": { - "node": ">= 0.6" + "node": ">=16" } }, - "node_modules/raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "node_modules/node-gyp/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">= 0.8" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/raw-body/node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "node_modules/node-gyp/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">= 0.8" + "node": ">=10" } }, - "node_modules/raw-body/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "node_modules/node-gyp/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, "engines": { - "node": ">= 0.8" + "node": "^16.13.0 || >=18.0.0" } }, - "node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", "dev": true }, - "node_modules/read": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/read/-/read-3.0.1.tgz", - "integrity": "sha512-SLBrDU/Srs/9EoWhU5GdbAoxG1GzpQHo/6qiGItaoLJ1thmYpcNIM1qISEUvyHBzfGlWIyd6p2DNi1oV1VmAuw==", + "node_modules/node-machine-id": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz", + "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==", + "dev": true + }, + "node_modules/node-port-check": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-port-check/-/node-port-check-2.0.1.tgz", + "integrity": "sha512-PV1tj5OPbWwxvhPcChXxwCIKl/IfVEdPP4u/gQz2lao/VGoeIUXb/4U72KSHLZpTVBmgTnMm0me7yR0wUsIuPg==", + "optional": true + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "node_modules/nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", "dev": true, "dependencies": { - "mute-stream": "^1.0.0" + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-cmd-shim": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz", - "integrity": "sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==", + "node_modules/normalize-package-data": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", + "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", + "dev": true, + "dependencies": { + "hosted-git-info": "^7.0.0", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/read-package-json-fast": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", - "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", + "node_modules/npm-bundled": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz", + "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==", "dev": true, "dependencies": { - "json-parse-even-better-errors": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", + "node_modules/npm-install-checks": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", "dev": true, "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" + "semver": "^7.1.1" }, "engines": { - "node": ">=4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==", + "node_modules/npm-install-checks/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, "engines": { - "node": ">=4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", + "node_modules/npm-package-arg": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz", + "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==", "dev": true, "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "hosted-git-info": "^7.0.0", + "proc-log": "^4.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": ">=4" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "node_modules/npm-package-arg/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "p-try": "^1.0.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", + "node_modules/npm-packlist": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", + "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", "dev": true, "dependencies": { - "p-limit": "^1.1.0" + "ignore-walk": "^6.0.4" }, "engines": { - "node": ">=4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-pkg-up/node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", + "node_modules/npm-pick-manifest": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", + "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", "dev": true, + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^11.0.0", + "semver": "^7.3.5" + }, "engines": { - "node": ">=4" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/read-pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "node_modules/npm-pick-manifest/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "node_modules/read-pkg/node_modules/load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "node_modules/npm-registry-fetch": { + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz", + "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==", "dev": true, "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "@npmcli/redact": "^2.0.0", + "jsonparse": "^1.3.1", + "make-fetch-happen": "^13.0.0", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minizlib": "^2.1.2", + "npm-package-arg": "^11.0.0", + "proc-log": "^4.0.0" }, "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/read-pkg/node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "node_modules/npm-run-all": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", "dev": true, "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" + }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" }, "engines": { - "node": ">=4" + "node": ">= 4" } }, - "node_modules/read-pkg/node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", "dev": true, "dependencies": { - "pify": "^3.0.0" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" }, "engines": { - "node": ">=4" + "node": ">=4.8" } }, - "node_modules/read-pkg/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true, "engines": { "node": ">=4" } }, - "node_modules/read-pkg/node_modules/semver": { + "node_modules/npm-run-all/node_modules/semver": { "version": "5.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", @@ -26354,1895 +22305,2108 @@ "semver": "bin/semver" } }, - "node_modules/read-pkg/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, "engines": { - "node": ">=4" + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "node_modules/read/node_modules/mute-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", - "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "node_modules/number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==", + "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" }, "engines": { - "node": ">= 6" + "node": ">=6.5.0", + "npm": ">=3" } }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "node_modules/number-to-bn/node_modules/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", + "dev": true + }, + "node_modules/nx": { + "version": "20.7.2", + "resolved": "https://registry.npmjs.org/nx/-/nx-20.7.2.tgz", + "integrity": "sha512-T9pCTw6pA9PoowpLsm9L+GeQw0iHitrIX96jrpMXKbSjPmryokP7EJ+LNkdEV6xX+MrATERWJlPd+NYwnYxbIA==", "dev": true, + "hasInstallScript": true, "dependencies": { - "picomatch": "^2.2.1" + "@napi-rs/wasm-runtime": "0.2.4", + "@yarnpkg/lockfile": "^1.1.0", + "@yarnpkg/parsers": "3.0.2", + "@zkochan/js-yaml": "0.0.7", + "axios": "^1.8.3", + "chalk": "^4.1.0", + "cli-cursor": "3.1.0", + "cli-spinners": "2.6.1", + "cliui": "^8.0.1", + "dotenv": "~16.4.5", + "dotenv-expand": "~11.0.6", + "enquirer": "~2.3.6", + "figures": "3.2.0", + "flat": "^5.0.2", + "front-matter": "^4.0.2", + "ignore": "^5.0.4", + "jest-diff": "^29.4.1", + "jsonc-parser": "3.2.0", + "lines-and-columns": "2.0.3", + "minimatch": "9.0.3", + "node-machine-id": "1.1.12", + "npm-run-path": "^4.0.1", + "open": "^8.4.0", + "ora": "5.3.0", + "resolve.exports": "2.0.3", + "semver": "^7.5.3", + "string-width": "^4.2.3", + "tar-stream": "~2.2.0", + "tmp": "~0.2.1", + "tsconfig-paths": "^4.1.2", + "tslib": "^2.3.0", + "yaml": "^2.6.0", + "yargs": "^17.6.2", + "yargs-parser": "21.1.1" }, - "engines": { - "node": ">=8.10.0" + "bin": { + "nx": "bin/nx.js", + "nx-cloud": "bin/nx-cloud.js" + }, + "optionalDependencies": { + "@nx/nx-darwin-arm64": "20.7.2", + "@nx/nx-darwin-x64": "20.7.2", + "@nx/nx-freebsd-x64": "20.7.2", + "@nx/nx-linux-arm-gnueabihf": "20.7.2", + "@nx/nx-linux-arm64-gnu": "20.7.2", + "@nx/nx-linux-arm64-musl": "20.7.2", + "@nx/nx-linux-x64-gnu": "20.7.2", + "@nx/nx-linux-x64-musl": "20.7.2", + "@nx/nx-win32-arm64-msvc": "20.7.2", + "@nx/nx-win32-x64-msvc": "20.7.2" + }, + "peerDependencies": { + "@swc-node/register": "^1.8.0", + "@swc/core": "^1.3.85" + }, + "peerDependenciesMeta": { + "@swc-node/register": { + "optional": true + }, + "@swc/core": { + "optional": true + } } }, - "node_modules/readonly-date": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/readonly-date/-/readonly-date-1.0.0.tgz", - "integrity": "sha512-tMKIV7hlk0h4mO3JTmmVuIlJVXjKk3Sep9Bf5OH0O+758ruuVkUy2J9SttDLm91IEX/WHlXPSpxMGjPj4beMIQ==" - }, - "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "node_modules/nx/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "resolve": "^1.1.6" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 0.10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/reconnecting-websocket": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/reconnecting-websocket/-/reconnecting-websocket-4.4.0.tgz", - "integrity": "sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==" + "node_modules/nx/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } }, - "node_modules/recursive-readdir": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", - "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", + "node_modules/nx/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "minimatch": "^3.0.5" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=6.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "node_modules/nx/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/reduce-flatten": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-2.0.0.tgz", - "integrity": "sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==", + "node_modules/nx/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=6" + "node": ">=7.0.0" } }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", - "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "node_modules/nx/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/nx/node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "dev": true, "dependencies": { - "call-bind": "^1.0.6", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" + "ansi-colors": "^4.1.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8.6" } }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "node_modules/nx/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { "node": ">=8" + } + }, + "node_modules/nx/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/req-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/req-cwd/-/req-cwd-2.0.0.tgz", - "integrity": "sha512-ueoIoLo1OfB6b05COxAA9UpeoscNpYyM+BqYlA7H6LVF4hKGPXQQSSaD2YmvDVJMkk4UDpAHIeU1zG53IqjvlQ==", + "node_modules/nx/node_modules/ora": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz", + "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", "dev": true, "dependencies": { - "req-from": "^2.0.0" + "bl": "^4.0.3", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "log-symbols": "^4.0.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/req-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/req-from/-/req-from-2.0.0.tgz", - "integrity": "sha512-LzTfEVDVQHBRfjOUMgNBA+V6DWsSnoeKzf42J7l0xa/B4jyPOuuF5MlNSmomLNGemWTnV2TIdjSSLnEn95fOQA==", + "node_modules/nx/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "resolve-from": "^3.0.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/req-from/node_modules/resolve-from": { + "node_modules/nx/node_modules/strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, "engines": { "node": ">=4" } }, - "node_modules/request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "node_modules/nx/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 6" + "node": ">=8" } }, - "node_modules/request/node_modules/form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "node_modules/nx/node_modules/tsconfig-paths": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", + "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==", "dev": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "json5": "^2.2.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" }, "engines": { - "node": ">= 0.12" + "node": ">=6" } }, - "node_modules/request/node_modules/qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "node_modules/nx/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true + }, + "node_modules/nx/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, "engines": { - "node": ">=0.6" + "node": ">=12" } }, - "node_modules/request/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" + "node_modules/o3": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/o3/-/o3-1.0.3.tgz", + "integrity": "sha512-f+4n+vC6s4ysy7YO7O2gslWZBUu8Qj2i2OUJOvjRxQva7jVjYjB29jrr9NCjmxZQR0gzrOcv1RnqoYOeMs5VRQ==", + "optional": true, + "dependencies": { + "capability": "^0.2.5" } }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dev": true, "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-alpn": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", - "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", - "devOptional": true + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", "dev": true, "dependencies": { - "resolve-from": "^5.0.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" }, "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "node_modules/resolve-cwd/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/object.values": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "node_modules/obliterator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz", + "integrity": "sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==", + "dev": true + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "devOptional": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/one-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", + "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "dependencies": { + "fn.name": "1.x.x" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, "engines": { - "node": ">=4" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/resolve.exports": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", - "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, "engines": { - "node": ">=10" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/responselike": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", - "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", - "devOptional": true, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, "dependencies": { - "lowercase-keys": "^2.0.0" + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "color-convert": "^2.0.1" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "devOptional": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "devOptional": true, "dependencies": { - "glob": "^7.1.3" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/rlp": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", - "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "bn.js": "^5.2.0" + "color-name": "~1.1.4" }, - "bin": { - "rlp": "bin/rlp" + "engines": { + "node": ">=7.0.0" } }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=0.12.0" + "node": ">=8" } }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "queue-microtask": "^1.2.2" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/run-parallel-limit": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.1.0.tgz", - "integrity": "sha512-jJA7irRNM91jaKc3Hcl1npHsFLOXOoTkPCUL1JEa1R82O2miplXXRaGdjW/KM/98YQWDhJLiSs793CnXfblJUw==", + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/rustbn.js": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz", - "integrity": "sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==", - "dev": true + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "optional": true, + "engines": { + "node": ">=8" + } }, - "node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", "dev": true, - "dependencies": { - "tslib": "^2.1.0" + "engines": { + "node": ">=4" } }, - "node_modules/rxjs/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, - "node_modules/safe-array-concat": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", - "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/safe-regex-test": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", - "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-regex": "^1.1.4" + "p-limit": "^3.0.2" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", - "engines": { - "node": ">=10" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "devOptional": true - }, - "node_modules/sc-istanbul": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/sc-istanbul/-/sc-istanbul-0.4.6.tgz", - "integrity": "sha512-qJFF/8tW/zJsbyfh/iT/ZM5QNHE3CXxtLJbZsL+CzdJLBsPD7SedJZoUA4d8iAcN2IoMp/Dx80shOOd2x96X/g==", + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dev": true, "dependencies": { - "abbrev": "1.0.x", - "async": "1.x", - "escodegen": "1.8.x", - "esprima": "2.7.x", - "glob": "^5.0.15", - "handlebars": "^4.0.1", - "js-yaml": "3.x", - "mkdirp": "0.5.x", - "nopt": "3.x", - "once": "1.x", - "resolve": "1.1.x", - "supports-color": "^3.1.0", - "which": "^1.1.1", - "wordwrap": "^1.0.0" + "aggregate-error": "^3.0.0" }, - "bin": { - "istanbul": "lib/cli.js" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sc-istanbul/node_modules/abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==", - "dev": true - }, - "node_modules/sc-istanbul/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/p-map-series": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-2.1.0.tgz", + "integrity": "sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q==", "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" + "engines": { + "node": ">=8" } }, - "node_modules/sc-istanbul/node_modules/async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", - "dev": true + "node_modules/p-pipe": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz", + "integrity": "sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/sc-istanbul/node_modules/glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", + "node_modules/p-queue": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", + "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==", "dev": true, "dependencies": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "eventemitter3": "^4.0.4", + "p-timeout": "^3.2.0" }, "engines": { - "node": "*" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sc-istanbul/node_modules/has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", + "node_modules/p-reduce": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz", + "integrity": "sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/sc-istanbul/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", "dev": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "p-finally": "^1.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=8" } }, - "node_modules/sc-istanbul/node_modules/js-yaml/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/sc-istanbul/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "node_modules/p-waterfall": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-waterfall/-/p-waterfall-2.1.1.tgz", + "integrity": "sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw==", "dev": true, "dependencies": { - "minimist": "^1.2.6" + "p-reduce": "^2.0.0" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sc-istanbul/node_modules/nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, + "node_modules/pacote": { + "version": "18.0.6", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz", + "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==", "dev": true, "dependencies": { - "abbrev": "1" + "@npmcli/git": "^5.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/package-json": "^5.1.0", + "@npmcli/promise-spawn": "^7.0.0", + "@npmcli/run-script": "^8.0.0", + "cacache": "^18.0.0", + "fs-minipass": "^3.0.0", + "minipass": "^7.0.2", + "npm-package-arg": "^11.0.0", + "npm-packlist": "^8.0.0", + "npm-pick-manifest": "^9.0.0", + "npm-registry-fetch": "^17.0.0", + "proc-log": "^4.0.0", + "promise-retry": "^2.0.1", + "sigstore": "^2.2.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" }, "bin": { - "nopt": "bin/nopt.js" + "pacote": "bin/index.js" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/sc-istanbul/node_modules/resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==", - "dev": true - }, - "node_modules/sc-istanbul/node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true + "node_modules/pako": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==" }, - "node_modules/sc-istanbul/node_modules/supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "dependencies": { - "has-flag": "^1.0.0" + "callsites": "^3.0.0" }, "engines": { - "node": ">=0.8.0" + "node": ">=6" } }, - "node_modules/sc-istanbul/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "node_modules/parse-cache-control": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", + "integrity": "sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==", + "dev": true + }, + "node_modules/parse-conflict-json": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz", + "integrity": "sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "json-parse-even-better-errors": "^3.0.0", + "just-diff": "^6.0.0", + "just-diff-apply": "^5.2.0" }, - "bin": { - "which": "bin/which" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/scrypt-js": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", - "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" - }, - "node_modules/scryptsy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-2.1.0.tgz", - "integrity": "sha512-1CdSqHQowJBnMAFyPEBRfqag/YP9OF394FV+4YREIJX4ljD7OxvQRDayyoyyCk+senRjSkP6VnUNQmVQqB6g7w==" - }, - "node_modules/secp256k1": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.4.tgz", - "integrity": "sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==", + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, - "hasInstallScript": true, "dependencies": { - "elliptic": "^6.5.7", - "node-addon-api": "^5.0.0", - "node-gyp-build": "^4.2.0" + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" }, "engines": { - "node": ">=18.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/secp256k1/node_modules/bn.js": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", - "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==", + "node_modules/parse-json/node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/parse-json/node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, - "node_modules/secp256k1/node_modules/elliptic": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", - "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", + "node_modules/parse-path": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.1.tgz", + "integrity": "sha512-6ReLMptznuuOEzLoGEa+I1oWRSj2Zna5jLWC+l6zlfAI4dbbSaIES29ThzuPkbhNahT65dWzfoZEO6cfJw2Ksg==", + "dev": true, + "dependencies": { + "protocols": "^2.0.0" + } + }, + "node_modules/parse-url": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz", + "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==", "dev": true, "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" + "parse-path": "^7.0.0" } }, - "node_modules/secp256k1/node_modules/node-addon-api": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", - "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==", - "dev": true + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "node_modules/secure-json-parse": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz", - "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==" + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "engines": { + "node": ">=8" } }, - "node_modules/semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, - "node_modules/send": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", - "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "dev": true, - "dependencies": { - "ms": "2.0.0" + "engines": { + "node": "14 || >=16.14" } }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/send/node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true, "engines": { - "node": ">= 0.8" + "node": ">=8" } }, - "node_modules/send/node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "node_modules/pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" }, "engines": { - "node": ">= 0.8" + "node": ">=0.12" } }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, "engines": { - "node": ">= 0.8" + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/serialize-javascript": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", - "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "node_modules/pidtree": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", + "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", "dev": true, - "dependencies": { - "randombytes": "^2.1.0" + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" } }, - "node_modules/serve-static": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", - "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "node_modules/pify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", "dev": true, - "dependencies": { - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.19.0" - }, "engines": { - "node": ">= 0.8.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/servify": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", - "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true, - "dependencies": { - "body-parser": "^1.16.0", - "cors": "^2.8.1", - "express": "^4.14.0", - "request": "^2.79.0", - "xhr": "^2.3.3" - }, "engines": { - "node": ">=6" + "node": ">= 6" } }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" + "find-up": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=8" } }, - "node_modules/set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=8" } }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "devOptional": true - }, - "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "p-locate": "^4.1.0" }, - "bin": { - "sha.js": "bin.js" + "engines": { + "node": ">=8" } }, - "node_modules/sha1": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/sha1/-/sha1-1.1.1.tgz", - "integrity": "sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA==", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "charenc": ">= 0.0.1", - "crypt": ">= 0.0.1" + "p-try": "^2.0.0" }, "engines": { - "node": "*" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "kind-of": "^6.0.2" + "p-limit": "^2.2.0" }, "engines": { "node": ">=8" } }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, + "node_modules/pony-cause": { + "version": "2.1.11", + "resolved": "https://registry.npmjs.org/pony-cause/-/pony-cause-2.1.11.tgz", + "integrity": "sha512-M7LhCsdNbNgiLYiP4WjsfLUuFmCfnjdF6jKe2R9NKl4WFN+HZPGHJZ9lnLP7f9ZnKe3U9nuWD0szirmj+migUg==", "engines": { - "node": ">=8" + "node": ">=12.0.0" } }, - "node_modules/shell-quote": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", - "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.4" } }, - "node_modules/shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", "dev": true, "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, "engines": { "node": ">=4" } }, - "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" }, "engines": { - "node": ">= 0.4" + "node": ">=10.13.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "devOptional": true - }, - "node_modules/sigstore": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz", - "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==", + "node_modules/prettier-plugin-solidity": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/prettier-plugin-solidity/-/prettier-plugin-solidity-1.3.1.tgz", + "integrity": "sha512-MN4OP5I2gHAzHZG1wcuJl0FsLS3c4Cc5494bbg+6oQWBPuEamjwDvmGfFMZ6NFzsh3Efd9UUxeT7ImgjNH4ozA==", "dev": true, "dependencies": { - "@sigstore/bundle": "^2.3.2", - "@sigstore/core": "^1.0.0", - "@sigstore/protobuf-specs": "^0.3.2", - "@sigstore/sign": "^2.3.2", - "@sigstore/tuf": "^2.3.4", - "@sigstore/verify": "^1.2.1" + "@solidity-parser/parser": "^0.17.0", + "semver": "^7.5.4", + "solidity-comments-extractor": "^0.0.8" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=16" + }, + "peerDependencies": { + "prettier": ">=2.3.0" } }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/prettier-plugin-solidity/node_modules/@solidity-parser/parser": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.17.0.tgz", + "integrity": "sha512-Nko8R0/kUo391jsEHHxrGM07QFdnPGvlmox4rmH0kNiNAashItAilhy4Mv4pK5gQmW5f4sXAF58fwJbmlkGcVw==", + "dev": true }, - "node_modules/simple-get": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.2.tgz", - "integrity": "sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==", + "node_modules/prettier-plugin-solidity/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "decompress-response": "^3.3.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/simple-get/node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "node_modules/prettier-plugin-solidity/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { - "mimic-response": "^1.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=4" - } - }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "dependencies": { - "is-arrayish": "^0.3.1" + "node": ">=10" } }, - "node_modules/simple-swizzle/node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + "node_modules/prettier-plugin-solidity/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, - "node_modules/sinon": { - "version": "17.0.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.1.tgz", - "integrity": "sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==", + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, "dependencies": { - "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^11.2.2", - "@sinonjs/samsam": "^8.0.0", - "diff": "^5.1.0", - "nise": "^5.1.5", - "supports-color": "^7.2.0" + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/sinon" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/sinon/node_modules/@sinonjs/fake-timers": { - "version": "11.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", - "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", - "dependencies": { - "@sinonjs/commons": "^3.0.0" + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/sinon/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==", + "dev": true, "engines": { - "node": ">=8" + "node": ">= 0.8" } }, - "node_modules/sinon/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dependencies": { - "has-flag": "^4.0.0" - }, + "node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "dev": true, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "dev": true }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/proggy": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/proggy/-/proggy-2.0.0.tgz", + "integrity": "sha512-69agxLtnI8xBs9gUGqEnK26UfiexpHy+KUpBQWabiytQjnn5wFY8rklAi7GRfABIuPNnQ/ik48+LGLkYYJcy4A==", "dev": true, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "node_modules/prom-client": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/prom-client/-/prom-client-13.1.0.tgz", + "integrity": "sha512-jT9VccZCWrJWXdyEtQddCDszYsiuWj5T0ekrPszi/WEegj3IZy6Mm09iOOVM86A4IKMWq8hZkT2dD9MaSe+sng==", "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" + "tdigest": "^0.1.1" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/promise": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz", + "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==", + "dev": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, + "asap": "~2.0.6" + } + }, + "node_modules/promise-all-reject-late": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz", + "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==", + "dev": true, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/slice-ansi/node_modules/color-convert": { + "node_modules/promise-call-limit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-3.0.2.tgz", + "integrity": "sha512-mRPQO2T1QQVw11E7+UdCJu7S61eJVWknzml9sC1heAdj1jxl0fWMBypIt9ZOcLFf8FkG995ZD7RnVk7HH72fZw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "dev": true + }, + "node_modules/promise-retry": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, "dependencies": { - "color-name": "~1.1.4" + "err-code": "^2.0.2", + "retry": "^0.12.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=10" } }, - "node_modules/slice-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "node_modules/promisify-child-process": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/promisify-child-process/-/promisify-child-process-4.1.2.tgz", + "integrity": "sha512-APnkIgmaHNJpkAn7k+CrJSi9WMuff5ctYFbD0CO2XIPkM8yO7d/ShouU2clywbpHV/DUsyc4bpJCsNgddNtx4g==", + "optional": true, + "engines": { + "node": ">=8" + } }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" + "node": ">= 6" } }, - "node_modules/socks": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.4.tgz", - "integrity": "sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==", + "node_modules/promzard": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/promzard/-/promzard-1.0.2.tgz", + "integrity": "sha512-2FPputGL+mP3jJ3UZg/Dl9YOkovB7DX0oOr+ck5QbZ5MtORtds8k/BZdn+02peDLI8/YWbmzx34k5fA+fHvCVQ==", "dev": true, "dependencies": { - "ip-address": "^9.0.5", - "smart-buffer": "^4.2.0" + "read": "^3.0.1" }, "engines": { - "node": ">= 10.0.0", - "npm": ">= 3.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/socks-proxy-agent": { - "version": "8.0.5", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", - "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", - "dev": true, + "node_modules/proper-lockfile": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz", + "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==", + "optional": true, "dependencies": { - "agent-base": "^7.1.2", - "debug": "^4.3.4", - "socks": "^2.8.3" + "graceful-fs": "^4.2.4", + "retry": "^0.12.0", + "signal-exit": "^3.0.2" + } + }, + "node_modules/protobufjs": { + "version": "6.11.4", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.4.tgz", + "integrity": "sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==", + "hasInstallScript": true, + "dependencies": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/long": "^4.0.1", + "@types/node": ">=13.7.0", + "long": "^4.0.0" }, + "bin": { + "pbjs": "bin/pbjs", + "pbts": "bin/pbts" + } + }, + "node_modules/protocols": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.2.tgz", + "integrity": "sha512-hHVTzba3wboROl0/aWRRG9dMytgH6ow//STBZh43l/wQgmMhYhOFi0EHWAPtoCz9IAUymsyP0TSBHkhgMEGNnQ==", + "dev": true + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "optional": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "engines": { - "node": ">= 14" + "node": ">=6" } }, - "node_modules/socks-proxy-agent/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] + }, + "node_modules/pure-uuid": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/pure-uuid/-/pure-uuid-1.8.1.tgz", + "integrity": "sha512-PIwHXU7NZb/wTBwUfzCSjI85tfwx6DQOm74sRLtNLH8KHsFZEvAQbBQdz7E5ij8SNSv9WGdQPWiiM6NpNIeNfA==", + "optional": true, "engines": { - "node": ">= 14" + "node": ">=8.0.0" } }, - "node_modules/solc": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.7.3.tgz", - "integrity": "sha512-GAsWNAjGzIDg7VxzP6mPjdurby3IkGCjQcM8GFYZT6RyaoUZKmMU6Y7YwG+tFGhv7dwZ8rmR4iwFDrrD99JwqA==", + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, "dependencies": { - "command-exists": "^1.2.8", - "commander": "3.0.2", - "follow-redirects": "^1.12.1", - "fs-extra": "^0.30.0", - "js-sha3": "0.8.0", - "memorystream": "^0.3.1", - "require-from-string": "^2.0.0", - "semver": "^5.5.0", - "tmp": "0.0.33" + "side-channel": "^1.0.6" }, - "bin": { - "solcjs": "solcjs" + "engines": { + "node": ">=0.6" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/solc/node_modules/fs-extra": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", - "integrity": "sha512-UvSPKyhMn6LEd/WpUaV9C9t3zATuqoqfWc3QdPhPLb58prN9tqYPlPWi8Krxi44loBoUzlobqZ3+8tGpxxSzwA==", - "dev": true, + "node_modules/ramda": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.2.tgz", + "integrity": "sha512-SbiLPU40JuJniHexQSAgad32hfwd+DRUdwF2PlVuI5RZD0/vahUco7R8vD86J/tcEKKF9vZrUVwgtmGCqlCKyA==", + "dev": true + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0", - "path-is-absolute": "^1.0.0", - "rimraf": "^2.2.8" + "safe-buffer": "^5.1.0" } }, - "node_modules/solc/node_modules/jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==", + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, - "node_modules/solc/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "node_modules/raw-body/node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "dependencies": { - "glob": "^7.1.3" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">= 0.8" } }, - "node_modules/solc/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "node_modules/raw-body/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true, - "bin": { - "semver": "bin/semver" + "engines": { + "node": ">= 0.8" } }, - "node_modules/solc/node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/read": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/read/-/read-3.0.1.tgz", + "integrity": "sha512-SLBrDU/Srs/9EoWhU5GdbAoxG1GzpQHo/6qiGItaoLJ1thmYpcNIM1qISEUvyHBzfGlWIyd6p2DNi1oV1VmAuw==", "dev": true, "dependencies": { - "os-tmpdir": "~1.0.2" + "mute-stream": "^1.0.0" }, "engines": { - "node": ">=0.6.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/solhint": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/solhint/-/solhint-3.6.2.tgz", - "integrity": "sha512-85EeLbmkcPwD+3JR7aEMKsVC9YrRSxd4qkXuMzrlf7+z2Eqdfm1wHWq1ffTuo5aDhoZxp2I9yF3QkxZOxOL7aQ==", + "node_modules/read-cmd-shim": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz", + "integrity": "sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==", "dev": true, - "dependencies": { - "@solidity-parser/parser": "^0.16.0", - "ajv": "^6.12.6", - "antlr4": "^4.11.0", - "ast-parents": "^0.0.1", - "chalk": "^4.1.2", - "commander": "^10.0.0", - "cosmiconfig": "^8.0.0", - "fast-diff": "^1.2.0", - "glob": "^8.0.3", - "ignore": "^5.2.4", - "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "pluralize": "^8.0.0", - "semver": "^7.5.2", - "strip-ansi": "^6.0.1", - "table": "^6.8.1", - "text-table": "^0.2.0" - }, - "bin": { - "solhint": "solhint.js" - }, - "optionalDependencies": { - "prettier": "^2.8.3" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/solhint/node_modules/@solidity-parser/parser": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.16.2.tgz", - "integrity": "sha512-PI9NfoA3P8XK2VBkK5oIfRgKDsicwDZfkVq9ZTBCQYGOP1N2owgY2dyLGyU5/J/hQs8KRk55kdmvTLjy3Mu3vg==", + "node_modules/read-package-json-fast": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", + "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", "dev": true, "dependencies": { - "antlr4ts": "^0.5.0-alpha.4" + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/solhint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=4" } }, - "node_modules/solhint/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "node_modules/read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0" + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/solhint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "locate-path": "^2.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=4" } }, - "node_modules/solhint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=4" } }, - "node_modules/solhint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/solhint/node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, "engines": { - "node": ">=14" + "node": ">=4" } }, - "node_modules/solhint/node_modules/cosmiconfig": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", - "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, "dependencies": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" + "p-limit": "^1.1.0" }, "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/d-fischer" - }, - "peerDependencies": { - "typescript": ">=4.9.5" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=4" } }, - "node_modules/solhint/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, + "node_modules/read-pkg-up/node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", + "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=4" } }, - "node_modules/solhint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/solhint/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "node_modules/read-pkg/node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/solhint/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "node_modules/solhint/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/read-pkg/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/solhint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "pify": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/solhint/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/read-pkg/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "node_modules/solidity-comments-extractor": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/solidity-comments-extractor/-/solidity-comments-extractor-0.0.8.tgz", - "integrity": "sha512-htM7Vn6LhHreR+EglVMd2s+sZhcXAirB1Zlyrv5zBuTxieCvjfnRpd7iZk75m/u6NOlEyQ94C6TWbBn2cY7w8g==", - "dev": true + "node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } }, - "node_modules/solidity-coverage": { - "version": "0.7.22", - "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.7.22.tgz", - "integrity": "sha512-I6Zd5tsFY+gmj1FDIp6w7OrUePx6ZpMgKQZg7dWgPaQHePLi3Jk+iJ8lwZxsWEoNy2Lcv91rMxATWHqRaFdQpw==", + "node_modules/read-pkg/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/read/node_modules/mute-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", + "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dependencies": { - "@solidity-parser/parser": "^0.14.0", - "@truffle/provider": "^0.2.24", - "chalk": "^2.4.2", - "death": "^1.1.0", - "detect-port": "^1.3.0", - "fs-extra": "^8.1.0", - "ghost-testrpc": "^0.0.2", - "global-modules": "^2.0.0", - "globby": "^10.0.1", - "jsonschema": "^1.2.4", - "lodash": "^4.17.15", - "node-emoji": "^1.10.0", - "pify": "^4.0.1", - "recursive-readdir": "^2.2.2", - "sc-istanbul": "^0.4.5", - "semver": "^7.3.4", - "shelljs": "^0.8.3", - "web3-utils": "^1.3.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" }, - "bin": { - "solidity-coverage": "plugins/bin.js" + "engines": { + "node": ">= 6" } }, - "node_modules/solidity-coverage/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "picomatch": "^2.2.1" }, "engines": { - "node": ">=6 <7 || >=8" + "node": ">=8.10.0" } }, - "node_modules/solidity-coverage/node_modules/globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "node_modules/readonly-date": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/readonly-date/-/readonly-date-1.0.0.tgz", + "integrity": "sha512-tMKIV7hlk0h4mO3JTmmVuIlJVXjKk3Sep9Bf5OH0O+758ruuVkUy2J9SttDLm91IEX/WHlXPSpxMGjPj4beMIQ==" + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", "dev": true, "dependencies": { - "@types/glob": "^7.1.1", - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", - "slash": "^3.0.0" + "resolve": "^1.1.6" }, "engines": { - "node": ">=8" + "node": ">= 0.10" } }, - "node_modules/solidity-coverage/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "node_modules/reconnecting-websocket": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/reconnecting-websocket/-/reconnecting-websocket-4.4.0.tgz", + "integrity": "sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==" + }, + "node_modules/recursive-readdir": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", + "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "dependencies": { + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/solidity-coverage/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/solidity-coverage/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "node_modules/reduce-flatten": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-2.0.0.tgz", + "integrity": "sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==", "dev": true, "engines": { "node": ">=6" } }, - "node_modules/solidity-coverage/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" }, - "bin": { - "semver": "bin/semver.js" + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, "engines": { - "node": ">=10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" } }, - "node_modules/solidity-coverage/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "node_modules/req-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/req-cwd/-/req-cwd-2.0.0.tgz", + "integrity": "sha512-ueoIoLo1OfB6b05COxAA9UpeoscNpYyM+BqYlA7H6LVF4hKGPXQQSSaD2YmvDVJMkk4UDpAHIeU1zG53IqjvlQ==", "dev": true, + "dependencies": { + "req-from": "^2.0.0" + }, "engines": { - "node": ">= 4.0.0" + "node": ">=4" } }, - "node_modules/solidity-coverage/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/sort-keys": { + "node_modules/req-from": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==", + "resolved": "https://registry.npmjs.org/req-from/-/req-from-2.0.0.tgz", + "integrity": "sha512-LzTfEVDVQHBRfjOUMgNBA+V6DWsSnoeKzf42J7l0xa/B4jyPOuuF5MlNSmomLNGemWTnV2TIdjSSLnEn95fOQA==", "dev": true, "dependencies": { - "is-plain-obj": "^1.0.0" + "resolve-from": "^3.0.0" }, "engines": { "node": ">=4" } }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/req-from/node_modules/resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/spdx-correct": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", - "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" } }, - "node_modules/spdx-exceptions": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", - "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/spdx-license-ids": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", - "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", - "dev": true + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", + "optional": true }, - "node_modules/split": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", - "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, "dependencies": { - "through": "2" + "resolve-from": "^5.0.0" }, "engines": { - "node": "*" + "node": ">=8" } }, - "node_modules/split2": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", - "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "dependencies": { - "readable-stream": "^3.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true - }, - "node_modules/sshpk": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", - "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, - "dependencies": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" - }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/sshpk/node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "node_modules/sshpk/node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "node_modules/ssri": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", - "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", + "node_modules/resolve.exports": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", "dev": true, - "dependencies": { - "minipass": "^7.0.3" - }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", - "engines": { - "node": "*" + "node_modules/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "optional": true, + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dev": true, "dependencies": { - "escape-string-regexp": "^2.0.0" + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/stack-utils/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "devOptional": true, "engines": { - "node": ">=8" + "node": ">= 4" } }, - "node_modules/stacktrace-parser": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", - "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "devOptional": true, "dependencies": { - "type-fest": "^0.7.1" + "glob": "^7.1.3" }, - "engines": { - "node": ">=6" + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/stacktrace-parser/node_modules/type-fest": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", - "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" } }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "optional": true, - "engines": { - "node": ">= 0.6" + "node_modules/rlp": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", + "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", + "dev": true, + "dependencies": { + "bn.js": "^5.2.0" + }, + "bin": { + "rlp": "bin/rlp" } }, - "node_modules/strict-event-emitter-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strict-event-emitter-types/-/strict-event-emitter-types-2.0.0.tgz", - "integrity": "sha512-Nk/brWYpD85WlOgzw5h173aci0Teyv8YdIAEtV+N88nDB0dLlazZyJMIsN6eo1/AR61l+p6CJTG1JIyFaoNEEA==" - }, - "node_modules/strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=0.12.0" } }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "safe-buffer": "~5.2.0" + "queue-microtask": "^1.2.2" } }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "node_modules/run-parallel-limit": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.1.0.tgz", + "integrity": "sha512-jJA7irRNM91jaKc3Hcl1npHsFLOXOoTkPCUL1JEa1R82O2miplXXRaGdjW/KM/98YQWDhJLiSs793CnXfblJUw==", + "dev": true, "funding": [ { "type": "github", @@ -28256,83 +24420,64 @@ "type": "consulting", "url": "https://feross.org/support" } - ] - }, - "node_modules/string-format": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string-format/-/string-format-2.0.0.tgz", - "integrity": "sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA==", - "dev": true - }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - "dev": true, + ], "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" + "queue-microtask": "^1.2.2" } }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } + "node_modules/rustbn.js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz", + "integrity": "sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==", + "dev": true }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", "dev": true, "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" + "tslib": "^2.1.0" } }, - "node_modules/string.prototype.padend": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", - "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", + "node_modules/rxjs/node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "dev": true + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", "dev": true, "dependencies": { "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" }, "engines": { - "node": ">= 0.4" + "node": ">=0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/string.prototype.trim": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", - "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" }, "engines": { "node": ">= 0.4" @@ -28341,801 +24486,717 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/string.prototype.trimend": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", - "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/safe-stable-stringify": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", + "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "engines": { + "node": ">=10" } }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "devOptional": true + }, + "node_modules/sc-istanbul": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/sc-istanbul/-/sc-istanbul-0.4.6.tgz", + "integrity": "sha512-qJFF/8tW/zJsbyfh/iT/ZM5QNHE3CXxtLJbZsL+CzdJLBsPD7SedJZoUA4d8iAcN2IoMp/Dx80shOOd2x96X/g==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" + "abbrev": "1.0.x", + "async": "1.x", + "escodegen": "1.8.x", + "esprima": "2.7.x", + "glob": "^5.0.15", + "handlebars": "^4.0.1", + "js-yaml": "3.x", + "mkdirp": "0.5.x", + "nopt": "3.x", + "once": "1.x", + "resolve": "1.1.x", + "supports-color": "^3.1.0", + "which": "^1.1.1", + "wordwrap": "^1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "istanbul": "lib/cli.js" } }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } + "node_modules/sc-istanbul/node_modules/abbrev": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", + "integrity": "sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==", + "dev": true }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/sc-istanbul/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" + "sprintf-js": "~1.0.2" } }, - "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "node_modules/sc-istanbul/node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", + "dev": true + }, + "node_modules/sc-istanbul/node_modules/glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", "dev": true, + "dependencies": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, "engines": { - "node": ">=8" + "node": "*" } }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "node_modules/sc-istanbul/node_modules/has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", "dev": true, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/strip-hex-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", - "integrity": "sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==", + "node_modules/sc-istanbul/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "dependencies": { - "is-hex-prefixed": "1.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "node_modules/sc-istanbul/node_modules/js-yaml/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "dependencies": { - "min-indent": "^1.0.0" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "node_modules/sc-istanbul/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "minimist": "^1.2.6" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "mkdirp": "bin/cmd.js" } }, - "node_modules/strong-log-transformer": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz", - "integrity": "sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA==", + "node_modules/sc-istanbul/node_modules/nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", "dev": true, "dependencies": { - "duplexer": "^0.1.1", - "minimist": "^1.2.0", - "through": "^2.3.4" + "abbrev": "1" }, "bin": { - "sl-log-transformer": "bin/sl-log-transformer.js" - }, - "engines": { - "node": ">=4" + "nopt": "bin/nopt.js" } }, - "node_modules/superstruct": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-1.0.4.tgz", - "integrity": "sha512-7JpaAoX2NGyoFlI9NBh66BQXGONc+uE+MRS5i2iOBKuS4e+ccgMDjATgZldkah+33DakBxDHiss9kvUcGAO8UQ==", - "engines": { - "node": ">=14.0.0" - } + "node_modules/sc-istanbul/node_modules/resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==", + "dev": true }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/sc-istanbul/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/sc-istanbul/node_modules/supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "has-flag": "^1.0.0" }, "engines": { - "node": ">=4" + "node": ">=0.8.0" } }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "node_modules/sc-istanbul/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, - "engines": { - "node": ">= 0.4" + "dependencies": { + "isexe": "^2.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "which": "bin/which" } }, - "node_modules/swarm-js": { - "version": "0.1.42", - "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.42.tgz", - "integrity": "sha512-BV7c/dVlA3R6ya1lMlSSNPLYrntt0LUq4YMgy3iwpCIc6rZnS5W2wUoctarZ5pXlpKtxDDf9hNziEkcfrxdhqQ==", - "dev": true, - "dependencies": { - "bluebird": "^3.5.0", - "buffer": "^5.0.5", - "eth-lib": "^0.1.26", - "fs-extra": "^4.0.2", - "got": "^11.8.5", - "mime-types": "^2.1.16", - "mkdirp-promise": "^5.0.1", - "mock-fs": "^4.1.0", - "setimmediate": "^1.0.5", - "tar": "^4.0.2", - "xhr-request": "^1.0.1" - } + "node_modules/scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" }, - "node_modules/swarm-js/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "node_modules/scryptsy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-2.1.0.tgz", + "integrity": "sha512-1CdSqHQowJBnMAFyPEBRfqag/YP9OF394FV+4YREIJX4ljD7OxvQRDayyoyyCk+senRjSkP6VnUNQmVQqB6g7w==" + }, + "node_modules/secp256k1": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.4.tgz", + "integrity": "sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "hasInstallScript": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "elliptic": "^6.5.7", + "node-addon-api": "^5.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=18.0.0" } }, - "node_modules/swarm-js/node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "node_modules/secp256k1/node_modules/bn.js": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", + "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==", "dev": true }, - "node_modules/swarm-js/node_modules/fs-extra": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", - "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "node_modules/secp256k1/node_modules/elliptic": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", "dev": true, "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "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" } }, - "node_modules/swarm-js/node_modules/fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "dev": true, - "dependencies": { - "minipass": "^2.6.0" - } + "node_modules/secp256k1/node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==", + "dev": true }, - "node_modules/swarm-js/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } + "node_modules/secure-json-parse": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz", + "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==" }, - "node_modules/swarm-js/node_modules/minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "dependencies": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/swarm-js/node_modules/minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "dev": true, - "dependencies": { - "minipass": "^2.9.0" - } + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "dev": true }, - "node_modules/swarm-js/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" + "randombytes": "^2.1.0" } }, - "node_modules/swarm-js/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true }, - "node_modules/swarm-js/node_modules/tar": { - "version": "4.4.19", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", - "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "dev": true, "dependencies": { - "chownr": "^1.1.4", - "fs-minipass": "^1.2.7", - "minipass": "^2.9.0", - "minizlib": "^1.3.3", - "mkdirp": "^0.5.5", - "safe-buffer": "^5.2.1", - "yallist": "^3.1.1" + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" }, "engines": { - "node": ">=4.5" - } - }, - "node_modules/swarm-js/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/symbol-observable": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-2.0.3.tgz", - "integrity": "sha512-sQV7phh2WCYAn81oAkakC5qjq2Ml0g8ozqz03wOGnx9dDlG1de6yrF+0RAzSJD8fPUow3PTSMf2SAbOGxb93BA==", - "engines": { - "node": ">=0.10" + "node": ">= 0.4" } }, - "node_modules/sync-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz", - "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==", + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, "dependencies": { - "http-response-object": "^3.0.1", - "sync-rpc": "^1.2.1", - "then-request": "^6.0.0" + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" }, "engines": { - "node": ">=8.0.0" + "node": ">= 0.4" } }, - "node_modules/sync-rpc": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz", - "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==", - "dev": true, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "dev": true + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "devOptional": true + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dependencies": { - "get-port": "^3.1.0" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" } }, - "node_modules/sync-rpc/node_modules/get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==", + "node_modules/sha1": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/sha1/-/sha1-1.1.1.tgz", + "integrity": "sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA==", "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/table": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", - "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", "dependencies": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" + "charenc": ">= 0.0.1", + "crypt": ">= 0.0.1" }, "engines": { - "node": ">=10.0.0" + "node": "*" } }, - "node_modules/table-layout": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-1.0.2.tgz", - "integrity": "sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==", + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", "dev": true, "dependencies": { - "array-back": "^4.0.1", - "deep-extend": "~0.6.0", - "typical": "^5.2.0", - "wordwrapjs": "^4.0.0" + "kind-of": "^6.0.2" }, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/table-layout/node_modules/array-back": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", - "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/table-layout/node_modules/typical": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", - "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/table/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/table/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" - }, - "node_modules/tar": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", - "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", - "devOptional": true, + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "dev": true, "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dev": true, "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tar/node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "devOptional": true, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "devOptional": true + }, + "node_modules/sigstore": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz", + "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==", + "dev": true, "dependencies": { - "minipass": "^3.0.0" + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.3.2", + "@sigstore/sign": "^2.3.2", + "@sigstore/tuf": "^2.3.4", + "@sigstore/verify": "^1.2.1" }, "engines": { - "node": ">= 8" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "devOptional": true, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" + "is-arrayish": "^0.3.1" } }, - "node_modules/tar/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "devOptional": true, - "engines": { - "node": ">=8" + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + }, + "node_modules/sinon": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.1.tgz", + "integrity": "sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==", + "dependencies": { + "@sinonjs/commons": "^3.0.0", + "@sinonjs/fake-timers": "^11.2.2", + "@sinonjs/samsam": "^8.0.0", + "diff": "^5.1.0", + "nise": "^5.1.5", + "supports-color": "^7.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/sinon" } }, - "node_modules/tar/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "devOptional": true - }, - "node_modules/tdigest": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/tdigest/-/tdigest-0.1.2.tgz", - "integrity": "sha512-+G0LLgjjo9BZX2MfdvPfH+MKLCrxlXSYec5DaPYP1fe6Iyhf0/fSmJ0bFiZ1F8BT6cGXl2LpltQptzjXKWEkKA==", + "node_modules/sinon/node_modules/@sinonjs/fake-timers": { + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", + "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", "dependencies": { - "bintrees": "1.0.2" + "@sinonjs/commons": "^3.0.0" } }, - "node_modules/temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", - "dev": true, + "node_modules/sinon/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, + "node_modules/sinon/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/text-encoding-utf-8": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz", - "integrity": "sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg==", - "optional": true + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true }, - "node_modules/text-extensions": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", - "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==", + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true, "engines": { - "node": ">=0.10" + "node": ">=8" } }, - "node_modules/text-hex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", - "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/then-request": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz", - "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==", - "dev": true, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dependencies": { - "@types/concat-stream": "^1.6.0", - "@types/form-data": "0.0.33", - "@types/node": "^8.0.0", - "@types/qs": "^6.2.31", - "caseless": "~0.12.0", - "concat-stream": "^1.6.0", - "form-data": "^2.2.0", - "http-basic": "^8.1.1", - "http-response-object": "^3.0.1", - "promise": "^8.0.0", - "qs": "^6.4.0" + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/then-request/node_modules/@types/node": { - "version": "8.10.66", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", - "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==", - "dev": true - }, - "node_modules/then-request/node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "engines": [ - "node >= 0.8" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/then-request/node_modules/form-data": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", - "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", - "dev": true, + "node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 0.12" - } - }, - "node_modules/then-request/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/then-request/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/then-request/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, + "node_modules/slice-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { - "safe-buffer": "~5.1.0" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true + "node_modules/slice-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true, - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" } }, - "node_modules/through2/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/through2/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "node_modules/socks": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.4.tgz", + "integrity": "sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==", "dev": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" } }, - "node_modules/through2/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "node_modules/socks-proxy-agent": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", "dev": true, "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tmp": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", - "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, "engines": { - "node": ">=14.14" + "node": ">= 14" } }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "node_modules/to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 14" } }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/solc": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/solc/-/solc-0.7.3.tgz", + "integrity": "sha512-GAsWNAjGzIDg7VxzP6mPjdurby3IkGCjQcM8GFYZT6RyaoUZKmMU6Y7YwG+tFGhv7dwZ8rmR4iwFDrrD99JwqA==", "dev": true, "dependencies": { - "is-number": "^7.0.0" + "command-exists": "^1.2.8", + "commander": "3.0.2", + "follow-redirects": "^1.12.1", + "fs-extra": "^0.30.0", + "js-sha3": "0.8.0", + "memorystream": "^0.3.1", + "require-from-string": "^2.0.0", + "semver": "^5.5.0", + "tmp": "0.0.33" + }, + "bin": { + "solcjs": "solcjs" }, "engines": { - "node": ">=8.0" + "node": ">=8.0.0" } }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "devOptional": true, - "engines": { - "node": ">=0.6" + "node_modules/solc/node_modules/fs-extra": { + "version": "0.30.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", + "integrity": "sha512-UvSPKyhMn6LEd/WpUaV9C9t3zATuqoqfWc3QdPhPLb58prN9tqYPlPWi8Krxi44loBoUzlobqZ3+8tGpxxSzwA==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^2.1.0", + "klaw": "^1.0.0", + "path-is-absolute": "^1.0.0", + "rimraf": "^2.2.8" } }, - "node_modules/tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "node_modules/solc/node_modules/jsonfile": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/solc/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" + "glob": "^7.1.3" }, - "engines": { - "node": ">=0.8" + "bin": { + "rimraf": "bin.js" } }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/treeverse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/treeverse/-/treeverse-3.0.0.tgz", - "integrity": "sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==", + "node_modules/solc/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "bin": { + "semver": "bin/semver" } }, - "node_modules/trim-newlines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "node_modules/solc/node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, "engines": { - "node": ">=8" + "node": ">=0.6.0" } }, - "node_modules/triple-beam": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz", - "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==" - }, - "node_modules/ts-command-line-args": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/ts-command-line-args/-/ts-command-line-args-2.5.1.tgz", - "integrity": "sha512-H69ZwTw3rFHb5WYpQya40YAX2/w7Ut75uUECbgBIsLmM+BNuYnxsltfyyLMxy6sEeKxgijLTnQtLd0nKd6+IYw==", + "node_modules/solhint": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/solhint/-/solhint-3.6.2.tgz", + "integrity": "sha512-85EeLbmkcPwD+3JR7aEMKsVC9YrRSxd4qkXuMzrlf7+z2Eqdfm1wHWq1ffTuo5aDhoZxp2I9yF3QkxZOxOL7aQ==", "dev": true, "dependencies": { - "chalk": "^4.1.0", - "command-line-args": "^5.1.1", - "command-line-usage": "^6.1.0", - "string-format": "^2.0.0" + "@solidity-parser/parser": "^0.16.0", + "ajv": "^6.12.6", + "antlr4": "^4.11.0", + "ast-parents": "^0.0.1", + "chalk": "^4.1.2", + "commander": "^10.0.0", + "cosmiconfig": "^8.0.0", + "fast-diff": "^1.2.0", + "glob": "^8.0.3", + "ignore": "^5.2.4", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "pluralize": "^8.0.0", + "semver": "^7.5.2", + "strip-ansi": "^6.0.1", + "table": "^6.8.1", + "text-table": "^0.2.0" }, "bin": { - "write-markdown": "dist/write-markdown.js" + "solhint": "solhint.js" + }, + "optionalDependencies": { + "prettier": "^2.8.3" } }, - "node_modules/ts-command-line-args/node_modules/ansi-styles": { + "node_modules/solhint/node_modules/@solidity-parser/parser": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.16.2.tgz", + "integrity": "sha512-PI9NfoA3P8XK2VBkK5oIfRgKDsicwDZfkVq9ZTBCQYGOP1N2owgY2dyLGyU5/J/hQs8KRk55kdmvTLjy3Mu3vg==", + "dev": true, + "dependencies": { + "antlr4ts": "^0.5.0-alpha.4" + } + }, + "node_modules/solhint/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -29150,7 +25211,16 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/ts-command-line-args/node_modules/chalk": { + "node_modules/solhint/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/solhint/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -29166,7 +25236,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/ts-command-line-args/node_modules/color-convert": { + "node_modules/solhint/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -29178,22 +25248,115 @@ "node": ">=7.0.0" } }, - "node_modules/ts-command-line-args/node_modules/color-name": { + "node_modules/solhint/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/ts-command-line-args/node_modules/has-flag": { + "node_modules/solhint/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/solhint/node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/solhint/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/solhint/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=8" + } + }, + "node_modules/solhint/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/solhint/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/solhint/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/ts-command-line-args/node_modules/supports-color": { + "node_modules/solhint/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", @@ -29205,59 +25368,100 @@ "node": ">=8" } }, - "node_modules/ts-essentials": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-7.0.3.tgz", - "integrity": "sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==", + "node_modules/solhint/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/solidity-comments-extractor": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/solidity-comments-extractor/-/solidity-comments-extractor-0.0.8.tgz", + "integrity": "sha512-htM7Vn6LhHreR+EglVMd2s+sZhcXAirB1Zlyrv5zBuTxieCvjfnRpd7iZk75m/u6NOlEyQ94C6TWbBn2cY7w8g==", + "dev": true + }, + "node_modules/solidity-coverage": { + "version": "0.8.14", + "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.8.14.tgz", + "integrity": "sha512-ItAAObe5GaEOp20kXC2BZRnph+9P7Rtoqg2mQc2SXGEHgSDF2wWd1Wxz3ntzQWXkbCtIIGdJT918HG00cObwbA==", "dev": true, + "dependencies": { + "@ethersproject/abi": "^5.0.9", + "@solidity-parser/parser": "^0.19.0", + "chalk": "^2.4.2", + "death": "^1.1.0", + "difflib": "^0.2.4", + "fs-extra": "^8.1.0", + "ghost-testrpc": "^0.0.2", + "global-modules": "^2.0.0", + "globby": "^10.0.1", + "jsonschema": "^1.2.4", + "lodash": "^4.17.21", + "mocha": "^10.2.0", + "node-emoji": "^1.10.0", + "pify": "^4.0.1", + "recursive-readdir": "^2.2.2", + "sc-istanbul": "^0.4.5", + "semver": "^7.3.4", + "shelljs": "^0.8.3", + "web3-utils": "^1.3.6" + }, + "bin": { + "solidity-coverage": "plugins/bin.js" + }, "peerDependencies": { - "typescript": ">=3.7.0" + "hardhat": "^2.11.0" } }, - "node_modules/ts-jest": { - "version": "29.1.2", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.2.tgz", - "integrity": "sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==", + "node_modules/solidity-coverage/node_modules/@solidity-parser/parser": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.19.0.tgz", + "integrity": "sha512-RV16k/qIxW/wWc+mLzV3ARyKUaMUTBy9tOLMzFhtNSKYeTAanQ3a5MudJKf/8arIFnA2L27SNjarQKmFg0w/jA==", + "dev": true + }, + "node_modules/solidity-coverage/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, "dependencies": { - "bs-logger": "0.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^29.0.0", - "json5": "^2.2.3", - "lodash.memoize": "4.x", - "make-error": "1.x", - "semver": "^7.5.3", - "yargs-parser": "^21.0.1" - }, - "bin": { - "ts-jest": "cli.js" + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" }, "engines": { - "node": "^16.10.0 || ^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "@babel/core": ">=7.0.0-beta.0 <8", - "@jest/types": "^29.0.0", - "babel-jest": "^29.0.0", - "jest": "^29.0.0", - "typescript": ">=4.3 <6" + "node": ">=6 <7 || >=8" + } + }, + "node_modules/solidity-coverage/node_modules/globby": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "dev": true, + "dependencies": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@jest/types": { - "optional": true - }, - "babel-jest": { - "optional": true - }, - "esbuild": { - "optional": true - } + "engines": { + "node": ">=8" } }, - "node_modules/ts-jest/node_modules/lru-cache": { + "node_modules/solidity-coverage/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/solidity-coverage/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", @@ -29269,7 +25473,16 @@ "node": ">=10" } }, - "node_modules/ts-jest/node_modules/semver": { + "node_modules/solidity-coverage/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/solidity-coverage/node_modules/semver": { "version": "7.6.0", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", @@ -29284,322 +25497,289 @@ "node": ">=10" } }, - "node_modules/ts-jest/node_modules/yallist": { + "node_modules/solidity-coverage/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/solidity-coverage/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/ts-jest/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/ts-node": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", + "node_modules/sort-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", + "integrity": "sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==", "dev": true, "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" + "is-plain-obj": "^1.0.0" }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } + "engines": { + "node": ">=4" } }, - "node_modules/ts-node/node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, "engines": { - "node": ">=0.3.1" + "node": ">=0.10.0" } }, - "node_modules/tsconfig-paths": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", - "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dev": true, "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/tsconfig-paths/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } }, - "node_modules/tsort": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tsort/-/tsort-0.0.1.tgz", - "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==", + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", "dev": true }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, - "node_modules/tuf-js": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz", - "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==", + "node_modules/spdx-license-ids": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", + "dev": true + }, + "node_modules/split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", "dev": true, "dependencies": { - "@tufjs/models": "2.0.1", - "debug": "^4.3.4", - "make-fetch-happen": "^13.0.1" + "through": "2" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "*" } }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "node_modules/split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", "dev": true, "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" + "readable-stream": "^3.0.0" } }, - "node_modules/tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "node_modules/tweetnacl-util": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", - "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==", - "dev": true - }, - "node_modules/type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", + "node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", "dev": true }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "node_modules/ssri": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", "dev": true, "dependencies": { - "prelude-ls": "^1.2.1" + "minipass": "^7.0.3" }, "engines": { - "node": ">= 0.8.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", "engines": { - "node": ">=4" + "node": "*" } }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "node_modules/typechain": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/typechain/-/typechain-8.3.2.tgz", - "integrity": "sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q==", + "node_modules/stacktrace-parser": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", + "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", "dev": true, "dependencies": { - "@types/prettier": "^2.1.1", - "debug": "^4.3.1", - "fs-extra": "^7.0.0", - "glob": "7.1.7", - "js-sha3": "^0.8.0", - "lodash": "^4.17.15", - "mkdirp": "^1.0.4", - "prettier": "^2.3.1", - "ts-command-line-args": "^2.2.0", - "ts-essentials": "^7.0.1" - }, - "bin": { - "typechain": "dist/cli/cli.js" + "type-fest": "^0.7.1" }, - "peerDependencies": { - "typescript": ">=4.3.0" + "engines": { + "node": ">=6" } }, - "node_modules/typechain/node_modules/fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "node_modules/stacktrace-parser/node_modules/type-fest": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", + "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, "engines": { - "node": ">=6 <7 || >=8" + "node": ">=8" } }, - "node_modules/typechain/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/strict-event-emitter-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strict-event-emitter-types/-/strict-event-emitter-types-2.0.0.tgz", + "integrity": "sha512-Nk/brWYpD85WlOgzw5h173aci0Teyv8YdIAEtV+N88nDB0dLlazZyJMIsN6eo1/AR61l+p6CJTG1JIyFaoNEEA==" + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/string-format": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string-format/-/string-format-2.0.0.tgz", + "integrity": "sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA==", + "dev": true + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=10" } }, - "node_modules/typechain/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/typechain/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, "engines": { - "node": ">= 4.0.0" + "node": ">=8" } }, - "node_modules/typed-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", - "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "node_modules/string.prototype.padend": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", "dev": true, "dependencies": { "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/typed-array-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", - "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", "dev": true, "dependencies": { "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -29608,38 +25788,29 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", - "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/typed-array-length": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", - "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dev": true, "dependencies": { "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0" + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -29648,1530 +25819,1331 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dependencies": { - "is-typedarray": "^1.0.0" + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" + "dependencies": { + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=4.2.0" + "node": ">=8" } }, - "node_modules/typical": { + "node_modules/strip-bom": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", - "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/u3": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/u3/-/u3-0.1.1.tgz", - "integrity": "sha512-+J5D5ir763y+Am/QY6hXNRlwljIeRMZMGs0cT6qqZVVzzT3X3nFPXVyPOFRMOR4kupB0T8JnCdpWdp6Q/iXn3w==", - "optional": true - }, - "node_modules/uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true, - "optional": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, "engines": { - "node": ">=0.8.0" + "node": ">=6" } }, - "node_modules/ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", - "dev": true - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "node_modules/strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/undici": { - "version": "5.29.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", - "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", - "dependencies": { - "@fastify/busboy": "^2.0.0" + "is-hex-prefixed": "1.0.0" }, "engines": { - "node": ">=14.0" + "node": ">=6.5.0", + "npm": ">=3" } }, - "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" - }, - "node_modules/unique-filename": { + "node_modules/strip-indent": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", - "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", - "dev": true, - "dependencies": { - "unique-slug": "^4.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/unique-slug": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", - "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "dev": true, "dependencies": { - "imurmurhash": "^0.1.4" + "min-indent": "^1.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/universal-user-agent": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz", - "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==", - "dev": true - }, - "node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "engines": { - "node": ">= 0.8" + "node": ">=8" } }, - "node_modules/upath": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", - "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==", + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, "engines": { - "node": ">=4", - "yarn": "*" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "node_modules/strong-log-transformer": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz", + "integrity": "sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "duplexer": "^0.1.1", + "minimist": "^1.2.0", + "through": "^2.3.4" }, "bin": { - "update-browserslist-db": "cli.js" + "sl-log-transformer": "bin/sl-log-transformer.js" }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" + "engines": { + "node": ">=4" } }, - "node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "node_modules/superstruct": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-1.0.4.tgz", + "integrity": "sha512-7JpaAoX2NGyoFlI9NBh66BQXGONc+uE+MRS5i2iOBKuS4e+ccgMDjATgZldkah+33DakBxDHiss9kvUcGAO8UQ==", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { - "prepend-http": "^2.0.0" + "has-flag": "^3.0.0" }, "engines": { "node": ">=4" } }, - "node_modules/url-set-query": { + "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", - "integrity": "sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==", - "dev": true + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/utf-8-validate": { - "version": "5.0.10", - "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", - "integrity": "sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==", - "devOptional": true, - "hasInstallScript": true, + "node_modules/symbol-observable": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-2.0.3.tgz", + "integrity": "sha512-sQV7phh2WCYAn81oAkakC5qjq2Ml0g8ozqz03wOGnx9dDlG1de6yrF+0RAzSJD8fPUow3PTSMf2SAbOGxb93BA==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/sync-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz", + "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==", + "dev": true, "dependencies": { - "node-gyp-build": "^4.3.0" + "http-response-object": "^3.0.1", + "sync-rpc": "^1.2.1", + "then-request": "^6.0.0" }, "engines": { - "node": ">=6.14.2" + "node": ">=8.0.0" } }, - "node_modules/utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==", - "dev": true - }, - "node_modules/util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "node_modules/sync-rpc": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz", + "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" + "get-port": "^3.1.0" } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "node_modules/sync-rpc/node_modules/get-port": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", + "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==", "dev": true, "engines": { - "node": ">= 0.4.0" + "node": ">=4" } }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "bin": { - "uuid": "dist/bin/uuid" + "node_modules/table": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", + "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", + "dependencies": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" } }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true - }, - "node_modules/v8-to-istanbul": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", - "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", + "node_modules/table-layout": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-1.0.2.tgz", + "integrity": "sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==", "dev": true, "dependencies": { - "@jridgewell/trace-mapping": "^0.3.12", - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^2.0.0" + "array-back": "^4.0.1", + "deep-extend": "~0.6.0", + "typical": "^5.2.0", + "wordwrapjs": "^4.0.0" }, "engines": { - "node": ">=10.12.0" + "node": ">=8.0.0" } }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "node_modules/table-layout/node_modules/array-back": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", + "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/validate-npm-package-name": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", - "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", + "node_modules/table-layout/node_modules/typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/varint": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", - "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==", - "dev": true + "node_modules/table/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true, + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "devOptional": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, "engines": { - "node": ">= 0.8" + "node": ">=10" } }, - "node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", "dev": true, - "engines": [ - "node >=0.6.0" - ], "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" } }, - "node_modules/walk-up-path": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", - "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==", - "dev": true + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "devOptional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "dev": true, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "devOptional": true, "dependencies": { - "makeerror": "1.0.12" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "devOptional": true + }, + "node_modules/tdigest": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/tdigest/-/tdigest-0.1.2.tgz", + "integrity": "sha512-+G0LLgjjo9BZX2MfdvPfH+MKLCrxlXSYec5DaPYP1fe6Iyhf0/fSmJ0bFiZ1F8BT6cGXl2LpltQptzjXKWEkKA==", "dependencies": { - "defaults": "^1.0.3" + "bintrees": "1.0.2" } }, - "node_modules/web3": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3/-/web3-1.7.4.tgz", - "integrity": "sha512-iFGK5jO32vnXM/ASaJBaI0+gVR6uHozvYdxkdhaeOCD6HIQ4iIXadbO2atVpE9oc/H8l2MovJ4LtPhG7lIBN8A==", + "node_modules/temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", "dev": true, - "hasInstallScript": true, - "dependencies": { - "web3-bzz": "1.7.4", - "web3-core": "1.7.4", - "web3-eth": "1.7.4", - "web3-eth-personal": "1.7.4", - "web3-net": "1.7.4", - "web3-shh": "1.7.4", - "web3-utils": "1.7.4" - }, "engines": { - "node": ">=8.0.0" + "node": ">=4" } }, - "node_modules/web3-bzz": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.7.4.tgz", - "integrity": "sha512-w9zRhyEqTK/yi0LGRHjZMcPCfP24LBjYXI/9YxFw9VqsIZ9/G0CRCnUt12lUx0A56LRAMpF7iQ8eA73aBcO29Q==", + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, - "hasInstallScript": true, "dependencies": { - "@types/node": "^12.12.6", - "got": "9.6.0", - "swarm-js": "^0.1.40" + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" }, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/web3-bzz/node_modules/@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true, - "engines": { - "node": ">=6" - } + "node_modules/text-encoding-utf-8": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz", + "integrity": "sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg==", + "optional": true }, - "node_modules/web3-bzz/node_modules/@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "node_modules/text-extensions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", + "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==", "dev": true, - "dependencies": { - "defer-to-connect": "^1.0.1" - }, "engines": { - "node": ">=6" + "node": ">=0.10" } }, - "node_modules/web3-bzz/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", + "node_modules/text-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "node_modules/web3-bzz/node_modules/cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "node_modules/then-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz", + "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==", "dev": true, "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" + "@types/concat-stream": "^1.6.0", + "@types/form-data": "0.0.33", + "@types/node": "^8.0.0", + "@types/qs": "^6.2.31", + "caseless": "~0.12.0", + "concat-stream": "^1.6.0", + "form-data": "^2.2.0", + "http-basic": "^8.1.1", + "http-response-object": "^3.0.1", + "promise": "^8.0.0", + "qs": "^6.4.0" }, "engines": { - "node": ">=8" + "node": ">=6.0.0" } }, - "node_modules/web3-bzz/node_modules/cacheable-request/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "node_modules/then-request/node_modules/@types/node": { + "version": "8.10.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", + "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==", + "dev": true + }, + "node_modules/then-request/node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, + "engines": [ + "node >= 0.8" + ], "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "node_modules/web3-bzz/node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "node_modules/then-request/node_modules/form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", "dev": true, "dependencies": { - "mimic-response": "^1.0.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" }, "engines": { - "node": ">=4" + "node": ">= 0.12" } }, - "node_modules/web3-bzz/node_modules/defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "node_modules/then-request/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true }, - "node_modules/web3-bzz/node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "node_modules/then-request/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=6" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/web3-bzz/node_modules/got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "node_modules/then-request/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "dependencies": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/web3-bzz/node_modules/got/node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "safe-buffer": "~5.1.0" } }, - "node_modules/web3-bzz/node_modules/json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "dev": true }, - "node_modules/web3-bzz/node_modules/keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "dev": true, "dependencies": { - "json-buffer": "3.0.0" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } }, - "node_modules/web3-bzz/node_modules/normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/through2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true }, - "node_modules/web3-bzz/node_modules/p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "node_modules/through2/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, - "engines": { - "node": ">=6" + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/web3-bzz/node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "node_modules/through2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "dependencies": { - "lowercase-keys": "^1.0.0" + "safe-buffer": "~5.1.0" } }, - "node_modules/web3-bzz/node_modules/responselike/node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true, + "node_modules/tmp": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", + "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", "engines": { - "node": ">=0.10.0" + "node": ">=14.14" } }, - "node_modules/web3-core": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.7.4.tgz", - "integrity": "sha512-L0DCPlIh9bgIED37tYbe7bsWrddoXYc897ANGvTJ6MFkSNGiMwDkTLWSgYd9Mf8qu8b4iuPqXZHMwIo4atoh7Q==", - "dev": true, - "dependencies": { - "@types/bn.js": "^5.1.0", - "@types/node": "^12.12.6", - "bignumber.js": "^9.0.0", - "web3-core-helpers": "1.7.4", - "web3-core-method": "1.7.4", - "web3-core-requestmanager": "1.7.4", - "web3-utils": "1.7.4" - }, - "engines": { - "node": ">=8.0.0" - } + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true }, - "node_modules/web3-core-helpers": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.7.4.tgz", - "integrity": "sha512-F8PH11qIkE/LpK4/h1fF/lGYgt4B6doeMi8rukeV/s4ivseZHHslv1L6aaijLX/g/j4PsFmR42byynBI/MIzFg==", + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "dependencies": { - "web3-eth-iban": "1.7.4", - "web3-utils": "1.7.4" + "is-number": "^7.0.0" }, "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/web3-core-helpers/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "node": ">=8.0" } }, - "node_modules/web3-core-helpers/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", - "dev": true, - "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" - }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "devOptional": true, "engines": { - "node": ">=10.0.0" + "node": ">=0.6" } }, - "node_modules/web3-core-helpers/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", - "dev": true, - "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" - }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/treeverse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/treeverse/-/treeverse-3.0.0.tgz", + "integrity": "sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==", + "dev": true, "engines": { - "node": ">=8.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/web3-core-method": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.7.4.tgz", - "integrity": "sha512-56K7pq+8lZRkxJyzf5MHQPI9/VL3IJLoy4L/+q8HRdZJ3CkB1DkXYaXGU2PeylG1GosGiSzgIfu1ljqS7CP9xQ==", + "node_modules/trim-newlines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", "dev": true, - "dependencies": { - "@ethersproject/transactions": "^5.6.2", - "web3-core-helpers": "1.7.4", - "web3-core-promievent": "1.7.4", - "web3-core-subscriptions": "1.7.4", - "web3-utils": "1.7.4" - }, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/web3-core-method/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "node_modules/triple-beam": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz", + "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==" + }, + "node_modules/ts-command-line-args": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/ts-command-line-args/-/ts-command-line-args-2.5.1.tgz", + "integrity": "sha512-H69ZwTw3rFHb5WYpQya40YAX2/w7Ut75uUECbgBIsLmM+BNuYnxsltfyyLMxy6sEeKxgijLTnQtLd0nKd6+IYw==", "dev": true, "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "chalk": "^4.1.0", + "command-line-args": "^5.1.1", + "command-line-usage": "^6.1.0", + "string-format": "^2.0.0" + }, + "bin": { + "write-markdown": "dist/write-markdown.js" } }, - "node_modules/web3-core-method/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", + "node_modules/ts-command-line-args/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=10.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/web3-core-method/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "node_modules/ts-command-line-args/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/web3-core-promievent": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.7.4.tgz", - "integrity": "sha512-o4uxwXKDldN7ER7VUvDfWsqTx9nQSP1aDssi1XYXeYC2xJbVo0n+z6ryKtmcoWoRdRj7uSpVzal3nEmlr480mA==", + "node_modules/ts-command-line-args/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "eventemitter3": "4.0.4" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8.0.0" + "node": ">=7.0.0" } }, - "node_modules/web3-core-promievent/node_modules/eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "node_modules/ts-command-line-args/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/web3-core-requestmanager": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.7.4.tgz", - "integrity": "sha512-IuXdAm65BQtPL4aI6LZJJOrKAs0SM5IK2Cqo2/lMNvVMT9Kssq6qOk68Uf7EBDH0rPuINi+ReLP+uH+0g3AnPA==", + "node_modules/ts-command-line-args/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "util": "^0.12.0", - "web3-core-helpers": "1.7.4", - "web3-providers-http": "1.7.4", - "web3-providers-ipc": "1.7.4", - "web3-providers-ws": "1.7.4" - }, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/web3-core-subscriptions": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.7.4.tgz", - "integrity": "sha512-VJvKWaXRyxk2nFWumOR94ut9xvjzMrRtS38c4qj8WBIRSsugrZr5lqUwgndtj0qx4F+50JhnU++QEqUEAtKm3g==", + "node_modules/ts-command-line-args/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.7.4" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/web3-core-subscriptions/node_modules/eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", - "dev": true - }, - "node_modules/web3-core/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", - "dev": true + "node_modules/ts-essentials": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-7.0.3.tgz", + "integrity": "sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==", + "dev": true, + "peerDependencies": { + "typescript": ">=3.7.0" + } }, - "node_modules/web3-core/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "node_modules/ts-jest": { + "version": "29.1.2", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.2.tgz", + "integrity": "sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==", "dev": true, "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "bs-logger": "0.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "4.x", + "make-error": "1.x", + "semver": "^7.5.3", + "yargs-parser": "^21.0.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^16.10.0 || ^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } } }, - "node_modules/web3-core/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", + "node_modules/ts-jest/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" + "yallist": "^4.0.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=10" } }, - "node_modules/web3-core/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "node_modules/ts-jest/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=8.0.0" + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/ts-jest/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" } }, - "node_modules/web3-eth": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.7.4.tgz", - "integrity": "sha512-JG0tTMv0Ijj039emXNHi07jLb0OiWSA9O24MRSk5vToTQyDNXihdF2oyq85LfHuF690lXZaAXrjhtLNlYqb7Ug==", + "node_modules/ts-node": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", + "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", "dev": true, "dependencies": { - "web3-core": "1.7.4", - "web3-core-helpers": "1.7.4", - "web3-core-method": "1.7.4", - "web3-core-subscriptions": "1.7.4", - "web3-eth-abi": "1.7.4", - "web3-eth-accounts": "1.7.4", - "web3-eth-contract": "1.7.4", - "web3-eth-ens": "1.7.4", - "web3-eth-iban": "1.7.4", - "web3-eth-personal": "1.7.4", - "web3-net": "1.7.4", - "web3-utils": "1.7.4" + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" }, - "engines": { - "node": ">=8.0.0" + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } } }, - "node_modules/web3-eth-abi": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.7.4.tgz", - "integrity": "sha512-eMZr8zgTbqyL9MCTCAvb67RbVyN5ZX7DvA0jbLOqRWCiw+KlJKTGnymKO6jPE8n5yjk4w01e165Qb11hTDwHgg==", + "node_modules/ts-node/node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", "dev": true, - "dependencies": { - "@ethersproject/abi": "^5.6.3", - "web3-utils": "1.7.4" - }, "engines": { - "node": ">=8.0.0" + "node": ">=0.3.1" } }, - "node_modules/web3-eth-abi/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", "dev": true, "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" } }, - "node_modules/web3-eth-abi/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", "dev": true, "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" + "minimist": "^1.2.0" }, - "engines": { - "node": ">=10.0.0" + "bin": { + "json5": "lib/cli.js" } }, - "node_modules/web3-eth-abi/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "node_modules/tsconfig-paths/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, - "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" - }, "engines": { - "node": ">=8.0.0" + "node": ">=4" } }, - "node_modules/web3-eth-accounts": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.7.4.tgz", - "integrity": "sha512-Y9vYLRKP7VU7Cgq6wG1jFaG2k3/eIuiTKAG8RAuQnb6Cd9k5BRqTm5uPIiSo0AP/u11jDomZ8j7+WEgkU9+Btw==", + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tsort": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tsort/-/tsort-0.0.1.tgz", + "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==", + "dev": true + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, "dependencies": { - "@ethereumjs/common": "^2.5.0", - "@ethereumjs/tx": "^3.3.2", - "crypto-browserify": "3.12.0", - "eth-lib": "0.2.8", - "ethereumjs-util": "^7.0.10", - "scrypt-js": "^3.0.1", - "uuid": "3.3.2", - "web3-core": "1.7.4", - "web3-core-helpers": "1.7.4", - "web3-core-method": "1.7.4", - "web3-utils": "1.7.4" + "tslib": "^1.8.1" }, "engines": { - "node": ">=8.0.0" + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" } }, - "node_modules/web3-eth-accounts/node_modules/eth-lib": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", - "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "node_modules/tuf-js": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz", + "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==", "dev": true, "dependencies": { - "bn.js": "^4.11.6", - "elliptic": "^6.4.0", - "xhr-request-promise": "^0.1.2" + "@tufjs/models": "2.0.1", + "debug": "^4.3.4", + "make-fetch-happen": "^13.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/web3-eth-accounts/node_modules/eth-lib/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "node_modules/tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" + }, + "node_modules/tweetnacl-util": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", + "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==", "dev": true }, - "node_modules/web3-eth-accounts/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/web3-eth-accounts/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", - "dev": true, - "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" - }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", "engines": { - "node": ">=10.0.0" + "node": ">=4" } }, - "node_modules/web3-eth-accounts/node_modules/uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", "dev": true, - "bin": { - "uuid": "bin/uuid" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/web3-eth-accounts/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "node_modules/typechain": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/typechain/-/typechain-8.3.2.tgz", + "integrity": "sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q==", "dev": true, "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "@types/prettier": "^2.1.1", + "debug": "^4.3.1", + "fs-extra": "^7.0.0", + "glob": "7.1.7", + "js-sha3": "^0.8.0", + "lodash": "^4.17.15", + "mkdirp": "^1.0.4", + "prettier": "^2.3.1", + "ts-command-line-args": "^2.2.0", + "ts-essentials": "^7.0.1" }, - "engines": { - "node": ">=8.0.0" + "bin": { + "typechain": "dist/cli/cli.js" + }, + "peerDependencies": { + "typescript": ">=4.3.0" } }, - "node_modules/web3-eth-contract": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.7.4.tgz", - "integrity": "sha512-ZgSZMDVI1pE9uMQpK0T0HDT2oewHcfTCv0osEqf5qyn5KrcQDg1GT96/+S0dfqZ4HKj4lzS5O0rFyQiLPQ8LzQ==", + "node_modules/typechain/node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", "dev": true, "dependencies": { - "@types/bn.js": "^5.1.0", - "web3-core": "1.7.4", - "web3-core-helpers": "1.7.4", - "web3-core-method": "1.7.4", - "web3-core-promievent": "1.7.4", - "web3-core-subscriptions": "1.7.4", - "web3-eth-abi": "1.7.4", - "web3-utils": "1.7.4" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=6 <7 || >=8" } }, - "node_modules/web3-eth-contract/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "node_modules/typechain/node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/web3-eth-contract/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", + "node_modules/typechain/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, - "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" - }, - "engines": { - "node": ">=10.0.0" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/web3-eth-contract/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "node_modules/typechain/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true, - "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" - }, "engines": { - "node": ">=8.0.0" + "node": ">= 4.0.0" } }, - "node_modules/web3-eth-ens": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.7.4.tgz", - "integrity": "sha512-Gw5CVU1+bFXP5RVXTCqJOmHn71X2ghNk9VcEH+9PchLr0PrKbHTA3hySpsPco1WJAyK4t8SNQVlNr3+bJ6/WZA==", + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", "dev": true, "dependencies": { - "content-hash": "^2.5.2", - "eth-ens-namehash": "2.0.8", - "web3-core": "1.7.4", - "web3-core-helpers": "1.7.4", - "web3-core-promievent": "1.7.4", - "web3-eth-abi": "1.7.4", - "web3-eth-contract": "1.7.4", - "web3-utils": "1.7.4" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=8.0.0" + "node": ">= 0.4" } }, - "node_modules/web3-eth-ens/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", "dev": true, "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/web3-eth-ens/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", "dev": true, "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=10.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/web3-eth-ens/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", "dev": true, "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/web3-eth-iban": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.7.4.tgz", - "integrity": "sha512-XyrsgWlZQMv5gRcjXMsNvAoCRvV5wN7YCfFV5+tHUCqN8g9T/o4XUS20vDWD0k4HNiAcWGFqT1nrls02MGZ08w==", + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "dev": true + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", "dev": true, - "dependencies": { - "bn.js": "^5.2.1", - "web3-utils": "1.7.4" + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, "engines": { - "node": ">=8.0.0" + "node": ">=4.2.0" } }, - "node_modules/web3-eth-iban/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "node_modules/typical": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", + "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "engines": { + "node": ">=8" } }, - "node_modules/web3-eth-iban/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", + "node_modules/u3": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/u3/-/u3-0.1.1.tgz", + "integrity": "sha512-+J5D5ir763y+Am/QY6hXNRlwljIeRMZMGs0cT6qqZVVzzT3X3nFPXVyPOFRMOR4kupB0T8JnCdpWdp6Q/iXn3w==", + "optional": true + }, + "node_modules/uglify-js": { + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", "dev": true, - "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" }, "engines": { - "node": ">=10.0.0" + "node": ">=0.8.0" } }, - "node_modules/web3-eth-iban/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" }, - "engines": { - "node": ">=8.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/web3-eth-personal": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.7.4.tgz", - "integrity": "sha512-O10C1Hln5wvLQsDhlhmV58RhXo+GPZ5+W76frSsyIrkJWLtYQTCr5WxHtRC9sMD1idXLqODKKgI2DL+7xeZ0/g==", - "dev": true, + "node_modules/undici": { + "version": "5.29.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", + "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", "dependencies": { - "@types/node": "^12.12.6", - "web3-core": "1.7.4", - "web3-core-helpers": "1.7.4", - "web3-core-method": "1.7.4", - "web3-net": "1.7.4", - "web3-utils": "1.7.4" + "@fastify/busboy": "^2.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=14.0" } }, - "node_modules/web3-eth-personal/node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", - "dev": true - }, - "node_modules/web3-eth-personal/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" }, - "node_modules/web3-eth-personal/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", + "node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", "dev": true, "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" + "unique-slug": "^4.0.0" }, "engines": { - "node": ">=10.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/web3-eth-personal/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", "dev": true, "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "imurmurhash": "^0.1.4" }, "engines": { - "node": ">=8.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/web3-eth/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "node_modules/universal-user-agent": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz", + "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==", + "dev": true + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/web3-eth/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", - "dev": true, - "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" - }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, "engines": { - "node": ">=10.0.0" + "node": ">= 0.8" } }, - "node_modules/web3-eth/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", + "node_modules/upath": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", + "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==", "dev": true, - "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" - }, "engines": { - "node": ">=8.0.0" + "node": ">=4", + "yarn": "*" } }, - "node_modules/web3-net": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.7.4.tgz", - "integrity": "sha512-d2Gj+DIARHvwIdmxFQ4PwAAXZVxYCR2lET0cxz4KXbE5Og3DNjJi+MoPkX+WqoUXqimu/EOd4Cd+7gefqVAFDg==", + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "web3-core": "1.7.4", - "web3-core-method": "1.7.4", - "web3-utils": "1.7.4" + "escalade": "^3.1.1", + "picocolors": "^1.0.0" }, - "engines": { - "node": ">=8.0.0" + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "node_modules/web3-net/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "punycode": "^2.1.0" } }, - "node_modules/web3-net/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", - "dev": true, + "node_modules/utf-8-validate": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", + "integrity": "sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==", + "hasInstallScript": true, + "optional": true, + "peer": true, "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" + "node-gyp-build": "^4.3.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=6.14.2" } }, - "node_modules/web3-net/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", - "dev": true, - "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" - }, - "engines": { - "node": ">=8.0.0" + "node_modules/utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==", + "dev": true + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" } }, - "node_modules/web3-providers-http": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.7.4.tgz", - "integrity": "sha512-AU+/S+49rcogUER99TlhW+UBMk0N2DxvN54CJ2pK7alc2TQ7+cprNPLHJu4KREe8ndV0fT6JtWUfOMyTvl+FRA==", + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/v8-to-istanbul": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", + "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", "dev": true, "dependencies": { - "web3-core-helpers": "1.7.4", - "xhr2-cookies": "1.1.0" + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=10.12.0" } }, - "node_modules/web3-providers-ipc": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.7.4.tgz", - "integrity": "sha512-jhArOZ235dZy8fS8090t60nTxbd1ap92ibQw5xIrAQ9m7LcZKNfmLAQUVsD+3dTFvadRMi6z1vCO7zRi84gWHw==", + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "dependencies": { - "oboe": "2.1.5", - "web3-core-helpers": "1.7.4" - }, - "engines": { - "node": ">=8.0.0" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, - "node_modules/web3-providers-ws": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.7.4.tgz", - "integrity": "sha512-g72X77nrcHMFU8hRzQJzfgi/072n8dHwRCoTw+WQrGp+XCQ71fsk2qIu3Tp+nlp5BPn8bRudQbPblVm2uT4myQ==", + "node_modules/validate-npm-package-name": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", + "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", "dev": true, - "dependencies": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.7.4", - "websocket": "^1.0.32" - }, "engines": { - "node": ">=8.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/web3-providers-ws/node_modules/eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "node_modules/walk-up-path": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", + "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==", "dev": true }, - "node_modules/web3-shh": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.7.4.tgz", - "integrity": "sha512-mlSZxSYcMkuMCxqhTYnZkUdahZ11h+bBv/8TlkXp/IHpEe4/Gg+KAbmfudakq3EzG/04z70XQmPgWcUPrsEJ+A==", + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, - "hasInstallScript": true, "dependencies": { - "web3-core": "1.7.4", - "web3-core-method": "1.7.4", - "web3-core-subscriptions": "1.7.4", - "web3-net": "1.7.4" - }, - "engines": { - "node": ">=8.0.0" + "makeerror": "1.0.12" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" } }, "node_modules/web3-utils": { @@ -31244,100 +27216,11 @@ "@scure/bip39": "1.2.2" } }, - "node_modules/web3/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/web3/node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", - "dev": true, - "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/web3/node_modules/web3-utils": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.4.tgz", - "integrity": "sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA==", - "dev": true, - "dependencies": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, - "node_modules/websocket": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.34.tgz", - "integrity": "sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==", - "dev": true, - "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" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/websocket/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/websocket/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, "node_modules/whatwg-fetch": { "version": "3.6.20", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", @@ -31720,60 +27603,6 @@ } } }, - "node_modules/xhr": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", - "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", - "dev": true, - "dependencies": { - "global": "~4.4.0", - "is-function": "^1.0.1", - "parse-headers": "^2.0.0", - "xtend": "^4.0.0" - } - }, - "node_modules/xhr-request": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", - "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", - "dev": true, - "dependencies": { - "buffer-to-arraybuffer": "^0.0.5", - "object-assign": "^4.1.1", - "query-string": "^5.0.1", - "simple-get": "^2.7.0", - "timed-out": "^4.0.1", - "url-set-query": "^1.0.0", - "xhr": "^2.0.4" - } - }, - "node_modules/xhr-request-promise": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz", - "integrity": "sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==", - "dev": true, - "dependencies": { - "xhr-request": "^1.1.0" - } - }, - "node_modules/xhr2-cookies": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/xhr2-cookies/-/xhr2-cookies-1.1.0.tgz", - "integrity": "sha512-hjXUA6q+jl/bd8ADHcVfFsSPIf+tyLIjuO9TwJC9WI6JP2zKcS7C+p56I9kCLLsaCiNT035iYvEUUzdEFj/8+g==", - "dev": true, - "dependencies": { - "cookiejar": "^2.1.1" - } - }, - "node_modules/xmlhttprequest": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", - "integrity": "sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/xstream": { "version": "11.14.0", "resolved": "https://registry.npmjs.org/xstream/-/xstream-11.14.0.tgz", @@ -31801,15 +27630,6 @@ "node": ">=10" } }, - "node_modules/yaeti": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", - "integrity": "sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==", - "dev": true, - "engines": { - "node": ">=0.10.32" - } - }, "node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", @@ -31971,7 +27791,7 @@ "prettier": "^2.6.2", "prettier-plugin-solidity": "^1.0.0-beta.19", "solhint": "^3.3.7", - "solidity-coverage": "^0.7.21", + "solidity-coverage": "^0.8.14", "ts-jest": "^29.0.3", "typechain": "^8.1.1", "typescript": "^4.7.4" diff --git a/packages/axelar-local-dev/package.json b/packages/axelar-local-dev/package.json index 2e346ea6..dc5c52f6 100644 --- a/packages/axelar-local-dev/package.json +++ b/packages/axelar-local-dev/package.json @@ -65,7 +65,7 @@ "prettier": "^2.6.2", "prettier-plugin-solidity": "^1.0.0-beta.19", "solhint": "^3.3.7", - "solidity-coverage": "^0.7.21", + "solidity-coverage": "^0.8.14", "ts-jest": "^29.0.3", "typechain": "^8.1.1", "typescript": "^4.7.4" From 91251c03fa8b1bd5ee9af7eac46031db5f721a2a Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 10 Apr 2025 10:27:32 +0500 Subject: [PATCH 10/93] chore(deps): update different dependencies --- package-lock.json | 2646 +++++++----------------- packages/axelar-local-dev/package.json | 11 +- 2 files changed, 802 insertions(+), 1855 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4c3d8850..fa8e17f5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -316,25 +316,6 @@ "resolved": "https://registry.npmjs.org/cosmjs-types/-/cosmjs-types-0.9.0.tgz", "integrity": "sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ==" }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/elliptic": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", - "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", - "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" - } - }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", - "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==" - }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/node-addon-api": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", @@ -469,9 +450,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.1.tgz", - "integrity": "sha512-d5guuzMlPeDfZIbpQ8+g1NaCNuAGBBGNECh0HVqz1sjOeVLh2CEaifuOysCH18URW6R7pqXINvf5PaR/dC6jLQ==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.27.0.tgz", + "integrity": "sha512-dtnzmSjXfgL/HDgMcmsLSzyGbEosi4DrGWoCNfuI+W4IkVJw6izpTe7LtOdwAXnkDqw5yweboYCTkM2rQizCng==", "dev": true, "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -483,31 +464,32 @@ }, "peerDependencies": { "@babel/core": "^7.11.0", - "eslint": "^7.5.0 || ^8.0.0" + "eslint": "^7.5.0 || ^8.0.0 || ^9.0.0" } }, "node_modules/@babel/generator": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.1.tgz", - "integrity": "sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", + "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", "dev": true, "dependencies": { - "@babel/types": "^7.24.0", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", - "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -530,19 +512,17 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.1.tgz", - "integrity": "sha512-1yJa9dX9g//V6fDebXoEfEsxkZHk3Hcbm+zLhyu6qVgYFLvmTALTeV+jNU9e5RnYtioBrGEOdoI2joMSNQ/+aA==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.24.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.0.tgz", + "integrity": "sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/helper-replace-supers": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/traverse": "^7.27.0", "semver": "^6.3.1" }, "engines": { @@ -552,75 +532,41 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", - "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz", + "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==", "dev": true, "dependencies": { - "@babel/types": "^7.23.0" + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", "dev": true, "dependencies": { - "@babel/types": "^7.24.0" + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -630,35 +576,35 @@ } }, "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", - "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz", + "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.25.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", - "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz", + "integrity": "sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5" + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/traverse": "^7.26.5" }, "engines": { "node": ">=6.9.0" @@ -667,37 +613,14 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", - "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz", + "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -722,9 +645,9 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", "dev": true, "engines": { "node": ">=6.9.0" @@ -819,12 +742,12 @@ } }, "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", - "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz", + "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -921,12 +844,12 @@ } }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz", - "integrity": "sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz", + "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -936,14 +859,13 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz", - "integrity": "sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz", + "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-simple-access": "^7.22.5" + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -953,15 +875,16 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.1.tgz", - "integrity": "sha512-liYSESjX2fZ7JyBFkYG78nfvHlMKE6IpNdTVnxmlYUR+j5ZLsitFbaAE+eJSK2zPPkNWNw4mXL51rQ8WrvdK0w==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.27.0.tgz", + "integrity": "sha512-fRGGjO2UEGPjvEcyAZXRXAS8AfdaQoq7HnxAbJoAoW10B9xOKesmmndJv+Sym2a+9FHWZ9KbyyLCe9s0Sn5jtg==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.24.1", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/plugin-syntax-typescript": "^7.24.1" + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-create-class-features-plugin": "^7.27.0", + "@babel/helper-plugin-utils": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/plugin-syntax-typescript": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -971,16 +894,16 @@ } }, "node_modules/@babel/preset-typescript": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.24.1.tgz", - "integrity": "sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.27.0.tgz", + "integrity": "sha512-vxaPFfJtHhgeOVXRKuHpHPAOgymmy8V8I65T1q53R7GCZlefKeCaTyDs3zOPHTTbmquvNlQYC5klEvWsBAtrBQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-validator-option": "^7.23.5", - "@babel/plugin-syntax-jsx": "^7.24.1", - "@babel/plugin-transform-modules-commonjs": "^7.24.1", - "@babel/plugin-transform-typescript": "^7.24.1" + "@babel/helper-plugin-utils": "^7.26.5", + "@babel/helper-validator-option": "^7.25.9", + "@babel/plugin-syntax-jsx": "^7.25.9", + "@babel/plugin-transform-modules-commonjs": "^7.26.3", + "@babel/plugin-transform-typescript": "^7.27.0" }, "engines": { "node": ">=6.9.0" @@ -1004,19 +927,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", + "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.24.1", - "@babel/types": "^7.24.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.27.0", + "@babel/parser": "^7.27.0", + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -1043,32 +963,6 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, - "node_modules/@chainsafe/as-sha256": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@chainsafe/as-sha256/-/as-sha256-0.3.1.tgz", - "integrity": "sha512-hldFFYuf49ed7DAakWVXSJODuq3pzJEguD8tQ7h+sGkM18vja+OFoJI9krnGmgzyuZC2ETX0NOIcCTy31v2Mtg==", - "dev": true - }, - "node_modules/@chainsafe/persistent-merkle-tree": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@chainsafe/persistent-merkle-tree/-/persistent-merkle-tree-0.4.2.tgz", - "integrity": "sha512-lLO3ihKPngXLTus/L7WHKaw9PnNJWizlOF1H9NNzHP6Xvh82vzg9F2bzkXhYIFshMZ2gTCEz8tq6STe7r5NDfQ==", - "dev": true, - "dependencies": { - "@chainsafe/as-sha256": "^0.3.1" - } - }, - "node_modules/@chainsafe/ssz": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/@chainsafe/ssz/-/ssz-0.9.4.tgz", - "integrity": "sha512-77Qtg2N1ayqs4Bg/wvnWfg5Bta7iy7IRh8XqXh7oNMeP2HBbBwx8m6yTpA8p0EHItWPEBkgZd5S5/LSlp3GXuQ==", - "dev": true, - "dependencies": { - "@chainsafe/as-sha256": "^0.3.1", - "@chainsafe/persistent-merkle-tree": "^0.4.2", - "case": "^1.6.3" - } - }, "node_modules/@colors/colors": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", @@ -1481,71 +1375,81 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", - "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "node_modules/@eslint/config-array": { + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", + "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", "dev": true, "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" + "@eslint/object-schema": "^2.1.6", + "debug": "^4.3.1", + "minimatch": "^3.1.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.1.tgz", + "integrity": "sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "node_modules/@eslint/core": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", + "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", "dev": true, "dependencies": { - "type-fest": "^0.20.2" + "@types/json-schema": "^7.0.15" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", "dev": true, "engines": { - "node": ">=10" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz", + "integrity": "sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==", + "dev": true, + "dependencies": { + "@eslint/core": "^0.13.0", + "levn": "^0.4.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@eslint/js": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", - "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", + "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, "node_modules/@ethereumjs/rlp": { @@ -2145,25 +2049,6 @@ "hash.js": "1.1.7" } }, - "node_modules/@ethersproject/signing-key/node_modules/elliptic": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", - "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", - "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" - } - }, - "node_modules/@ethersproject/signing-key/node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", - "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==" - }, "node_modules/@ethersproject/solidity": { "version": "5.8.0", "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.8.0.tgz", @@ -2337,18 +2222,39 @@ "node": ">=14" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", - "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" }, "engines": { - "node": ">=10.10.0" + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, "node_modules/@humanwhocodes/module-importer": { @@ -2364,11 +2270,18 @@ "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", - "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", - "dev": true + "node_modules/@humanwhocodes/retry": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz", + "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==", + "dev": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } }, "node_modules/@hutson/parse-repository-url": { "version": "3.0.2", @@ -4419,25 +4332,132 @@ "node": ">= 8" } }, - "node_modules/@nomicfoundation/ethereumjs-block": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-block/-/ethereumjs-block-5.0.2.tgz", - "integrity": "sha512-hSe6CuHI4SsSiWWjHDIzWhSiAVpzMUcDRpWYzN0T9l8/Rz7xNn3elwVOJ/tAyS0LqL6vitUD78Uk7lQDXZun7Q==", + "node_modules/@nomicfoundation/edr": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.8.0.tgz", + "integrity": "sha512-dwWRrghSVBQDpt0wP+6RXD8BMz2i/9TI34TcmZqeEAZuCLei3U9KZRgGTKVAM1rMRvrpf5ROfPqrWNetKVUTag==", "dev": true, "dependencies": { - "@nomicfoundation/ethereumjs-common": "4.0.2", - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "@nomicfoundation/ethereumjs-trie": "6.0.2", - "@nomicfoundation/ethereumjs-tx": "5.0.2", - "@nomicfoundation/ethereumjs-util": "9.0.2", - "ethereum-cryptography": "0.1.3", - "ethers": "^5.7.1" + "@nomicfoundation/edr-darwin-arm64": "0.8.0", + "@nomicfoundation/edr-darwin-x64": "0.8.0", + "@nomicfoundation/edr-linux-arm64-gnu": "0.8.0", + "@nomicfoundation/edr-linux-arm64-musl": "0.8.0", + "@nomicfoundation/edr-linux-x64-gnu": "0.8.0", + "@nomicfoundation/edr-linux-x64-musl": "0.8.0", + "@nomicfoundation/edr-win32-x64-msvc": "0.8.0" }, "engines": { - "node": ">=14" + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-darwin-arm64": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.8.0.tgz", + "integrity": "sha512-sKTmOu/P5YYhxT0ThN2Pe3hmCE/5Ag6K/eYoiavjLWbR7HEb5ZwPu2rC3DpuUk1H+UKJqt7o4/xIgJxqw9wu6A==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-darwin-x64": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.8.0.tgz", + "integrity": "sha512-8ymEtWw1xf1Id1cc42XIeE+9wyo3Dpn9OD/X8GiaMz9R70Ebmj2g+FrbETu8o6UM+aL28sBZQCiCzjlft2yWAg==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-linux-arm64-gnu": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.8.0.tgz", + "integrity": "sha512-h/wWzS2EyQuycz+x/SjMRbyA+QMCCVmotRsgM1WycPARvVZWIVfwRRsKoXKdCftsb3S8NTprqBdJlOmsFyETFA==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-linux-arm64-musl": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.8.0.tgz", + "integrity": "sha512-gnWxDgdkka0O9GpPX/gZT3REeKYV28Guyg13+Vj/bbLpmK1HmGh6Kx+fMhWv+Ht/wEmGDBGMCW1wdyT/CftJaQ==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-linux-x64-gnu": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.8.0.tgz", + "integrity": "sha512-DTMiAkgAx+nyxcxKyxFZk1HPakXXUCgrmei7r5G7kngiggiGp/AUuBBWFHi8xvl2y04GYhro5Wp+KprnLVoAPA==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-linux-x64-musl": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.8.0.tgz", + "integrity": "sha512-iTITWe0Zj8cNqS0xTblmxPbHVWwEtMiDC+Yxwr64d7QBn/1W0ilFQ16J8gB6RVVFU3GpfNyoeg3tUoMpSnrm6Q==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-win32-x64-msvc": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.8.0.tgz", + "integrity": "sha512-mNRDyd/C3j7RMcwapifzv2K57sfA5xOw8g2U84ZDvgSrXVXLC99ZPxn9kmolb+dz8VMm9FONTZz9ESS6v8DTnA==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/ethereumjs-common": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-common/-/ethereumjs-common-4.0.4.tgz", + "integrity": "sha512-9Rgb658lcWsjiicr5GzNCjI1llow/7r0k50dLL95OJ+6iZJcVbi15r3Y0xh2cIO+zgX0WIHcbzIu6FeQf9KPrg==", + "dev": true, + "dependencies": { + "@nomicfoundation/ethereumjs-util": "9.0.4" + } + }, + "node_modules/@nomicfoundation/ethereumjs-rlp": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-rlp/-/ethereumjs-rlp-5.0.4.tgz", + "integrity": "sha512-8H1S3s8F6QueOc/X92SdrA4RDenpiAEqMg5vJH99kcQaCy/a3Q6fgseo75mgWlbanGJXSlAPtnCeG9jvfTYXlw==", + "dev": true, + "bin": { + "rlp": "bin/rlp.cjs" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@nomicfoundation/ethereumjs-tx": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-tx/-/ethereumjs-tx-5.0.4.tgz", + "integrity": "sha512-Xjv8wAKJGMrP1f0n2PeyfFCCojHd7iS3s/Ab7qzF1S64kxZ8Z22LCMynArYsVqiFx6rzYy548HNVEyI+AYN/kw==", + "dev": true, + "dependencies": { + "@nomicfoundation/ethereumjs-common": "4.0.4", + "@nomicfoundation/ethereumjs-rlp": "5.0.4", + "@nomicfoundation/ethereumjs-util": "9.0.4", + "ethereum-cryptography": "0.1.3" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "c-kzg": "^2.1.2" + }, + "peerDependenciesMeta": { + "c-kzg": { + "optional": true + } } }, - "node_modules/@nomicfoundation/ethereumjs-block/node_modules/ethereum-cryptography": { + "node_modules/@nomicfoundation/ethereumjs-tx/node_modules/ethereum-cryptography": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", @@ -4460,304 +4480,25 @@ "setimmediate": "^1.0.5" } }, - "node_modules/@nomicfoundation/ethereumjs-blockchain": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-blockchain/-/ethereumjs-blockchain-7.0.2.tgz", - "integrity": "sha512-8UUsSXJs+MFfIIAKdh3cG16iNmWzWC/91P40sazNvrqhhdR/RtGDlFk2iFTGbBAZPs2+klZVzhRX8m2wvuvz3w==", - "dev": true, - "dependencies": { - "@nomicfoundation/ethereumjs-block": "5.0.2", - "@nomicfoundation/ethereumjs-common": "4.0.2", - "@nomicfoundation/ethereumjs-ethash": "3.0.2", - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "@nomicfoundation/ethereumjs-trie": "6.0.2", - "@nomicfoundation/ethereumjs-tx": "5.0.2", - "@nomicfoundation/ethereumjs-util": "9.0.2", - "abstract-level": "^1.0.3", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "level": "^8.0.0", - "lru-cache": "^5.1.1", - "memory-level": "^1.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@nomicfoundation/ethereumjs-blockchain/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/@nomicfoundation/ethereumjs-common": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-common/-/ethereumjs-common-4.0.2.tgz", - "integrity": "sha512-I2WGP3HMGsOoycSdOTSqIaES0ughQTueOsddJ36aYVpI3SN8YSusgRFLwzDJwRFVIYDKx/iJz0sQ5kBHVgdDwg==", - "dev": true, - "dependencies": { - "@nomicfoundation/ethereumjs-util": "9.0.2", - "crc-32": "^1.2.0" - } - }, - "node_modules/@nomicfoundation/ethereumjs-ethash": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-ethash/-/ethereumjs-ethash-3.0.2.tgz", - "integrity": "sha512-8PfoOQCcIcO9Pylq0Buijuq/O73tmMVURK0OqdjhwqcGHYC2PwhbajDh7GZ55ekB0Px197ajK3PQhpKoiI/UPg==", + "node_modules/@nomicfoundation/ethereumjs-util": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-util/-/ethereumjs-util-9.0.4.tgz", + "integrity": "sha512-sLOzjnSrlx9Bb9EFNtHzK/FJFsfg2re6bsGqinFinH1gCqVfz9YYlXiMWwDM4C/L4ywuHFCYwfKTVr/QHQcU0Q==", "dev": true, "dependencies": { - "@nomicfoundation/ethereumjs-block": "5.0.2", - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "@nomicfoundation/ethereumjs-util": "9.0.2", - "abstract-level": "^1.0.3", - "bigint-crypto-utils": "^3.0.23", + "@nomicfoundation/ethereumjs-rlp": "5.0.4", "ethereum-cryptography": "0.1.3" }, "engines": { - "node": ">=14" - } - }, - "node_modules/@nomicfoundation/ethereumjs-ethash/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/@nomicfoundation/ethereumjs-evm": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-evm/-/ethereumjs-evm-2.0.2.tgz", - "integrity": "sha512-rBLcUaUfANJxyOx9HIdMX6uXGin6lANCulIm/pjMgRqfiCRMZie3WKYxTSd8ZE/d+qT+zTedBF4+VHTdTSePmQ==", - "dev": true, - "dependencies": { - "@ethersproject/providers": "^5.7.1", - "@nomicfoundation/ethereumjs-common": "4.0.2", - "@nomicfoundation/ethereumjs-tx": "5.0.2", - "@nomicfoundation/ethereumjs-util": "9.0.2", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "mcl-wasm": "^0.7.1", - "rustbn.js": "~0.2.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@nomicfoundation/ethereumjs-evm/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/@nomicfoundation/ethereumjs-rlp": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-rlp/-/ethereumjs-rlp-5.0.2.tgz", - "integrity": "sha512-QwmemBc+MMsHJ1P1QvPl8R8p2aPvvVcKBbvHnQOKBpBztEo0omN0eaob6FeZS/e3y9NSe+mfu3nNFBHszqkjTA==", - "dev": true, - "bin": { - "rlp": "bin/rlp" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@nomicfoundation/ethereumjs-statemanager": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-statemanager/-/ethereumjs-statemanager-2.0.2.tgz", - "integrity": "sha512-dlKy5dIXLuDubx8Z74sipciZnJTRSV/uHG48RSijhgm1V7eXYFC567xgKtsKiVZB1ViTP9iFL4B6Je0xD6X2OA==", - "dev": true, - "dependencies": { - "@nomicfoundation/ethereumjs-common": "4.0.2", - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "ethers": "^5.7.1", - "js-sdsl": "^4.1.4" - } - }, - "node_modules/@nomicfoundation/ethereumjs-statemanager/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/@nomicfoundation/ethereumjs-trie": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-trie/-/ethereumjs-trie-6.0.2.tgz", - "integrity": "sha512-yw8vg9hBeLYk4YNg5MrSJ5H55TLOv2FSWUTROtDtTMMmDGROsAu+0tBjiNGTnKRi400M6cEzoFfa89Fc5k8NTQ==", - "dev": true, - "dependencies": { - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "@nomicfoundation/ethereumjs-util": "9.0.2", - "@types/readable-stream": "^2.3.13", - "ethereum-cryptography": "0.1.3", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@nomicfoundation/ethereumjs-trie/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/@nomicfoundation/ethereumjs-tx": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-tx/-/ethereumjs-tx-5.0.2.tgz", - "integrity": "sha512-T+l4/MmTp7VhJeNloMkM+lPU3YMUaXdcXgTGCf8+ZFvV9NYZTRLFekRwlG6/JMmVfIfbrW+dRRJ9A6H5Q/Z64g==", - "dev": true, - "dependencies": { - "@chainsafe/ssz": "^0.9.2", - "@ethersproject/providers": "^5.7.2", - "@nomicfoundation/ethereumjs-common": "4.0.2", - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "@nomicfoundation/ethereumjs-util": "9.0.2", - "ethereum-cryptography": "0.1.3" + "node": ">=18" }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@nomicfoundation/ethereumjs-tx/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/@nomicfoundation/ethereumjs-util": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-util/-/ethereumjs-util-9.0.2.tgz", - "integrity": "sha512-4Wu9D3LykbSBWZo8nJCnzVIYGvGCuyiYLIJa9XXNVt1q1jUzHdB+sJvx95VGCpPkCT+IbLecW6yfzy3E1bQrwQ==", - "dev": true, - "dependencies": { - "@chainsafe/ssz": "^0.10.0", - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "ethereum-cryptography": "0.1.3" + "peerDependencies": { + "c-kzg": "^2.1.2" }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@nomicfoundation/ethereumjs-util/node_modules/@chainsafe/persistent-merkle-tree": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@chainsafe/persistent-merkle-tree/-/persistent-merkle-tree-0.5.0.tgz", - "integrity": "sha512-l0V1b5clxA3iwQLXP40zYjyZYospQLZXzBVIhhr9kDg/1qHZfzzHw0jj4VPBijfYCArZDlPkRi1wZaV2POKeuw==", - "dev": true, - "dependencies": { - "@chainsafe/as-sha256": "^0.3.1" - } - }, - "node_modules/@nomicfoundation/ethereumjs-util/node_modules/@chainsafe/ssz": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@chainsafe/ssz/-/ssz-0.10.2.tgz", - "integrity": "sha512-/NL3Lh8K+0q7A3LsiFq09YXS9fPE+ead2rr7vM2QK8PLzrNsw3uqrif9bpRX5UxgeRjM+vYi+boCM3+GM4ovXg==", - "dev": true, - "dependencies": { - "@chainsafe/as-sha256": "^0.3.1", - "@chainsafe/persistent-merkle-tree": "^0.5.0" + "peerDependenciesMeta": { + "c-kzg": { + "optional": true + } } }, "node_modules/@nomicfoundation/ethereumjs-util/node_modules/ethereum-cryptography": { @@ -4783,53 +4524,6 @@ "setimmediate": "^1.0.5" } }, - "node_modules/@nomicfoundation/ethereumjs-vm": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-vm/-/ethereumjs-vm-7.0.2.tgz", - "integrity": "sha512-Bj3KZT64j54Tcwr7Qm/0jkeZXJMfdcAtRBedou+Hx0dPOSIgqaIr0vvLwP65TpHbak2DmAq+KJbW2KNtIoFwvA==", - "dev": true, - "dependencies": { - "@nomicfoundation/ethereumjs-block": "5.0.2", - "@nomicfoundation/ethereumjs-blockchain": "7.0.2", - "@nomicfoundation/ethereumjs-common": "4.0.2", - "@nomicfoundation/ethereumjs-evm": "2.0.2", - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "@nomicfoundation/ethereumjs-statemanager": "2.0.2", - "@nomicfoundation/ethereumjs-trie": "6.0.2", - "@nomicfoundation/ethereumjs-tx": "5.0.2", - "@nomicfoundation/ethereumjs-util": "9.0.2", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "mcl-wasm": "^0.7.1", - "rustbn.js": "~0.2.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@nomicfoundation/ethereumjs-vm/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, "node_modules/@nomicfoundation/solidity-analyzer": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.1.tgz", @@ -6411,6 +6105,7 @@ "resolved": "https://registry.npmjs.org/@typechain/ethers-v5/-/ethers-v5-10.2.1.tgz", "integrity": "sha512-n3tQmCZjRE6IU4h6lqUGiQ1j866n5MTCBJreNEHHVWXa2u9GJTaeYyU1/k+1qLutkyw+sS6VAN+AbeiTqsxd/A==", "dev": true, + "peer": true, "dependencies": { "lodash": "^4.17.15", "ts-essentials": "^7.0.1" @@ -6540,6 +6235,12 @@ "@types/ms": "*" } }, + "node_modules/@types/estree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "dev": true + }, "node_modules/@types/form-data": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz", @@ -6624,12 +6325,6 @@ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", "devOptional": true }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, "node_modules/@types/jsonfile": { "version": "6.1.4", "resolved": "https://registry.npmjs.org/@types/jsonfile/-/jsonfile-6.1.4.tgz", @@ -6742,16 +6437,6 @@ "integrity": "sha512-5khscbd3SwWMhFqylJBLQ0zIu7c1K6Vz0uBIt915BI3zV0q1nfjRQD3RqSBcPaO6PHEF4ov/t9y89fSiyThlPA==", "dev": true }, - "node_modules/@types/readable-stream": { - "version": "2.3.15", - "resolved": "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-2.3.15.tgz", - "integrity": "sha512-oM5JSKQCcICF1wvGgmecmHldZ48OZamtMxcGGVICOJA8o8cahXC1zEVAif8iwoc5j8etxFaRFnf095+CDsuoFQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "safe-buffer": "~5.1.1" - } - }, "node_modules/@types/responselike": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", @@ -7114,12 +6799,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "dev": true - }, "node_modules/@updated-axelar-network/axelar-gmp-sdk-solidity": { "name": "@axelar-network/axelar-gmp-sdk-solidity", "version": "6.0.4", @@ -7217,28 +6896,10 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/abstract-level": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/abstract-level/-/abstract-level-1.0.4.tgz", - "integrity": "sha512-eUP/6pbXBkMbXFdx4IH2fVgvB7M0JvR7/lIL33zcs0IBcwjdzSSl31TOJsaCzmKSSDF9h8QYSOJux4Nd4YJqFg==", - "dev": true, - "dependencies": { - "buffer": "^6.0.3", - "catering": "^2.1.0", - "is-buffer": "^2.0.5", - "level-supports": "^4.0.0", - "level-transcoder": "^1.0.1", - "module-error": "^1.0.1", - "queue-microtask": "^1.2.3" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -7563,26 +7224,6 @@ "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", "dev": true }, - "node_modules/array-includes": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", - "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", @@ -7601,62 +7242,6 @@ "node": ">=0.10.0" } }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", - "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/arraybuffer.prototype.slice": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", @@ -7997,15 +7582,6 @@ "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", "dev": true }, - "node_modules/bigint-crypto-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/bigint-crypto-utils/-/bigint-crypto-utils-3.3.0.tgz", - "integrity": "sha512-jOTSb+drvEDxEq6OuUybOAv/xxoh3cuYRUIPyu8sSHQNKM303UQ2R1DAo45o1AkcIXw6fzbaFI1+xGGdaXs2lg==", - "dev": true, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/bignumber.js": { "version": "9.1.2", "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz", @@ -8292,18 +7868,6 @@ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" }, - "node_modules/browser-level": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browser-level/-/browser-level-1.0.1.tgz", - "integrity": "sha512-XECYKJ+Dbzw0lbydyQuJzwNXtOpbMSq737qxJN11sIRTErOMShvDpbzTlgju7orJKvx4epULolZAuJGLzCmWRQ==", - "dev": true, - "dependencies": { - "abstract-level": "^1.0.2", - "catering": "^2.1.1", - "module-error": "^1.0.2", - "run-parallel-limit": "^1.1.0" - } - }, "node_modules/browser-stdout": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", @@ -8432,20 +7996,6 @@ "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", "dev": true }, - "node_modules/bufferutil": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.8.tgz", - "integrity": "sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw==", - "hasInstallScript": true, - "optional": true, - "peer": true, - "dependencies": { - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=6.14.2" - } - }, "node_modules/byte-size": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-8.1.1.tgz", @@ -8671,30 +8221,12 @@ "integrity": "sha512-rsJZYVCgXd08sPqwmaIqjAd5SUTfonV0z/gDJ8D6cN8wQphky1kkAYEqQ+hmDxTw7UihvBfjUVUSY+DBEe44jg==", "optional": true }, - "node_modules/case": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/case/-/case-1.6.3.tgz", - "integrity": "sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "dev": true }, - "node_modules/catering": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz", - "integrity": "sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/chai": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", @@ -8834,23 +8366,6 @@ "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", "dev": true }, - "node_modules/classic-level": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/classic-level/-/classic-level-1.4.1.tgz", - "integrity": "sha512-qGx/KJl3bvtOHrGau2WklEZuXhS3zme+jf+fsu6Ej7W7IP/C49v7KNlWIsT1jZu0YnfzSIYDGcEWpCa1wKGWXQ==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "abstract-level": "^1.0.2", - "catering": "^2.1.0", - "module-error": "^1.0.1", - "napi-macros": "^2.2.2", - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", @@ -9172,10 +8687,13 @@ } }, "node_modules/commander": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", - "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==", - "dev": true + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true, + "engines": { + "node": ">= 12" + } }, "node_modules/common-ancestor-path": { "version": "1.0.1", @@ -9986,18 +9504,6 @@ "node": ">= 6.0.0" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/dot-prop": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", @@ -10088,9 +9594,9 @@ "dev": true }, "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", "dependencies": { "bn.js": "^4.11.9", "brorand": "^1.1.0", @@ -10323,15 +9829,6 @@ "node": ">= 0.4" } }, - "node_modules/es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", - "dev": true, - "dependencies": { - "hasown": "^2.0.0" - } - }, "node_modules/es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", @@ -10462,569 +9959,87 @@ "node": ">= 0.8.0" } }, - "node_modules/eslint": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", - "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.0", - "@humanwhocodes/config-array": "^0.11.14", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-prettier": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", - "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", - "dev": true, - "dependencies": { - "get-stdin": "^6.0.0" - }, - "bin": { - "eslint-config-prettier-check": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=3.14.1" + "node": ">=8.0.0" } }, - "node_modules/eslint-config-richardpringle": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-richardpringle/-/eslint-config-richardpringle-2.0.0.tgz", - "integrity": "sha512-c2eaJF76KmvOz1KvQCu5nrHBM1H6qB9Z5aW+RYaw9yQsoELiZ09ms9F7NZdPV4Q15sYV8NEJje9rTwnrbUSX6w==", + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, - "dependencies": { - "eslint-config-prettier": "^6.10.1", - "eslint-config-standard": "^14.1.1", - "eslint-plugin-import": "^2.20.2", - "eslint-plugin-mocha": "^6.3.0", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^4.2.1", - "eslint-plugin-standard": "^4.0.1" + "engines": { + "node": ">=10" } }, - "node_modules/eslint-config-standard": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-14.1.1.tgz", - "integrity": "sha512-Z9B+VR+JIXRxz21udPTL9HpFMyoMUEeX1G251EQ6e05WD9aPVtVBn09XUmZ259wCMlCDmYDSZG62Hhm+ZTJcUg==", + "node_modules/esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", "dev": true, - "peerDependencies": { - "eslint": ">=6.2.2", - "eslint-plugin-import": ">=2.18.0", - "eslint-plugin-node": ">=9.1.0", - "eslint-plugin-promise": ">=4.2.1", - "eslint-plugin-standard": ">=4.0.0" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" } }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "dependencies": { - "ms": "^2.1.1" + "engines": { + "node": ">=4.0" } }, - "node_modules/eslint-module-utils": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", - "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "dependencies": { - "debug": "^3.2.7" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } + "node": ">=4.0" } }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "dependencies": { - "ms": "^2.1.1" + "engines": { + "node": ">=4.0" } }, - "node_modules/eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", - "dev": true, - "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - }, - "engines": { - "node": ">=8.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", - "semver": "^6.3.1", - "tsconfig-paths": "^3.15.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-mocha": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-6.3.0.tgz", - "integrity": "sha512-Cd2roo8caAyG21oKaaNTj7cqeYRWW1I2B5SfpKRp0Ip1gkfwoR1Ow0IGlPWnNjzywdF4n+kHL8/9vM6zCJUxdg==", - "dev": true, - "dependencies": { - "eslint-utils": "^2.0.0", - "ramda": "^0.27.0" - }, - "engines": { - "node": ">=8.0.0" - }, - "peerDependencies": { - "eslint": ">= 4.0.0" - } - }, - "node_modules/eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", - "dev": true, - "dependencies": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" - }, - "engines": { - "node": ">=8.10.0" - }, - "peerDependencies": { - "eslint": ">=5.16.0" - } - }, - "node_modules/eslint-plugin-promise": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.3.1.tgz", - "integrity": "sha512-bY2sGqyptzFBDLh/GMbAxfdJC+b0f23ME63FOE4+Jao0oZ3E1LEwFtWJX/1pGMJLiTtrSSern2CRM/g+dfc0eQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/eslint-plugin-standard": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.1.0.tgz", - "integrity": "sha512-ZL7+QRixjTR6/528YNGyDotyffm5OQst/sGxKDwGb9Uqs4In5Egi4+jbobhqJoyoCM6/7v/1A5fhQ7ScMtDjaQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peerDependencies": { - "eslint": ">=5.0.0" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, "engines": { "node": ">=4.0" @@ -11446,18 +10461,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, "node_modules/filelist": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", @@ -11537,20 +10540,6 @@ "flat": "cli.js" } }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, "node_modules/flatted": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", @@ -11775,12 +10764,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", - "dev": true - }, "node_modules/functions-have-names": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", @@ -15784,15 +14767,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -16121,23 +15095,17 @@ } }, "node_modules/hardhat": { - "version": "2.19.5", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.19.5.tgz", - "integrity": "sha512-vx8R7zWCYVgM56vA6o0Wqx2bIIptkN4TMs9QwDqZVNGRhMzBfzqUeEYbp+69gxWp1neg2V2nYQUaaUv7aom1kw==", + "version": "2.22.19", + "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.22.19.tgz", + "integrity": "sha512-jptJR5o6MCgNbhd7eKa3mrteR+Ggq1exmE5RUL5ydQEVKcZm0sss5laa86yZ0ixIavIvF4zzS7TdGDuyopj0sQ==", "dev": true, "dependencies": { "@ethersproject/abi": "^5.1.2", "@metamask/eth-sig-util": "^4.0.0", - "@nomicfoundation/ethereumjs-block": "5.0.2", - "@nomicfoundation/ethereumjs-blockchain": "7.0.2", - "@nomicfoundation/ethereumjs-common": "4.0.2", - "@nomicfoundation/ethereumjs-evm": "2.0.2", - "@nomicfoundation/ethereumjs-rlp": "5.0.2", - "@nomicfoundation/ethereumjs-statemanager": "2.0.2", - "@nomicfoundation/ethereumjs-trie": "6.0.2", - "@nomicfoundation/ethereumjs-tx": "5.0.2", - "@nomicfoundation/ethereumjs-util": "9.0.2", - "@nomicfoundation/ethereumjs-vm": "7.0.2", + "@nomicfoundation/edr": "^0.8.0", + "@nomicfoundation/ethereumjs-common": "4.0.4", + "@nomicfoundation/ethereumjs-tx": "5.0.4", + "@nomicfoundation/ethereumjs-util": "9.0.4", "@nomicfoundation/solidity-analyzer": "^0.1.0", "@sentry/node": "^5.18.1", "@types/bn.js": "^5.1.0", @@ -16146,31 +15114,32 @@ "aggregate-error": "^3.0.0", "ansi-escapes": "^4.3.0", "boxen": "^5.1.2", - "chalk": "^2.4.2", - "chokidar": "^3.4.0", + "chokidar": "^4.0.0", "ci-info": "^2.0.0", "debug": "^4.1.1", "enquirer": "^2.3.0", "env-paths": "^2.2.0", "ethereum-cryptography": "^1.0.3", "ethereumjs-abi": "^0.6.8", - "find-up": "^2.1.0", + "find-up": "^5.0.0", "fp-ts": "1.19.3", "fs-extra": "^7.0.1", - "glob": "7.2.0", "immutable": "^4.0.0-rc.12", "io-ts": "1.10.4", + "json-stream-stringify": "^3.1.4", "keccak": "^3.0.2", "lodash": "^4.17.11", "mnemonist": "^0.38.0", "mocha": "^10.0.0", "p-map": "^4.0.0", + "picocolors": "^1.1.0", "raw-body": "^2.4.1", "resolve": "1.17.0", "semver": "^6.3.0", - "solc": "0.7.3", + "solc": "0.8.26", "source-map-support": "^0.5.13", "stacktrace-parser": "^0.1.10", + "tinyglobby": "^0.2.6", "tsort": "0.0.1", "undici": "^5.14.0", "uuid": "^8.3.2", @@ -16206,16 +15175,19 @@ "hardhat": "^2.0.2" } }, - "node_modules/hardhat/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", + "node_modules/hardhat/node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", "dev": true, "dependencies": { - "locate-path": "^2.0.0" + "readdirp": "^4.0.1" }, "engines": { - "node": ">=4" + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/hardhat/node_modules/fs-extra": { @@ -16235,65 +15207,23 @@ "node_modules/hardhat/node_modules/jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/hardhat/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/hardhat/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/hardhat/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/hardhat/node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, - "engines": { - "node": ">=4" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/hardhat/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "node_modules/hardhat/node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", "dev": true, "engines": { - "node": ">=4" + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, "node_modules/hardhat/node_modules/resolve": { @@ -17177,29 +16107,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, "node_modules/is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", @@ -17404,15 +16311,6 @@ "node": ">=8" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", @@ -19444,16 +18342,6 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/js-sdsl": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.2.tgz", - "integrity": "sha512-dwXFwByc/ajSV6m5bcKAPwe4yDDF6D614pxmIi5odytzxRlwqF6nwoiCek80Ixc7Cvma5awClxrzFtxCQvcM8w==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, "node_modules/js-sha256": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", @@ -19490,15 +18378,15 @@ "dev": true }, "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/json-bigint": { @@ -19550,6 +18438,15 @@ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, + "node_modules/json-stream-stringify": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz", + "integrity": "sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==", + "dev": true, + "engines": { + "node": ">=7.10.1" + } + }, "node_modules/json-stringify-nice": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz", @@ -19677,15 +18574,6 @@ "node": ">=0.10.0" } }, - "node_modules/klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "integrity": "sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.9" - } - }, "node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -20414,46 +19302,6 @@ "node": ">=12" } }, - "node_modules/level": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/level/-/level-8.0.1.tgz", - "integrity": "sha512-oPBGkheysuw7DmzFQYyFe8NAia5jFLAgEnkgWnK3OXAuJr8qFT+xBQIwokAZPME2bhPFzS8hlYcL16m8UZrtwQ==", - "dev": true, - "dependencies": { - "abstract-level": "^1.0.4", - "browser-level": "^1.0.1", - "classic-level": "^1.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/level" - } - }, - "node_modules/level-supports": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-4.0.1.tgz", - "integrity": "sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/level-transcoder": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-transcoder/-/level-transcoder-1.0.1.tgz", - "integrity": "sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w==", - "dev": true, - "dependencies": { - "buffer": "^6.0.3", - "module-error": "^1.0.1" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -20879,15 +19727,6 @@ "integrity": "sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==", "dev": true }, - "node_modules/mcl-wasm": { - "version": "0.7.9", - "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.7.9.tgz", - "integrity": "sha512-iJIUcQWA88IJB/5L15GnJVnSQJmf/YaxxV6zRavv83HILHaJQb6y0iFyDMdDO0gN8X37tdxmAOrH/P8B6RB8sQ==", - "dev": true, - "engines": { - "node": ">=8.9.0" - } - }, "node_modules/md5.js": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", @@ -20898,20 +19737,6 @@ "safe-buffer": "^5.1.2" } }, - "node_modules/memory-level": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/memory-level/-/memory-level-1.0.0.tgz", - "integrity": "sha512-UXzwewuWeHBz5krr7EvehKcmLFNoXxGcvuYhC41tRnkrTbJohtS7kVn9akmgirtRygg+f7Yjsfi8Uu5SGSQ4Og==", - "dev": true, - "dependencies": { - "abstract-level": "^1.0.0", - "functional-red-black-tree": "^1.0.1", - "module-error": "^1.0.1" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/memorystream": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", @@ -21595,15 +20420,6 @@ "node": ">=0.10.0" } }, - "node_modules/module-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/module-error/-/module-error-1.0.2.tgz", - "integrity": "sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -21657,12 +20473,6 @@ "resolved": "https://registry.npmjs.org/nanoassert/-/nanoassert-1.1.0.tgz", "integrity": "sha512-C40jQ3NzfkP53NsO8kEOFd79p4b9kDXQMwgiY1z8ZwrDZgUyom0AHwGegF4Dm99L+YoYhuaB0ceerUcXmqr1rQ==" }, - "node_modules/napi-macros": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.2.2.tgz", - "integrity": "sha512-hmEVtAGYzVQpCKdbQea4skABsdXW4RUh5t5mJ2zzqowJS2OyXZTU1KhDVFhx+NlWZ4ap9mqR9TcDO3LTTttd+g==", - "dev": true - }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -22686,55 +21496,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/object.fromentries": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.groupby": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", - "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.values": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", - "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/obliterator": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz", @@ -23268,9 +22029,9 @@ } }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true }, "node_modules/picomatch": { @@ -23785,12 +22546,6 @@ "node": ">=8" } }, - "node_modules/ramda": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.2.tgz", - "integrity": "sha512-SbiLPU40JuJniHexQSAgad32hfwd+DRUdwF2PlVuI5RZD0/vahUco7R8vD86J/tcEKKF9vZrUVwgtmGCqlCKyA==", - "dev": true - }, "node_modules/randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -24166,18 +22921,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, "node_modules/req-cwd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/req-cwd/-/req-cwd-2.0.0.tgz", @@ -24338,7 +23081,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "devOptional": true, + "optional": true, "dependencies": { "glob": "^7.1.3" }, @@ -24402,35 +23145,6 @@ "queue-microtask": "^1.2.2" } }, - "node_modules/run-parallel-limit": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.1.0.tgz", - "integrity": "sha512-jJA7irRNM91jaKc3Hcl1npHsFLOXOoTkPCUL1JEa1R82O2miplXXRaGdjW/KM/98YQWDhJLiSs793CnXfblJUw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rustbn.js": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz", - "integrity": "sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==", - "dev": true - }, "node_modules/rxjs": { "version": "7.8.1", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", @@ -24682,27 +23396,6 @@ "node": ">=18.0.0" } }, - "node_modules/secp256k1/node_modules/bn.js": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", - "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==", - "dev": true - }, - "node_modules/secp256k1/node_modules/elliptic": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", - "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", - "dev": true, - "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" - } - }, "node_modules/secp256k1/node_modules/node-addon-api": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", @@ -25079,60 +23772,24 @@ } }, "node_modules/solc": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.7.3.tgz", - "integrity": "sha512-GAsWNAjGzIDg7VxzP6mPjdurby3IkGCjQcM8GFYZT6RyaoUZKmMU6Y7YwG+tFGhv7dwZ8rmR4iwFDrrD99JwqA==", + "version": "0.8.26", + "resolved": "https://registry.npmjs.org/solc/-/solc-0.8.26.tgz", + "integrity": "sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==", "dev": true, "dependencies": { "command-exists": "^1.2.8", - "commander": "3.0.2", + "commander": "^8.1.0", "follow-redirects": "^1.12.1", - "fs-extra": "^0.30.0", "js-sha3": "0.8.0", "memorystream": "^0.3.1", - "require-from-string": "^2.0.0", "semver": "^5.5.0", "tmp": "0.0.33" }, "bin": { - "solcjs": "solcjs" + "solcjs": "solc.js" }, "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/solc/node_modules/fs-extra": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", - "integrity": "sha512-UvSPKyhMn6LEd/WpUaV9C9t3zATuqoqfWc3QdPhPLb58prN9tqYPlPWi8Krxi44loBoUzlobqZ3+8tGpxxSzwA==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0", - "path-is-absolute": "^1.0.0", - "rimraf": "^2.2.8" - } - }, - "node_modules/solc/node_modules/jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/solc/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" + "node": ">=10.0.0" } }, "node_modules/solc/node_modules/semver": { @@ -26317,6 +24974,48 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/tinyglobby": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", + "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", + "dev": true, + "dependencies": { + "fdir": "^6.4.3", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", + "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", + "dev": true, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/tmp": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", @@ -26611,39 +25310,6 @@ "node": ">=0.3.1" } }, - "node_modules/tsconfig-paths": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", - "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/tsconfig-paths/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -27050,20 +25716,6 @@ "punycode": "^2.1.0" } }, - "node_modules/utf-8-validate": { - "version": "5.0.10", - "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", - "integrity": "sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==", - "hasInstallScript": true, - "optional": true, - "peer": true, - "dependencies": { - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=6.14.2" - } - }, "node_modules/utf8": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", @@ -27769,8 +26421,8 @@ "lodash": "^4.17.21" }, "devDependencies": { - "@babel/eslint-parser": "^7.19.1", - "@babel/preset-typescript": "^7.18.6", + "@babel/eslint-parser": "^7.27.0", + "@babel/preset-typescript": "^7.27.0", "@typechain/ethers-v5": "^10.2.0", "@typechain/hardhat": "^6.1.5", "@types/chai": "^4.3.4", @@ -27782,13 +26434,12 @@ "@typescript-eslint/eslint-plugin": "^5.41.0", "@typescript-eslint/parser": "^5.41.0", "chai": "^4.3.6", - "eslint": "^8.17.0", - "eslint-config-richardpringle": "^2.0.0", - "hardhat": "~2.19.1", + "eslint": "^9.24.0", + "hardhat": "^2.22.19", "hardhat-gas-reporter": "^1.0.8", "jest": "^29.2.2", "npm-run-all": "^4.1.5", - "prettier": "^2.6.2", + "prettier": "^3.5.3", "prettier-plugin-solidity": "^1.0.0-beta.19", "solhint": "^3.3.7", "solidity-coverage": "^0.8.14", @@ -27907,6 +26558,55 @@ "node": ">=18" } }, + "packages/axelar-local-dev/node_modules/@eslint/eslintrc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "packages/axelar-local-dev/node_modules/@eslint/js": { + "version": "9.24.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.24.0.tgz", + "integrity": "sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "packages/axelar-local-dev/node_modules/@typechain/ethers-v5": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@typechain/ethers-v5/-/ethers-v5-11.1.2.tgz", + "integrity": "sha512-ID6pqWkao54EuUQa0P5RgjvfA3MYqxUQKpbGKERbsjBW5Ra7EIXvbMlPp2pcP5IAdUkyMCFYsP2SN5q7mPdLDQ==", + "dev": true, + "dependencies": { + "lodash": "^4.17.15", + "ts-essentials": "^7.0.1" + }, + "peerDependencies": { + "@ethersproject/abi": "^5.0.0", + "@ethersproject/providers": "^5.0.0", + "ethers": "^5.1.3", + "typechain": "^8.3.2", + "typescript": ">=4.3.0" + } + }, "packages/axelar-local-dev/node_modules/@types/node": { "version": "18.19.3", "dev": true, @@ -27914,6 +26614,254 @@ "dependencies": { "undici-types": "~5.26.4" } + }, + "packages/axelar-local-dev/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "packages/axelar-local-dev/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "packages/axelar-local-dev/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "packages/axelar-local-dev/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "packages/axelar-local-dev/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "packages/axelar-local-dev/node_modules/eslint": { + "version": "9.24.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.24.0.tgz", + "integrity": "sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.20.0", + "@eslint/config-helpers": "^0.2.0", + "@eslint/core": "^0.12.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.24.0", + "@eslint/plugin-kit": "^0.2.7", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.3.0", + "eslint-visitor-keys": "^4.2.0", + "espree": "^10.3.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "packages/axelar-local-dev/node_modules/eslint-scope": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", + "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "packages/axelar-local-dev/node_modules/eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "packages/axelar-local-dev/node_modules/espree": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", + "dev": true, + "dependencies": { + "acorn": "^8.14.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "packages/axelar-local-dev/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "packages/axelar-local-dev/node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "packages/axelar-local-dev/node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "packages/axelar-local-dev/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "packages/axelar-local-dev/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "packages/axelar-local-dev/node_modules/prettier": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", + "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", + "dev": true, + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "packages/axelar-local-dev/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } } } } diff --git a/packages/axelar-local-dev/package.json b/packages/axelar-local-dev/package.json index dc5c52f6..649ed6e5 100644 --- a/packages/axelar-local-dev/package.json +++ b/packages/axelar-local-dev/package.json @@ -43,8 +43,8 @@ "lodash": "^4.17.21" }, "devDependencies": { - "@babel/eslint-parser": "^7.19.1", - "@babel/preset-typescript": "^7.18.6", + "@babel/eslint-parser": "^7.27.0", + "@babel/preset-typescript": "^7.27.0", "@typechain/ethers-v5": "^10.2.0", "@typechain/hardhat": "^6.1.5", "@types/chai": "^4.3.4", @@ -56,13 +56,12 @@ "@typescript-eslint/eslint-plugin": "^5.41.0", "@typescript-eslint/parser": "^5.41.0", "chai": "^4.3.6", - "eslint": "^8.17.0", - "eslint-config-richardpringle": "^2.0.0", - "hardhat": "~2.19.1", + "eslint": "^9.24.0", + "hardhat": "^2.22.19", "hardhat-gas-reporter": "^1.0.8", "jest": "^29.2.2", "npm-run-all": "^4.1.5", - "prettier": "^2.6.2", + "prettier": "^3.5.3", "prettier-plugin-solidity": "^1.0.0-beta.19", "solhint": "^3.3.7", "solidity-coverage": "^0.8.14", From 53a2546475be57f307e98bedb25e1dc151e31a81 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 10 Apr 2025 10:33:35 +0500 Subject: [PATCH 11/93] chore(deps): update jest --- package-lock.json | 67 +++++++++---------- packages/axelar-local-dev-cosmos/package.json | 4 +- 2 files changed, 34 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index fa8e17f5..83261ae0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25174,28 +25174,31 @@ } }, "node_modules/ts-jest": { - "version": "29.1.2", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.2.tgz", - "integrity": "sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==", + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.3.1.tgz", + "integrity": "sha512-FT2PIRtZABwl6+ZCry8IY7JZ3xMuppsEV9qFVHOVe8jDzggwUZ9TsM4chyJxL9yi6LvkqcZYU3LmapEE454zBQ==", "dev": true, "dependencies": { - "bs-logger": "0.x", - "fast-json-stable-stringify": "2.x", + "bs-logger": "^0.2.6", + "ejs": "^3.1.10", + "fast-json-stable-stringify": "^2.1.0", "jest-util": "^29.0.0", "json5": "^2.2.3", - "lodash.memoize": "4.x", - "make-error": "1.x", - "semver": "^7.5.3", - "yargs-parser": "^21.0.1" + "lodash.memoize": "^4.1.2", + "make-error": "^1.3.6", + "semver": "^7.7.1", + "type-fest": "^4.38.0", + "yargs-parser": "^21.1.1" }, "bin": { "ts-jest": "cli.js" }, "engines": { - "node": "^16.10.0 || ^18.0.0 || >=20.0.0" + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" }, "peerDependencies": { "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0", "@jest/types": "^29.0.0", "babel-jest": "^29.0.0", "jest": "^29.0.0", @@ -25205,6 +25208,9 @@ "@babel/core": { "optional": true }, + "@jest/transform": { + "optional": true + }, "@jest/types": { "optional": true }, @@ -25216,26 +25222,11 @@ } } }, - "node_modules/ts-jest/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/ts-jest/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -25243,11 +25234,17 @@ "node": ">=10" } }, - "node_modules/ts-jest/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/ts-jest/node_modules/type-fest": { + "version": "4.39.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.39.1.tgz", + "integrity": "sha512-uW9qzd66uyHYxwyVBYiwS4Oi0qZyUqwjU+Oevr6ZogYiXt99EOYtwvzMSLw1c3lYo2HzJsep/NB23iEVEgjG/w==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/ts-jest/node_modules/yargs-parser": { "version": "21.1.1", @@ -26486,8 +26483,8 @@ "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "jest": "^29.7.0", - "ts-jest": "^29.1.1", - "ts-node": "^10.9.1" + "ts-jest": "^29.3.1", + "ts-node": "^10.9.2" } }, "packages/axelar-local-dev-cosmos/node_modules/bech32": { diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index ae79e2ce..279554c9 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -43,8 +43,8 @@ "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "@types/node-fetch": "^2.6.5", "jest": "^29.7.0", - "ts-jest": "^29.1.1", - "ts-node": "^10.9.1" + "ts-jest": "^29.3.1", + "ts-node": "^10.9.2" }, "gitHead": "39d77bf2128077a615e6d3a5a4caf55e79f53b70" } From 4684f20437c3664c3078bb90eb266dea8246de48 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 10 Apr 2025 11:27:10 +0500 Subject: [PATCH 12/93] fix(docker-compose): simplify entrypoint and command syntax to compact string format --- .../docker/agoric/bin/init_agoric.sh | 2 +- .../docker/agoric/docker-compose.yaml | 35 +++++++++---------- .../docker/axelar/docker-compose.yaml | 33 +++++++++-------- .../docker/traefik/docker-compose.yaml | 15 ++------ 4 files changed, 36 insertions(+), 49 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh index e6d34ab4..f13e5fa5 100755 --- a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh +++ b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh @@ -8,5 +8,5 @@ HOME=/root/private/.agoric # Removing the existing directory to start with a clean slate rm -rf ${HOME}/* mnemonic="soap hub stick bomb dish index wing shield cruel board siren force glory assault rotate busy area topple resource okay clown wedding hint unhappy" -echo ${mnemonic} | tr -d "\n" > ${HOME}/mnemonic.txt +echo ${mnemonic} | tr -d "\n" >${HOME}/mnemonic.txt echo "Added new key 'owner'" diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml index ed7f9039..3b3faa9d 100644 --- a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml @@ -1,32 +1,29 @@ -version: "3.8" services: agoric: image: ghcr.io/agoric/agoric-3-proposals:latest container_name: agoric - entrypoint: ["/bin/sh", "-c", "/root/private/bin/init_agoric.sh && exec \"$@\"", "--"] - command: ["/bin/bash", "-c", "./start_agd.sh"] - # entrypoint: "/root/private/bin/init_agoric.sh && /bin/bash -c ./start_agd.sh" + entrypoint: /bin/bash -c "/root/private/bin/init_agoric.sh && exec ./start_agd.sh" volumes: - - "./bin:/root/private/bin" - - "./.agoric:/root/private/.agoric" + - './bin:/root/private/bin' + - './.agoric:/root/private/.agoric' labels: - - "traefik.enable=true" + - 'traefik.enable=true' # RPC - - "traefik.http.routers.agoric-rpc.rule=Host(`localhost`) && PathPrefix(`/agoric-rpc`)" - - "traefik.http.routers.agoric-rpc.entrypoints=web" - - "traefik.http.routers.agoric-rpc.service=agoric-rpc" - - "traefik.http.services.agoric-rpc.loadbalancer.server.port=26657" - - "traefik.http.middlewares.agoric-rpc.stripprefix.prefixes=/agoric-rpc" - - "traefik.http.routers.agoric-rpc.middlewares=agoric-rpc" + - 'traefik.http.routers.agoric-rpc.rule=Host(`localhost`) && PathPrefix(`/agoric-rpc`)' + - 'traefik.http.routers.agoric-rpc.entrypoints=web' + - 'traefik.http.routers.agoric-rpc.service=agoric-rpc' + - 'traefik.http.services.agoric-rpc.loadbalancer.server.port=26657' + - 'traefik.http.middlewares.agoric-rpc.stripprefix.prefixes=/agoric-rpc' + - 'traefik.http.routers.agoric-rpc.middlewares=agoric-rpc' # LCD - - "traefik.http.routers.agoric-lcd.rule=Host(`localhost`) && PathPrefix(`/agoric-lcd`)" - - "traefik.http.routers.agoric-lcd.entrypoints=web" - - "traefik.http.routers.agoric-lcd.service=agoric-lcd" - - "traefik.http.services.agoric-lcd.loadbalancer.server.port=1317" - - "traefik.http.middlewares.agoric-lcd.stripprefix.prefixes=/agoric-lcd" - - "traefik.http.routers.agoric-lcd.middlewares=agoric-lcd" + - 'traefik.http.routers.agoric-lcd.rule=Host(`localhost`) && PathPrefix(`/agoric-lcd`)' + - 'traefik.http.routers.agoric-lcd.entrypoints=web' + - 'traefik.http.routers.agoric-lcd.service=agoric-lcd' + - 'traefik.http.services.agoric-lcd.loadbalancer.server.port=1317' + - 'traefik.http.middlewares.agoric-lcd.stripprefix.prefixes=/agoric-lcd' + - 'traefik.http.routers.agoric-lcd.middlewares=agoric-lcd' networks: default: name: traefik_default diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml index 15f79428..0fe5e24e 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml @@ -1,30 +1,29 @@ -version: "3.8" services: axelar: build: . container_name: axelar - entrypoint: ["sh", "-l", "-c", "/root/private/bin/init_axelar.sh"] + entrypoint: sh -l -c /root/private/bin/init_axelar.sh volumes: - - "./bin:/root/private/bin" - - "./.axelar:/root/private/.axelar" + - './bin:/root/private/bin' + - './.axelar:/root/private/.axelar' labels: - - "traefik.enable=true" + - 'traefik.enable=true' # RPC - - "traefik.http.routers.axelar-rpc.rule=Host(`localhost`) && PathPrefix(`/axelar-rpc`)" - - "traefik.http.services.axelar-rpc.loadbalancer.server.port=26657" - - "traefik.http.routers.axelar-rpc.entrypoints=web" - - "traefik.http.routers.axelar-rpc.service=axelar-rpc" - - "traefik.http.middlewares.axelar-rpc.stripprefix.prefixes=/axelar-rpc" - - "traefik.http.routers.axelar-rpc.middlewares=axelar-rpc" + - 'traefik.http.routers.axelar-rpc.rule=Host(`localhost`) && PathPrefix(`/axelar-rpc`)' + - 'traefik.http.services.axelar-rpc.loadbalancer.server.port=26657' + - 'traefik.http.routers.axelar-rpc.entrypoints=web' + - 'traefik.http.routers.axelar-rpc.service=axelar-rpc' + - 'traefik.http.middlewares.axelar-rpc.stripprefix.prefixes=/axelar-rpc' + - 'traefik.http.routers.axelar-rpc.middlewares=axelar-rpc' # LCD - - "traefik.http.routers.axelar-lcd.rule=Host(`localhost`) && PathPrefix(`/axelar-lcd`)" - - "traefik.http.services.axelar-lcd.loadbalancer.server.port=1317" - - "traefik.http.routers.axelar-lcd.entrypoints=web" - - "traefik.http.routers.axelar-lcd.service=axelar-lcd" - - "traefik.http.middlewares.axelar-lcd.stripprefix.prefixes=/axelar-lcd" - - "traefik.http.routers.axelar-lcd.middlewares=axelar-lcd" + - 'traefik.http.routers.axelar-lcd.rule=Host(`localhost`) && PathPrefix(`/axelar-lcd`)' + - 'traefik.http.services.axelar-lcd.loadbalancer.server.port=1317' + - 'traefik.http.routers.axelar-lcd.entrypoints=web' + - 'traefik.http.routers.axelar-lcd.service=axelar-lcd' + - 'traefik.http.middlewares.axelar-lcd.stripprefix.prefixes=/axelar-lcd' + - 'traefik.http.routers.axelar-lcd.middlewares=axelar-lcd' networks: default: name: traefik_default diff --git a/packages/axelar-local-dev-cosmos/docker/traefik/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/traefik/docker-compose.yaml index 6638c1dc..358aa815 100644 --- a/packages/axelar-local-dev-cosmos/docker/traefik/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/traefik/docker-compose.yaml @@ -1,21 +1,12 @@ -version: "3" services: traefik: - # The official v2 Traefik docker image image: traefik:v2.10 container_name: traefik - # Enables the web UI and tells Traefik to listen to docker - command: - - --api.insecure=true - - --providers.docker=true - - --entrypoints.web.address=:80 + command: --api.insecure=true --providers.docker=true --entrypoints.web.address=:80 ports: - # The HTTP port - - "80:80" - # The Web UI (enabled by --api.insecure=true) - - "28080:8080" + - '80:80' + - '28080:8080' volumes: - # So that Traefik can listen to the Docker events - /var/run/docker.sock:/var/run/docker.sock networks: default: From 10ecb04b607598c39825607c0e68d8ebb325051f Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Fri, 14 Mar 2025 14:49:27 +0500 Subject: [PATCH 13/93] updated relayer to transfer messages from evm to agoric --- package-lock.json | 41 ++++++ .../docker/axelar/bin/init_axelar.sh | 50 +++++++- .../docker/axelar/docker-compose.yaml | 1 + .../axelar-local-dev-cosmos/hardhat.config.js | 2 +- packages/axelar-local-dev-cosmos/package.json | 11 +- .../axelar-local-dev-cosmos/scripts/clean.sh | 3 + .../scripts/relayFromEth.ts | 3 + .../axelar-local-dev-cosmos/src/Command.ts | 69 ++++++++-- .../src/__tests__/contracts/Factory.sol | 121 ++++++++++++++++++ .../__tests__/contracts/StakingContract.sol | 41 ++++++ .../src/clients/cosmos/CosmosClient.ts | 20 ++- .../src/relayFromEth.ts | 69 ++++++++++ .../src/services/AxelarRelayerService.ts | 18 ++- packages/axelar-local-dev-cosmos/src/utils.ts | 115 ++++++++++++++++- .../axelar-local-dev/src/relay/EvmRelayer.ts | 4 +- 15 files changed, 530 insertions(+), 38 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts create mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol create mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol create mode 100644 packages/axelar-local-dev-cosmos/src/relayFromEth.ts diff --git a/package-lock.json b/package-lock.json index 83261ae0..feb5eb6f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -376,6 +376,15 @@ "resolved": "packages/axelar-local-dev-sui", "link": true }, + "node_modules/@axelar-network/axelarjs-types": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@axelar-network/axelarjs-types/-/axelarjs-types-1.2.1.tgz", + "integrity": "sha512-GHFsdg8MNYXOyN7/muA9FGWpI/fFBDjlE8WaKCuHlANaf+R95oelPY9gCmF3qq3qJdOakD62t2PUKLVDWYbFYA==", + "dependencies": { + "long": "^4.0.0", + "protobufjs": "~6.11.2" + } + }, "node_modules/@axelar-network/interchain-token-service": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/@axelar-network/interchain-token-service/-/interchain-token-service-1.2.4.tgz", @@ -5650,6 +5659,36 @@ "ws": "*" } }, + "node_modules/@openzeppelin/contracts": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.2.0.tgz", + "integrity": "sha512-bxjNie5z89W1Ea0NZLZluFh8PrFNn9DH8DQlujEok2yjsOlraUPKID5p1Wk3qdNbf6XkQ1Os2RvfiHrrXLHWKA==", + "dev": true + }, + "node_modules/@parcel/watcher": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.0.4.tgz", + "integrity": "sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "node-addon-api": "^3.2.1", + "node-gyp-build": "^4.3.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher/node_modules/node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", + "dev": true + }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", @@ -26467,6 +26506,7 @@ "license": "ISC", "dependencies": { "@axelar-network/axelar-local-dev": "^2.3.2", + "@axelar-network/axelarjs-types": "^1.2.1", "@confio/relayer": "^0.10.0", "@cosmjs/cosmwasm-stargate": "^0.31.1", "@cosmjs/stargate": "^0.31.1", @@ -26480,6 +26520,7 @@ }, "devDependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "^5.6.2", + "@openzeppelin/contracts": "^5.2.0", "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "jest": "^29.7.0", diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh b/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh index 226572f7..b10ce83f 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh +++ b/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh @@ -21,6 +21,13 @@ sed -i '/\[api\]/,/\[/ s/swagger = false/swagger = true/' "$HOME"/config/app.tom # staking/governance token is hardcoded in config, change this sed -i "s/\"stake\"/\"$DENOM\"/" "$HOME"/config/genesis.json && echo "Updated staking token to $DENOM" +# Counter for poll number, which is reset when chain is restarted +echo '0' > $HOME/poll-counter.txt +chmod 666 $HOME/poll-counter.txt + +mnemonic="sunset proud calm real denial process fish coconut sad glass toward duty argue aisle rack arrive bleak suffer invest general animal lift swarm front" +gov1_mnemonic="smile unveil sketch gaze length bulb goddess street case exact table fetch robust chronic power choice endorse toward pledge dish access sad illegal dance" + final_output=$( jq '.app_state.nexus.chain_states += [{ @@ -52,6 +59,10 @@ final_output=$( }, "activated": false, "assets": [ + { + "denom": "ubld", + "is_native_asset": false + }, { "denom": "uausdc", "is_native_asset": false @@ -63,17 +74,50 @@ final_output=$( [{ "denom": "uausdc", "is_native_asset": false - }]') + }, + { + "denom": "ubld", + "is_native_asset": false + }]' | jq '.app_state.evm.chains[0].gateway.address = + [ + 65, 97, 201, 20, 243, 101, + 90, 90, 204, 118, 189, 175, + 227, 219, 229, 192, 249, 71, + 75, 200 + ] + ' | jq '.app_state.snapshot.proxied_validators += + [{ + "validator": "axelarvaloper1sufx2ryp5ndxdhl3zftdnsjwrgqqgd3q63svql", + "proxy": "axelar1kcreerqvlvtful5r6hp8nt7mj4fd0z0rq9mxk5", + "active": true + }] + ' | jq '.app_state.feegrant.allowances += + [{ + "granter": "axelar1sufx2ryp5ndxdhl3zftdnsjwrgqqgd3q6sxfjs", + "grantee": "axelar1kcreerqvlvtful5r6hp8nt7mj4fd0z0rq9mxk5", + "allowance": { + "@type": "/cosmos.feegrant.v1beta1.BasicAllowance", + "expiration": null, + "spend_limit": [{ + "denom": "uaxl", + "amount": "10000000000000000000000000000000000000000000000000" + }] + } + }] + ') + echo $final_output | jq . > "$HOME"/config/genesis.json +cat "$HOME"/config/genesis.json + # Adding a new key named 'owner' with a test keyring-backend in the specified home directory # and storing the mnemonic in the mnemonic.txt file -mnemonic=$(axelard keys add owner ${DEFAULT_KEYS_FLAGS} 2>&1 | tail -n 1) +echo ${mnemonic} | axelard keys add owner --recover ${DEFAULT_KEYS_FLAGS} 2>&1 | tail -n 1 echo ${mnemonic} | tr -d "\n" > ${HOME}/mnemonic.txt echo "Added new key 'owner'" -gov1_mnemonic=$(axelard keys add gov1 ${DEFAULT_KEYS_FLAGS} 2>&1 | tail -n 1) +echo ${gov1_mnemonic} | axelard keys add gov1 --recover ${DEFAULT_KEYS_FLAGS} 2>&1 | tail -n 1 echo ${gov1_mnemonic} | tr -d "\n" > ${HOME}/mnemonic-gov1.txt echo "Added new key 'gov1'" diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml index 0fe5e24e..c9ebc7fc 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml @@ -3,6 +3,7 @@ services: build: . container_name: axelar entrypoint: sh -l -c /root/private/bin/init_axelar.sh + platform: linux/amd64 volumes: - './bin:/root/private/bin' - './.axelar:/root/private/.axelar' diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.js b/packages/axelar-local-dev-cosmos/hardhat.config.js index a099681f..4a80b4d6 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.js +++ b/packages/axelar-local-dev-cosmos/hardhat.config.js @@ -5,7 +5,7 @@ require("solidity-coverage"); */ module.exports = { solidity: { - version: "0.8.9", + version: "0.8.20", settings: { evmVersion: process.env.EVM_VERSION || "london", optimizer: { diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index 279554c9..ad96e7e4 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -20,10 +20,12 @@ "start": "./scripts/clean.sh && ts-node scripts/start.ts", "stop": "ts-node scripts/stop.ts", "relay": "ts-node scripts/relay.ts", - "relayWithTokens": "ts-node scripts/relayWithTokens.ts" + "relayWithTokens": "ts-node scripts/relayWithTokens.ts", + "relayFromEth": "ts-node scripts/relayFromEth.ts" }, "dependencies": { "@axelar-network/axelar-local-dev": "^2.3.2", + "@axelar-network/axelarjs-types": "^1.2.1", "@confio/relayer": "^0.10.0", "@cosmjs/cosmwasm-stargate": "^0.31.1", "@cosmjs/stargate": "^0.31.1", @@ -40,11 +42,12 @@ "description": "", "devDependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "^5.6.2", - "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "@types/node-fetch": "^2.6.5", + "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "jest": "^29.7.0", - "ts-jest": "^29.3.1", - "ts-node": "^10.9.2" + "@openzeppelin/contracts": "^5.2.0", + "ts-jest": "^29.1.1", + "ts-node": "^10.9.1" }, "gitHead": "39d77bf2128077a615e6d3a5a4caf55e79f53b70" } diff --git a/packages/axelar-local-dev-cosmos/scripts/clean.sh b/packages/axelar-local-dev-cosmos/scripts/clean.sh index be95ff08..d30bec5a 100755 --- a/packages/axelar-local-dev-cosmos/scripts/clean.sh +++ b/packages/axelar-local-dev-cosmos/scripts/clean.sh @@ -5,3 +5,6 @@ DIR="$(dirname "$0")" # Remove the directory relative to the script's location rm -rf "$DIR/../info" + +docker kill $(docker ps -aq) > /dev/null 2>&1 || true +docker rm $(docker ps -aq) > /dev/null 2>&1 || true diff --git a/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts b/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts new file mode 100644 index 00000000..bc165e45 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts @@ -0,0 +1,3 @@ +import { relayDataFromEth } from "../src/relayFromEth"; + +relayDataFromEth(); diff --git a/packages/axelar-local-dev-cosmos/src/Command.ts b/packages/axelar-local-dev-cosmos/src/Command.ts index 59c26292..750e227f 100644 --- a/packages/axelar-local-dev-cosmos/src/Command.ts +++ b/packages/axelar-local-dev-cosmos/src/Command.ts @@ -3,7 +3,13 @@ import { ethers } from "ethers"; const { defaultAbiCoder } = ethers.utils; import { CallContractArgs, RelayData } from "@axelar-network/axelar-local-dev"; -import { decodeVersionedPayload } from "./utils"; +import { + decodeVersionedPayload, + getConfirmGatewayTxPayload, + getRouteMessagePayload, + getVoteRequestPayload, + incrementPollCounter, +} from "./utils"; import { CosmosClient } from "./clients"; //An internal class for handling axelar commands. @@ -49,26 +55,61 @@ export class Command { ], [], async (wasmClient: CosmosClient) => { - const { argNames, argValues, methodName } = decodeVersionedPayload( - args.payload - ); const { client } = wasmClient; const senderAddress = wasmClient.getOwnerAccount(); - const msg = { - [methodName]: { - [argNames[0]]: argValues[0], - [argNames[1]]: argValues[1], - [argNames[2]]: argValues[2], - }, - }; + // Confirm that event has fired on the EVM chain + const confirmGatewayTxPayload = getConfirmGatewayTxPayload( + senderAddress, + args.from, + args.transactionHash + ); + const confirmGatewayTxResponse = await client.signAndBroadcast( + senderAddress, + confirmGatewayTxPayload, + "auto" + ); + + // Vote on the poll created by the axelar (normally done by the validator) + const pollId = await incrementPollCounter(); + const voteRequestPayload = getVoteRequestPayload( + wasmClient.getOwnerAccount(), + args, + confirmGatewayTxResponse, + pollId + ); + const VoteRequestResponse = await wasmClient.client.signAndBroadcast( + wasmClient.getOwnerAccount(), + voteRequestPayload, + "auto" + ); + + // Route the message created by the poll to the destination chain + const eventId = VoteRequestResponse.events + .find((e: any) => e.type === "axelar.evm.v1beta1.EVMEventConfirmed") + ?.attributes.find((a: any) => a.key === "event_id") + ?.value.slice(1, -1); + + if (!eventId) { + throw new Error("Event ID not found in EVMEventConfirmed event"); + } - const tx = "TODO" + const routeMessagePayload = getRouteMessagePayload( + wasmClient.getOwnerAccount(), + args, + eventId + ); + const routeMessageResponse = await wasmClient.client.signAndBroadcast( + wasmClient.getOwnerAccount(), + routeMessagePayload, + "auto" + ); - // relayData.callContract[commandId].execution = tx.transactionHash; + relayData.callContract[commandId].execution = + routeMessageResponse.transactionHash; - return tx; + return routeMessageResponse; }, "wasm" ); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol new file mode 100644 index 00000000..f1d2e775 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -0,0 +1,121 @@ +// Factory Contract +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.0; + +import { AxelarExecutable } from "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol"; +import { AxelarExecutableWithToken } from '@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol'; +import { StakingContract } from 'src/__tests__/contracts/StakingContract.sol'; +import { IERC20 } from '@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol'; + +contract Wallet is AxelarExecutableWithToken { + string owner; + + struct Message { + string sender; + string message; + } + + Message public storedMessage; // message received from _execute + + constructor( + address gateway_, + string memory owner_ + ) AxelarExecutableWithToken(gateway_) { + owner = owner_; + storedMessage = Message('s', 'f'); + } + + function _execute( + bytes32 commandId, + string calldata sourceChain, + string calldata sourceAddress, + bytes calldata payload + ) internal override { + storedMessage = Message(sourceChain, 'f'); + } + + function _executeWithToken( + bytes32 commandId, + string calldata sourceChain, + string calldata sourceAddress, + bytes calldata payload, + string calldata tokenSymbol, + uint256 amount + ) internal override { + // Decode the payload: expect two arrays of equal length. + // (address[] memory targets, bytes[] memory callDatas) = abi.decode(payload, (address[], bytes[])); + // require(targets.length == callDatas.length, "Payload length mismatch"); + + // // storedMessage = Message('fraz', toAsciiString(targets[0])); + // // Loop over each command and execute the call. + // for (uint256 i = 0; i < targets.length; i++) { + // (bool success, ) = targets[i].call(callDatas[i]); + // require(success, "Command execution failed"); + // } + + + + address stakingAddress = abi.decode(payload, (address)); + + require(amount > 0, "Deposit amount must be greater than zero"); + address tokenAddress = gatewayWithToken().tokenAddresses(tokenSymbol); + storedMessage = Message(tokenSymbol, 'f'); + + IERC20(tokenAddress).transfer(address(this), amount); // Transfer tokens from user + IERC20(tokenAddress).approve(stakingAddress, amount); // Approve Aave Pool + + StakingContract(stakingAddress).stake(amount); // Deposit into Aave + + } + +} + +contract Factory is AxelarExecutable { + address _gateway; + + struct Message { + string sender; + } + + Message public storedMessage; // message received from _execute + + constructor( + address gateway_ + ) AxelarExecutable(gateway_) { + _gateway = gateway_; + } + + function createVendor(string memory owner) public { + address newVendorAddress = address(new Wallet(_gateway, owner)); + string memory newVendor = toAsciiString(newVendorAddress); + + storedMessage = Message(newVendor); + } + + function _execute( + string calldata /*sourceChain*/, + string calldata sourceAddress, + bytes calldata payload + ) internal override { + // storedMessage = Message(sender, message); + + createVendor(sourceAddress); + } + + function toAsciiString(address x) internal pure returns (string memory) { + bytes memory s = new bytes(40); + for (uint i = 0; i < 20; i++) { + bytes1 b = bytes1(uint8(uint(uint160(x)) / (2**(8*(19 - i))))); + bytes1 hi = bytes1(uint8(b) / 16); + bytes1 lo = bytes1(uint8(b) - 16 * uint8(hi)); + s[2*i] = char(hi); + s[2*i+1] = char(lo); + } + return string(s); + } + + function char(bytes1 b) internal pure returns (bytes1 c) { + if (uint8(b) < 10) return bytes1(uint8(b) + 0x30); + else return bytes1(uint8(b) + 0x57); + } +} \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol new file mode 100644 index 00000000..67797ed8 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol @@ -0,0 +1,41 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.0; + +import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; + +contract StakingContract is ERC20 { + IERC20 public stakingToken; + uint256 public totalStaked; + + mapping(address => uint256) public stakedBalances; + + constructor(address _stakingToken) ERC20("StakeToken", "STK") { + stakingToken = IERC20(_stakingToken); + } + + function stake(uint256 _amount) external { + require(_amount > 0, "Cannot stake 0 tokens"); + + stakingToken.transferFrom(msg.sender, address(this), _amount); + stakedBalances[msg.sender] += _amount; + totalStaked += _amount; + + _mint(msg.sender, _amount); + } + + function unstake(uint256 _amount) external { + require(_amount > 0, "Cannot unstake 0 tokens"); + require(stakedBalances[msg.sender] >= _amount, "Insufficient staked balance"); + + stakedBalances[msg.sender] -= _amount; + totalStaked -= _amount; + + _burn(msg.sender, _amount); + stakingToken.transfer(msg.sender, _amount); + } + + function stakedBalanceOf(address _account) external view returns (uint256) { + return stakedBalances[_account]; + } +} diff --git a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts index 0d5a756c..84e40f17 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts @@ -4,6 +4,17 @@ import { SigningStargateClient } from '@cosmjs/stargate'; import { CosmosChain, CosmosChainInfo } from '../../types'; import { exportOwnerAccountFromContainer, readFileSync } from '../../utils'; import { stringToPath } from '@cosmjs/crypto'; +import { Registry } from "@cosmjs/proto-signing"; +import { defaultRegistryTypes } from "@cosmjs/stargate"; +import { + ConfirmGatewayTxRequest as EvmConfirmGatewayTxRequest, +} from '@axelar-network/axelarjs-types/axelar/evm/v1beta1/tx'; +import { + VoteRequest, +} from '@axelar-network/axelarjs-types/axelar/vote/v1beta1/tx'; +import { + RouteMessageRequest, +} from '@axelar-network/axelarjs-types/axelar/axelarnet/v1beta1/tx'; export class CosmosClient { public chainInfo: Required; @@ -82,11 +93,16 @@ export class CosmosClient { const address = await owner .getAccounts() .then((accounts) => accounts[0].address); - + const registry = new Registry([ + ...defaultRegistryTypes, + ["/axelar.evm.v1beta1.ConfirmGatewayTxRequest", EvmConfirmGatewayTxRequest], + ["/axelar.vote.v1beta1.VoteRequest", VoteRequest], + ["/axelar.axelarnet.v1beta1.RouteMessageRequest", RouteMessageRequest], + ]); const client = await SigningStargateClient.connectWithSigner( chainInfo.rpcUrl, owner, - { gasPrice: gasPrice } + { gasPrice: gasPrice, registry } ); return new CosmosClient( diff --git a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts new file mode 100644 index 00000000..1cca12ab --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts @@ -0,0 +1,69 @@ +import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; +import { encode, decode } from "@metamask/abi-utils"; +import { Contract, ethers } from "ethers"; +import { encodeVersionedPayload } from "./utils"; + +import { + evmRelayer, + createNetwork, + deployContract, + relay, + RelayerType, +} from "@axelar-network/axelar-local-dev"; +import { AxelarGateway } from "@axelar-network/axelar-local-dev/dist/contracts"; + +export const relayDataFromEth = async () => { + const axelarRelayer = await AxelarRelayerService.create( + defaultAxelarChainInfo + ); + + const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); + const WalletContract = require("../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json"); + const StakeContract = require("../artifacts/src/__tests__/contracts/StakingContract.sol/StakingContract.json"); + + const ethereumNetwork = await createNetwork({ name: "Ethereum" }); + const ethereumContract = await deployContract( + ethereumNetwork.userWallets[0], + Factory, + [ethereumNetwork.gateway.address] + ); + + const gatewayContract = new Contract( + ethereumNetwork.gateway.address, + AxelarGateway.abi, + ethereumNetwork.ownerWallet + ); + const encoder = ethers.utils.defaultAbiCoder; + const message = encode(["string"], ["fraz"]); + const payloadArguments = encode( + ["string", "string", "bytes"], + ["Ethereum", "0x0830c9d8f05D1dcAE3406102420C29bBb287C199", message] + ); + const cosmwasmPayload = encoder.encode( + ["string", "string[]", "string[]", "bytes"], + [ + "receive_message_evm", + ["source_chain", "source_address", "payload"], + ["string", "string", "bytes"], + payloadArguments, + ] + ); + console.log(cosmwasmPayload); + const encodedPayload = encodeVersionedPayload(0, cosmwasmPayload); + await gatewayContract.callContract( + "agoric", + // + "agoric1c9gyu460lu70rtcdp95vummd6032psmpdx7wdy", + Array.from(encodedPayload) + ); + + evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); + await relay({ + evm: evmRelayer, + }); + + await relay({ + agoric: axelarRelayer, + }); + await axelarRelayer.stopListening(); +}; diff --git a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts index ec88b7a7..46f08409 100644 --- a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts @@ -21,18 +21,18 @@ import { IBCRelayerService } from "./IBCRelayerService"; export class AxelarRelayerService extends Relayer { private axelarListener: AxelarListener; - private wasmClient: CosmosClient; + public axelarClient: CosmosClient; private listened = false; public ibcRelayer: IBCRelayerService; private constructor( axelarListener: AxelarListener, - wasmClient: CosmosClient, + axelarClient: CosmosClient, ibcRelayer: IBCRelayerService ) { super(); this.axelarListener = axelarListener; - this.wasmClient = wasmClient; + this.axelarClient = axelarClient; this.ibcRelayer = ibcRelayer; } @@ -41,11 +41,11 @@ export class AxelarRelayerService extends Relayer { ibcRelayer?: IBCRelayerService ) { const axelarListener = new AxelarListener(axelarConfig); - const wasmClient = await CosmosClient.create("agoric"); + const axelarClient = await CosmosClient.create("axelar", "smile unveil sketch gaze length bulb goddess street case exact table fetch robust chronic power choice endorse toward pledge dish access sad illegal dance"); const _ibcRelayer = ibcRelayer || (await IBCRelayerService.create()); await _ibcRelayer.createIBCChannelIfNeeded(); - return new AxelarRelayerService(axelarListener, wasmClient, _ibcRelayer); + return new AxelarRelayerService(axelarListener, axelarClient, _ibcRelayer); } async updateEvents() { @@ -104,7 +104,7 @@ export class AxelarRelayerService extends Relayer { if (command.post == null) continue; try { - await command.post(this.wasmClient); + await command.post(this.axelarClient); } catch (e) { logger.log(e); } @@ -183,7 +183,11 @@ export class AxelarRelayerService extends Relayer { ) { const tokenMap: {[key:string]: string} = { 'uausdc': 'aUSDC', - } + 'ubld': 'aUSDC', + } + if (!tokenMap[event.args.symbol]) { + throw new Error('Token not supported yet'); + } const { args } = event; const contractCallWithTokenArgs: CallContractWithTokenArgs = { diff --git a/packages/axelar-local-dev-cosmos/src/utils.ts b/packages/axelar-local-dev-cosmos/src/utils.ts index 0ab939ef..59504fb7 100644 --- a/packages/axelar-local-dev-cosmos/src/utils.ts +++ b/packages/axelar-local-dev-cosmos/src/utils.ts @@ -1,15 +1,23 @@ import { hexZeroPad, - toUtf8Bytes, hexlify, defaultAbiCoder, arrayify, } from "ethers/lib/utils"; import crypto from "crypto"; -import fs from "fs"; +import fs, { promises as fsp } from "fs"; import { bech32 } from "bech32"; import { CosmosChain } from "./types"; - +import { toAccAddress } from "@cosmjs/stargate/build/queryclient/utils"; +import { ConfirmGatewayTxRequest as EvmConfirmGatewayTxRequest } from "@axelar-network/axelarjs-types/axelar/evm/v1beta1/tx"; +import { VoteRequest } from "@axelar-network/axelarjs-types/axelar/vote/v1beta1/tx"; +import { RouteMessageRequest } from "@axelar-network/axelarjs-types/axelar/axelarnet/v1beta1/tx"; +import { + Event_Status, + VoteEvents, +} from "@axelar-network/axelarjs-types/axelar/evm/v1beta1/types"; +import { DeliverTxResponse } from "@cosmjs/stargate"; +import { CallContractArgs } from "@axelar-network/axelar-local-dev"; import path from "path"; import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; import { Path } from "./path"; @@ -46,8 +54,7 @@ export function encodeVersionedPayload( payload: string ): Uint8Array { const versionHex = hexZeroPad(hexlify(version), 4); - const payloadString = hexlify(toUtf8Bytes(JSON.stringify(payload))); - return arrayify(versionHex.concat(payloadString)); + return arrayify(versionHex.concat(payload.substring(2))); } export async function exportOwnerAccountFromContainer( @@ -117,3 +124,101 @@ export function convertCosmosAddress(address: string, prefix: string) { const decoded = bech32.decode(address); return bech32.encode(prefix, decoded.words); } + +export const getConfirmGatewayTxPayload = ( + sender: string, + chain: string, + txHash: string +) => { + return [ + { + typeUrl: `/axelar.evm.v1beta1.ConfirmGatewayTxRequest`, + value: EvmConfirmGatewayTxRequest.fromPartial({ + sender: toAccAddress(sender), + chain, + txId: arrayify(txHash), + }), + }, + ]; +}; + +export const incrementPollCounter = async () => { + const filePath = path.join( + __dirname, + "../docker/axelar/.axelar/poll-counter.txt" + ); + let number = null; + try { + const data = await fsp.readFile(filePath, "utf8"); + number = parseInt(data.trim(), 10); + if (isNaN(number)) { + throw new Error("The file does not contain a valid number."); + } + await fsp.writeFile(filePath, (number + 1).toString(), "utf8"); + } catch (error: any) { + throw new Error(`Error reading or writing file: ${error.message}`); + } + return number; +}; + +export const getVoteRequestPayload = ( + sender: string, + callContractArgs: CallContractArgs, + confirmGatewayTx: DeliverTxResponse, + pollId: number +) => { + const event = { + chain: callContractArgs.from, + txId: arrayify(`0x${confirmGatewayTx.transactionHash}`), + index: confirmGatewayTx.txIndex, + status: Event_Status.STATUS_UNSPECIFIED, + contractCall: { + sender: arrayify(callContractArgs.sourceAddress), + destinationChain: callContractArgs.to, + contractAddress: callContractArgs.destinationContractAddress, + payloadHash: arrayify(callContractArgs.payloadHash), + }, + }; + + const voteEvents = VoteEvents.encode( + VoteEvents.fromPartial({ + chain: callContractArgs.from, + events: [event], + }) + ).finish(); + + return [ + { + typeUrl: `/axelar.vote.v1beta1.VoteRequest`, + value: VoteRequest.fromPartial({ + sender: toAccAddress(sender), + pollId: pollId, + vote: { + typeUrl: "/axelar.evm.v1beta1.VoteEvents", + value: voteEvents, + }, + }), + }, + ]; +}; + +export const getRouteMessagePayload = ( + sender: string, + callContractArgs: CallContractArgs, + eventId: string +) => { + return [ + { + typeUrl: `/axelar.axelarnet.v1beta1.RouteMessageRequest`, + value: RouteMessageRequest.fromPartial({ + sender: toAccAddress(sender), + id: eventId, + payload: arrayify(callContractArgs.payload), + feegranter: toAccAddress( + // Address of gov1 wallet in the axelar chain + "axelar1sufx2ryp5ndxdhl3zftdnsjwrgqqgd3q6sxfjs" + ), + }), + }, + ]; +}; diff --git a/packages/axelar-local-dev/src/relay/EvmRelayer.ts b/packages/axelar-local-dev/src/relay/EvmRelayer.ts index 319cea58..2760bb34 100644 --- a/packages/axelar-local-dev/src/relay/EvmRelayer.ts +++ b/packages/axelar-local-dev/src/relay/EvmRelayer.ts @@ -426,8 +426,8 @@ export class EvmRelayer extends Relayer { command = this.otherRelayers?.near?.createCallContractCommand(commandId, this.relayData, contractCallArgs); } else if (args.destinationChain.toLowerCase() === 'sui') { command = this.otherRelayers?.sui?.createCallContractCommand(commandId, this.relayData, contractCallArgs); - } else if (args.destinationChain.toLowerCase() === 'wasm') { - command = this.otherRelayers?.wasm?.createCallContractCommand(commandId, this.relayData, contractCallArgs); + } else if (args.destinationChain.toLowerCase() === 'agoric') { + command = this.otherRelayers?.agoric?.createCallContractCommand(commandId, this.relayData, contractCallArgs); } else { command = this.createCallContractCommand(commandId, this.relayData, contractCallArgs); } From 11bf34152ccf487773f0b50d76cd0ad0cbf373c1 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Tue, 18 Mar 2025 19:34:51 +0500 Subject: [PATCH 14/93] test --- package-lock.json | 16 ++ packages/axelar-local-dev-cosmos/package.json | 3 +- .../src/__tests__/contracts/Factory.sol | 89 ++++++++++- .../src/relayFromEth.ts | 146 ++++++++++++++---- 4 files changed, 218 insertions(+), 36 deletions(-) diff --git a/package-lock.json b/package-lock.json index feb5eb6f..0dd654a2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18381,6 +18381,21 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, + "node_modules/js-base64": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.7.tgz", + "integrity": "sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==" + }, + "node_modules/js-sdsl": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.2.tgz", + "integrity": "sha512-dwXFwByc/ajSV6m5bcKAPwe4yDDF6D614pxmIi5odytzxRlwqF6nwoiCek80Ixc7Cvma5awClxrzFtxCQvcM8w==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, "node_modules/js-sha256": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", @@ -26514,6 +26529,7 @@ "@types/sinon": "^17.0.2", "bech32": "^2.0.0", "docker-compose": "^0.24.3", + "js-base64": "^3.7.7", "node-fetch": "^2.7.0", "reconnecting-websocket": "^4.4.0", "sinon": "^17.0.1" diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index ad96e7e4..be6296d8 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -33,6 +33,7 @@ "@types/sinon": "^17.0.2", "bech32": "^2.0.0", "docker-compose": "^0.24.3", + "js-base64": "^3.7.7", "node-fetch": "^2.7.0", "reconnecting-websocket": "^4.4.0", "sinon": "^17.0.1" @@ -42,10 +43,10 @@ "description": "", "devDependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "^5.6.2", + "@openzeppelin/contracts": "^5.2.0", "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "jest": "^29.7.0", - "@openzeppelin/contracts": "^5.2.0", "ts-jest": "^29.1.1", "ts-node": "^10.9.1" }, diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index f1d2e775..369551a3 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -4,8 +4,10 @@ pragma solidity ^0.8.0; import { AxelarExecutable } from "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol"; import { AxelarExecutableWithToken } from '@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol'; +import {IAxelarGasService} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol"; import { StakingContract } from 'src/__tests__/contracts/StakingContract.sol'; import { IERC20 } from '@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol'; +import {StringToAddress, AddressToString} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol"; contract Wallet is AxelarExecutableWithToken { string owner; @@ -71,35 +73,45 @@ contract Wallet is AxelarExecutableWithToken { } contract Factory is AxelarExecutable { + using StringToAddress for string; + using AddressToString for address; + address _gateway; + IAxelarGasService public immutable gasService; + string public chainName; // name of the chain this contract is deployed to struct Message { - string sender; + address sender; } Message public storedMessage; // message received from _execute constructor( - address gateway_ + address gateway_, + address gasReceiver_, + string memory chainName_ ) AxelarExecutable(gateway_) { + gasService = IAxelarGasService(gasReceiver_); _gateway = gateway_; + chainName = chainName_; } - function createVendor(string memory owner) public { + function createVendor(string memory owner) public returns (address) { address newVendorAddress = address(new Wallet(_gateway, owner)); string memory newVendor = toAsciiString(newVendorAddress); - storedMessage = Message(newVendor); + storedMessage = Message(newVendorAddress); + return newVendorAddress; } function _execute( - string calldata /*sourceChain*/, + string calldata sourceChain, string calldata sourceAddress, bytes calldata payload ) internal override { // storedMessage = Message(sender, message); - - createVendor(sourceAddress); + address vendorAddress = createVendor(sourceAddress); + _send(sourceChain, sourceAddress, vendorAddress); } function toAsciiString(address x) internal pure returns (string memory) { @@ -118,4 +130,67 @@ contract Factory is AxelarExecutable { if (uint8(b) < 10) return bytes1(uint8(b) + 0x30); else return bytes1(uint8(b) + 0x57); } + + + function _send( + string calldata destinationChain, + string calldata destinationAddress, + address message + ) internal { + // 1. Generate GMP payload + bytes memory executeMsgPayload = abi.encode( + message + ); + bytes memory payload = abi.encodePacked(bytes4(0x00000000), executeMsgPayload); + + // 2. Pay for gas + gasService.payNativeGasForContractCall{value: msg.value}( + address(this), + destinationChain, + "agoric1fmajpxpsrqyncyh4xduj9jsh3fcl820jwx3ce0rv5n6g2l4ddvss56we2y", + payload, + msg.sender + ); + + // 3. Make GMP call + gateway.callContract(destinationChain, "agoric1fmajpxpsrqyncyh4xduj9jsh3fcl820jwx3ce0rv5n6g2l4ddvss56we2y", payload); + } + + function _encodePayload( + bytes memory executeMsgPayload + ) internal view returns (bytes memory) { + // Schema + // bytes4 version number (0x00000001) + // bytes ABI-encoded payload, indicating function name and arguments: + // string CosmWasm contract method name + // dynamic array of string CosmWasm contract argument name array + // dynamic array of string argument abi type array + // bytes abi encoded argument values + + // contract call arguments for ExecuteMsg::receive_message_evm{ source_chain, source_address, payload } + bytes memory argValues = abi.encode( + chainName, + address(this).toString(), + executeMsgPayload + ); + + string[] memory argumentNameArray = new string[](3); + argumentNameArray[0] = "source_chain"; + argumentNameArray[1] = "source_address"; + argumentNameArray[2] = "payload"; + + string[] memory abiTypeArray = new string[](3); + abiTypeArray[0] = "string"; + abiTypeArray[1] = "string"; + abiTypeArray[2] = "bytes"; + + bytes memory gmpPayload; + gmpPayload = abi.encode( + "receive_message_evm", + argumentNameArray, + abiTypeArray, + argValues + ); + + } } \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts index 1cca12ab..9153d46b 100644 --- a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts @@ -2,6 +2,8 @@ import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; import { encode, decode } from "@metamask/abi-utils"; import { Contract, ethers } from "ethers"; import { encodeVersionedPayload } from "./utils"; +import { encode as b64encode, decode as b64decode } from 'js-base64'; +import { SigningStargateClient } from '@cosmjs/stargate'; import { evmRelayer, @@ -25,39 +27,126 @@ export const relayDataFromEth = async () => { const ethereumContract = await deployContract( ethereumNetwork.userWallets[0], Factory, - [ethereumNetwork.gateway.address] - ); - - const gatewayContract = new Contract( - ethereumNetwork.gateway.address, - AxelarGateway.abi, - ethereumNetwork.ownerWallet - ); - const encoder = ethers.utils.defaultAbiCoder; - const message = encode(["string"], ["fraz"]); - const payloadArguments = encode( - ["string", "string", "bytes"], - ["Ethereum", "0x0830c9d8f05D1dcAE3406102420C29bBb287C199", message] - ); - const cosmwasmPayload = encoder.encode( - ["string", "string[]", "string[]", "bytes"], - [ - "receive_message_evm", - ["source_chain", "source_address", "payload"], - ["string", "string", "bytes"], - payloadArguments, + [ethereumNetwork.gateway.address, + ethereumNetwork.gasService.address, + 'Ethereum', ] ); - console.log(cosmwasmPayload); - const encodedPayload = encodeVersionedPayload(0, cosmwasmPayload); - await gatewayContract.callContract( - "agoric", - // - "agoric1c9gyu460lu70rtcdp95vummd6032psmpdx7wdy", - Array.from(encodedPayload) + + console.log('Ethereum Contract Address:', ethereumContract.address); + + // const gatewayContract = new Contract( + // ethereumNetwork.gateway.address, + // AxelarGateway.abi, + // ethereumNetwork.ownerWallet + // ); + // const encoder = ethers.utils.defaultAbiCoder; + // const message = encode(["string"], ["fraz"]); + // const payloadArguments = encode( + // ["string", "string", "bytes"], + // ["Ethereum", "0x0830c9d8f05D1dcAE3406102420C29bBb287C199", message] + // ); + // const cosmwasmPayload = encoder.encode( + // ["string", "string[]", "string[]", "bytes"], + // [ + // "receive_message_evm", + // ["source_chain", "source_address", "payload"], + // ["string", "string", "bytes"], + // payloadArguments, + // ] + // ); + + // const object = { + // "fraz": "fraz", + // } + // const encodedObj = '0x' + Buffer.from(JSON.stringify(object)).toString('hex'); + // const encodedPayload = encodeVersionedPayload(0, encodedObj); + // console.log(encodedPayload) + // await gatewayContract.callContract( + // "agoric", + // // + // "agoric1rwwley550k9mmk6uq6mm6z4udrg8kyuyvfszjk", + // Array.from(encodedPayload) + // ); + + + const ibcRelayer = axelarRelayer.ibcRelayer; + + const IBC_DENOM_AXL_USDC = + 'ubld'; + // 'ibc/295548A78785A1007F232DE286149A6FF512F180AF5657780FC89C009E2C348F'; + const AMOUNT_IN_ATOMIC_UNITS = '1000000'; + const CHANNEL_ID = ibcRelayer.srcChannelId; + const DENOM = 'ubld'; + const AXELAR_GMP_ADDRESS = + 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5'; + + const signer = ibcRelayer.wasmClient; + const senderAddress = 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl'; + + // TODO + const DESTINATION_ADDRESS = ethereumContract.address; + const DESTINATION_CHAIN = 'Ethereum'; + + const payload = encode(['string', 'string'], ['agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', 'Hello, world!']); + + const memo = { + destination_chain: DESTINATION_CHAIN, + destination_address: DESTINATION_ADDRESS, + payload: [], + fee: { + amount: '8000', + recipient: 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5', + }, + type: 1, + }; + + const message = [ + { + typeUrl: '/ibc.applications.transfer.v1.MsgTransfer', + value: { + sender: senderAddress, + receiver: AXELAR_GMP_ADDRESS, + token: { + denom: IBC_DENOM_AXL_USDC, + amount: AMOUNT_IN_ATOMIC_UNITS, + }, + timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, + sourceChannel: CHANNEL_ID, + sourcePort: 'transfer', + memo: JSON.stringify(memo), + }, + }, + ]; + + + const fee = { + gas: '250000', + amount: [{ denom: DENOM, amount: '30000' }], + }; + + console.log('Preparing to send tokens...'); + const signingClient = await SigningStargateClient.connectWithSigner( + 'http://localhost/agoric-rpc', + signer.owner ); + const response = await signingClient.signAndBroadcast( + senderAddress, + message, + fee + ); evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); + + await relay({ + agoric: axelarRelayer, + }); + await axelarRelayer.stopListening(); + + + const ethereumMessage = await ethereumContract.storedMessage(); + console.log('Message on Ethereum Contract:', ethereumMessage); + await relay({ evm: evmRelayer, }); @@ -65,5 +154,6 @@ export const relayDataFromEth = async () => { await relay({ agoric: axelarRelayer, }); + await axelarRelayer.stopListening(); }; From 5777950dce6af666106833daae7ab45bb91624e7 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Wed, 19 Mar 2025 12:14:57 +0500 Subject: [PATCH 15/93] fix --- .../src/__tests__/contracts/Factory.sol | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 369551a3..610e30fa 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -147,13 +147,13 @@ contract Factory is AxelarExecutable { gasService.payNativeGasForContractCall{value: msg.value}( address(this), destinationChain, - "agoric1fmajpxpsrqyncyh4xduj9jsh3fcl820jwx3ce0rv5n6g2l4ddvss56we2y", + destinationAddress, payload, msg.sender ); // 3. Make GMP call - gateway.callContract(destinationChain, "agoric1fmajpxpsrqyncyh4xduj9jsh3fcl820jwx3ce0rv5n6g2l4ddvss56we2y", payload); + gateway.callContract(destinationChain, destinationAddress, payload); } function _encodePayload( From abd8a512503c6cf6281c8e2e7988b5d912b0df13 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Fri, 21 Mar 2025 10:43:38 +0500 Subject: [PATCH 16/93] continous relaying --- packages/axelar-local-dev-cosmos/package.json | 1 + .../axelar-local-dev-cosmos/scripts/relay.ts | 4 +- .../scripts/relayToEth.ts | 3 ++ .../axelar-local-dev-cosmos/src/Command.ts | 20 ++++++---- packages/axelar-local-dev-cosmos/src/relay.ts | 38 +++++++++++++++++++ 5 files changed, 56 insertions(+), 10 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/scripts/relayToEth.ts create mode 100644 packages/axelar-local-dev-cosmos/src/relay.ts diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index be6296d8..f9bc7a88 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -20,6 +20,7 @@ "start": "./scripts/clean.sh && ts-node scripts/start.ts", "stop": "ts-node scripts/stop.ts", "relay": "ts-node scripts/relay.ts", + "relayToEth": "ts-node scripts/relayToEth.ts", "relayWithTokens": "ts-node scripts/relayWithTokens.ts", "relayFromEth": "ts-node scripts/relayFromEth.ts" }, diff --git a/packages/axelar-local-dev-cosmos/scripts/relay.ts b/packages/axelar-local-dev-cosmos/scripts/relay.ts index a8dc8fcd..ceafce96 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relay.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relay.ts @@ -1,3 +1,3 @@ -import { relayDataToEth } from "../src/relayToEth"; +import { relayBasic } from "../src/relay"; -relayDataToEth(); +relayBasic(); diff --git a/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts b/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts new file mode 100644 index 00000000..a8dc8fcd --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts @@ -0,0 +1,3 @@ +import { relayDataToEth } from "../src/relayToEth"; + +relayDataToEth(); diff --git a/packages/axelar-local-dev-cosmos/src/Command.ts b/packages/axelar-local-dev-cosmos/src/Command.ts index 750e227f..0c259a44 100644 --- a/packages/axelar-local-dev-cosmos/src/Command.ts +++ b/packages/axelar-local-dev-cosmos/src/Command.ts @@ -60,6 +60,7 @@ export class Command { const senderAddress = wasmClient.getOwnerAccount(); // Confirm that event has fired on the EVM chain + console.log("[Ethereum Relayer]", "Confirming Gateway Tx", args.transactionHash); const confirmGatewayTxPayload = getConfirmGatewayTxPayload( senderAddress, args.from, @@ -70,9 +71,10 @@ export class Command { confirmGatewayTxPayload, "auto" ); - + // Vote on the poll created by the axelar (normally done by the validator) const pollId = await incrementPollCounter(); + console.log("[Ethereum Relayer]", "Voting on poll", pollId); const voteRequestPayload = getVoteRequestPayload( wasmClient.getOwnerAccount(), args, @@ -84,17 +86,18 @@ export class Command { voteRequestPayload, "auto" ); - + // Route the message created by the poll to the destination chain const eventId = VoteRequestResponse.events - .find((e: any) => e.type === "axelar.evm.v1beta1.EVMEventConfirmed") - ?.attributes.find((a: any) => a.key === "event_id") - ?.value.slice(1, -1); - + .find((e: any) => e.type === "axelar.evm.v1beta1.EVMEventConfirmed") + ?.attributes.find((a: any) => a.key === "event_id") + ?.value.slice(1, -1); + if (!eventId) { throw new Error("Event ID not found in EVMEventConfirmed event"); } - + + console.log("[Ethereum Relayer]", "Routing event", eventId); const routeMessagePayload = getRouteMessagePayload( wasmClient.getOwnerAccount(), args, @@ -105,7 +108,8 @@ export class Command { routeMessagePayload, "auto" ); - + console.log("[Ethereum Relayer]", "Event routed to agoric", routeMessageResponse.transactionHash); + relayData.callContract[commandId].execution = routeMessageResponse.transactionHash; diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts new file mode 100644 index 00000000..016308f3 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -0,0 +1,38 @@ +import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; +import { + evmRelayer, + createNetwork, + deployContract, + relay, + RelayerType, +} from "@axelar-network/axelar-local-dev"; + +export const relayBasic = async () => { + const axelarRelayer = await AxelarRelayerService.create( + defaultAxelarChainInfo + ); + + const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); + + const ethereumNetwork = await createNetwork({ name: "Ethereum" }); + const ethereumContract = await deployContract( + ethereumNetwork.userWallets[0], + Factory, + [ethereumNetwork.gateway.address, + ethereumNetwork.gasService.address, + 'Ethereum', + ] + ); + + console.log('Ethereum Contract Address:', ethereumContract.address); + + evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); + + while (true) { + await relay({ + agoric: axelarRelayer, + evm: evmRelayer, + }); + + } +}; From 8cf9472fd3349fd0a63311b50f26b432679d41c3 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Wed, 26 Mar 2025 20:19:36 +0500 Subject: [PATCH 17/93] updated wallet contract to run arbitrary calls --- package-lock.json | 1 + packages/axelar-local-dev-cosmos/package.json | 1 + .../src/__tests__/contracts/Factory.sol | 8 +- packages/axelar-local-dev-cosmos/src/relay.ts | 11 +- .../src/relayFromEth.ts | 105 ++++++++++-------- 5 files changed, 75 insertions(+), 51 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0dd654a2..a89b26b0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26530,6 +26530,7 @@ "bech32": "^2.0.0", "docker-compose": "^0.24.3", "js-base64": "^3.7.7", + "keccak": "^3.0.4", "node-fetch": "^2.7.0", "reconnecting-websocket": "^4.4.0", "sinon": "^17.0.1" diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index f9bc7a88..7d3f33d1 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -35,6 +35,7 @@ "bech32": "^2.0.0", "docker-compose": "^0.24.3", "js-base64": "^3.7.7", + "keccak": "^3.0.4", "node-fetch": "^2.7.0", "reconnecting-websocket": "^4.4.0", "sinon": "^17.0.1" diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 610e30fa..4488a46e 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -33,7 +33,13 @@ contract Wallet is AxelarExecutableWithToken { string calldata sourceAddress, bytes calldata payload ) internal override { - storedMessage = Message(sourceChain, 'f'); + (address[] memory targets, bytes[] memory data) = abi.decode(payload, (address[], bytes[])); + require(targets.length == data.length, "Payload length mismatch"); + + for (uint256 i = 0; i < targets.length; i++) { + (bool success, ) = targets[i].call(data[i]); + require(success, "Arbitrary contract execution failed"); + } } function _executeWithToken( diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts index 016308f3..ff35f5ff 100644 --- a/packages/axelar-local-dev-cosmos/src/relay.ts +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -6,6 +6,7 @@ import { relay, RelayerType, } from "@axelar-network/axelar-local-dev"; +import { Contract } from "ethers"; export const relayBasic = async () => { const axelarRelayer = await AxelarRelayerService.create( @@ -13,6 +14,7 @@ export const relayBasic = async () => { ); const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); + const WalletContract = require("../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json"); const ethereumNetwork = await createNetwork({ name: "Ethereum" }); const ethereumContract = await deployContract( @@ -24,6 +26,8 @@ export const relayBasic = async () => { ] ); + const wallet = new Contract('0x959c9a26d962c38f40d270a3825298cd58a8039e', WalletContract.abi, ethereumNetwork.userWallets[0]); + console.log('Ethereum Contract Address:', ethereumContract.address); evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); @@ -33,6 +37,11 @@ export const relayBasic = async () => { agoric: axelarRelayer, evm: evmRelayer, }); - + try { + const ethereumMessage = await wallet.storedMessage(); + console.log('Ethereum Message:', ethereumMessage); + } catch (e) { + console.log('Error:', e); + } } }; diff --git a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts index 9153d46b..ee424f8b 100644 --- a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts @@ -4,6 +4,7 @@ import { Contract, ethers } from "ethers"; import { encodeVersionedPayload } from "./utils"; import { encode as b64encode, decode as b64decode } from 'js-base64'; import { SigningStargateClient } from '@cosmjs/stargate'; +import createKeccakHash from 'keccak'; import { evmRelayer, @@ -14,6 +15,27 @@ import { } from "@axelar-network/axelar-local-dev"; import { AxelarGateway } from "@axelar-network/axelar-local-dev/dist/contracts"; +const uint8ArrayToHex = (uint8Array: Uint8Array): string => { + return `0x${Array.from(uint8Array) + .map((byte) => byte.toString(16).padStart(2, "0")) + .join("")}`; +}; + +const pack = ( + functionSignature: string, + paramTypes: Array, + params: Array +) => { + const functionHash = createKeccakHash("keccak256").update(functionSignature).digest(); + + return uint8ArrayToHex( + Uint8Array.from([ + ...Uint8Array.from(functionHash.subarray(0, 4)), + ...encode(paramTypes, params), + ]) + ); +}; + export const relayDataFromEth = async () => { const axelarRelayer = await AxelarRelayerService.create( defaultAxelarChainInfo @@ -31,43 +53,28 @@ export const relayDataFromEth = async () => { ethereumNetwork.gasService.address, 'Ethereum', ] + ); + const ethereumWallet = await deployContract( + ethereumNetwork.userWallets[0], + WalletContract, + [ + ethereumNetwork.gateway.address, + 'Ethereum', + ] ); - console.log('Ethereum Contract Address:', ethereumContract.address); - - // const gatewayContract = new Contract( - // ethereumNetwork.gateway.address, - // AxelarGateway.abi, - // ethereumNetwork.ownerWallet - // ); - // const encoder = ethers.utils.defaultAbiCoder; - // const message = encode(["string"], ["fraz"]); - // const payloadArguments = encode( - // ["string", "string", "bytes"], - // ["Ethereum", "0x0830c9d8f05D1dcAE3406102420C29bBb287C199", message] - // ); - // const cosmwasmPayload = encoder.encode( - // ["string", "string[]", "string[]", "bytes"], - // [ - // "receive_message_evm", - // ["source_chain", "source_address", "payload"], - // ["string", "string", "bytes"], - // payloadArguments, - // ] - // ); - - // const object = { - // "fraz": "fraz", - // } - // const encodedObj = '0x' + Buffer.from(JSON.stringify(object)).toString('hex'); - // const encodedPayload = encodeVersionedPayload(0, encodedObj); - // console.log(encodedPayload) - // await gatewayContract.callContract( - // "agoric", - // // - // "agoric1rwwley550k9mmk6uq6mm6z4udrg8kyuyvfszjk", - // Array.from(encodedPayload) - // ); + console.log('Ethereum Contract Address:', ethereumWallet.address); + + + const targets = [ + ethereumContract.address, + ]; + const data: any = [ + pack('createVendor(string)', ['string'], ['ownerAddress']), + ]; + console.log(data); + + const payload = Array.from(encode(['address[]', 'bytes[]'], [targets, data])); const ibcRelayer = axelarRelayer.ibcRelayer; @@ -85,19 +92,19 @@ export const relayDataFromEth = async () => { const senderAddress = 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl'; // TODO - const DESTINATION_ADDRESS = ethereumContract.address; + const DESTINATION_ADDRESS = ethereumWallet.address; const DESTINATION_CHAIN = 'Ethereum'; - const payload = encode(['string', 'string'], ['agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', 'Hello, world!']); + // const payload = encode(['string', 'string'], ['agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', 'Hello, world!']); const memo = { destination_chain: DESTINATION_CHAIN, destination_address: DESTINATION_ADDRESS, - payload: [], - fee: { - amount: '8000', - recipient: 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5', - }, + payload, + // fee: { + // amount: '8000', + // recipient: 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5', + // }, type: 1, }; @@ -147,13 +154,13 @@ export const relayDataFromEth = async () => { const ethereumMessage = await ethereumContract.storedMessage(); console.log('Message on Ethereum Contract:', ethereumMessage); - await relay({ - evm: evmRelayer, - }); + // await relay({ + // evm: evmRelayer, + // }); - await relay({ - agoric: axelarRelayer, - }); + // await relay({ + // agoric: axelarRelayer, + // }); - await axelarRelayer.stopListening(); + // await axelarRelayer.stopListening(); }; From 77c53cad7c528ef3b79d7986d7479e72cd19919c Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Fri, 4 Apr 2025 14:13:21 +0500 Subject: [PATCH 18/93] feat: added ownable contract --- .../src/__tests__/contracts/Factory.sol | 9 +- .../src/__tests__/contracts/Ownable.sol | 98 +++++++++++++++++++ .../src/relayFromEth.ts | 16 +-- 3 files changed, 110 insertions(+), 13 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/contracts/Ownable.sol diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 4488a46e..458418c0 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -8,9 +8,9 @@ import {IAxelarGasService} from "@axelar-network/axelar-gmp-sdk-solidity/contrac import { StakingContract } from 'src/__tests__/contracts/StakingContract.sol'; import { IERC20 } from '@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol'; import {StringToAddress, AddressToString} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol"; +import {Ownable} from "src/__tests__/contracts/Ownable.sol"; -contract Wallet is AxelarExecutableWithToken { - string owner; +contract Wallet is AxelarExecutableWithToken, Ownable { struct Message { string sender; @@ -22,8 +22,7 @@ contract Wallet is AxelarExecutableWithToken { constructor( address gateway_, string memory owner_ - ) AxelarExecutableWithToken(gateway_) { - owner = owner_; + ) AxelarExecutableWithToken(gateway_) Ownable(owner_) { storedMessage = Message('s', 'f'); } @@ -32,7 +31,7 @@ contract Wallet is AxelarExecutableWithToken { string calldata sourceChain, string calldata sourceAddress, bytes calldata payload - ) internal override { + ) internal override onlyOwner(sourceAddress) { (address[] memory targets, bytes[] memory data) = abi.decode(payload, (address[], bytes[])); require(targets.length == data.length, "Payload length mismatch"); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Ownable.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Ownable.sol new file mode 100644 index 00000000..fb64c02a --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Ownable.sol @@ -0,0 +1,98 @@ +// SPDX-License-Identifier: MIT +// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol) + +pragma solidity ^0.8.20; + +/** + * @dev Contract module which provides a basic access control mechanism, where + * there is an account (an owner) that can be granted exclusive access to + * specific functions. + * + * The initial owner is set to the address provided by the deployer. This can + * later be changed with {transferOwnership}. + * + * This module is used through inheritance. It will make available the modifier + * `onlyOwner`, which can be applied to your functions to restrict their use to + * the owner. + */ +abstract contract Ownable { + string private _owner; + + /** + * @dev The caller account is not authorized to perform an operation. + */ + error OwnableUnauthorizedAccount(string account); + + /** + * @dev The owner is not a valid owner account. (eg. `address(0)`) + */ + error OwnableInvalidOwner(string owner); + + event OwnershipTransferred(string indexed previousOwner, string indexed newOwner); + + /** + * @dev Initializes the contract setting the address provided by the deployer as the initial owner. + */ + constructor(string memory initialOwner) { + // if (initialOwner == address(0)) { + // revert OwnableInvalidOwner(address(0)); + // } + _transferOwnership(initialOwner); + } + + /** + * @dev Throws if called by any account other than the owner. + */ + modifier onlyOwner(string calldata incomingAddress) { + _checkOwner(incomingAddress); + _; + } + + /** + * @dev Returns the address of the current owner. + */ + function owner() public view virtual returns (string memory) { + return _owner; + } + + /** + * @dev Throws if the sender is not the owner. + */ + function _checkOwner(string calldata incomingAddress) internal view virtual { + if (keccak256(bytes(owner())) != keccak256(bytes(incomingAddress))) { + revert OwnableUnauthorizedAccount(incomingAddress); + } + } + + /** + * @dev Leaves the contract without owner. It will not be possible to call + * `onlyOwner` functions. Can only be called by the current owner. + * + * NOTE: Renouncing ownership will leave the contract without an owner, + * thereby disabling any functionality that is only available to the owner. + */ + function renounceOwnership(string calldata currentOwner) public virtual onlyOwner(currentOwner) { + _transferOwnership(string(abi.encodePacked("0x0000000000000000000000000000000000000000"))); + } + + /** + * @dev Transfers ownership of the contract to a new account (`newOwner`). + * Can only be called by the current owner. + */ + function transferOwnership(string calldata oldOwner, string calldata newOwner) public virtual onlyOwner(oldOwner) { + // if (newOwner == address(0)) { + // revert OwnableInvalidOwner(address(0)); + // } + _transferOwnership(newOwner); + } + + /** + * @dev Transfers ownership of the contract to a new account (`newOwner`). + * Internal function without access restriction. + */ + function _transferOwnership(string memory newOwner) internal virtual { + string memory oldOwner = _owner; + _owner = newOwner; + emit OwnershipTransferred(oldOwner, newOwner); + } +} \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts index ee424f8b..b2fded13 100644 --- a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts @@ -59,7 +59,7 @@ export const relayDataFromEth = async () => { WalletContract, [ ethereumNetwork.gateway.address, - 'Ethereum', + 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', ] ); @@ -154,13 +154,13 @@ export const relayDataFromEth = async () => { const ethereumMessage = await ethereumContract.storedMessage(); console.log('Message on Ethereum Contract:', ethereumMessage); - // await relay({ - // evm: evmRelayer, - // }); + await relay({ + evm: evmRelayer, + }); - // await relay({ - // agoric: axelarRelayer, - // }); + await relay({ + agoric: axelarRelayer, + }); - // await axelarRelayer.stopListening(); + await axelarRelayer.stopListening(); }; From 349adca6475584ca3483a514aced82b9bc2c854a Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 10 Apr 2025 09:06:55 +0500 Subject: [PATCH 19/93] chore: increase bundle size --- package-lock.json | 67 +++++++++---------- package.json | 3 +- .../docker/agoric/bin/init_agoric.sh | 12 ++++ 3 files changed, 45 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index a89b26b0..afb27034 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4346,6 +4346,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.8.0.tgz", "integrity": "sha512-dwWRrghSVBQDpt0wP+6RXD8BMz2i/9TI34TcmZqeEAZuCLei3U9KZRgGTKVAM1rMRvrpf5ROfPqrWNetKVUTag==", "dev": true, + "peer": true, "dependencies": { "@nomicfoundation/edr-darwin-arm64": "0.8.0", "@nomicfoundation/edr-darwin-x64": "0.8.0", @@ -4364,6 +4365,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.8.0.tgz", "integrity": "sha512-sKTmOu/P5YYhxT0ThN2Pe3hmCE/5Ag6K/eYoiavjLWbR7HEb5ZwPu2rC3DpuUk1H+UKJqt7o4/xIgJxqw9wu6A==", "dev": true, + "peer": true, "engines": { "node": ">= 18" } @@ -4373,6 +4375,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.8.0.tgz", "integrity": "sha512-8ymEtWw1xf1Id1cc42XIeE+9wyo3Dpn9OD/X8GiaMz9R70Ebmj2g+FrbETu8o6UM+aL28sBZQCiCzjlft2yWAg==", "dev": true, + "peer": true, "engines": { "node": ">= 18" } @@ -4382,6 +4385,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.8.0.tgz", "integrity": "sha512-h/wWzS2EyQuycz+x/SjMRbyA+QMCCVmotRsgM1WycPARvVZWIVfwRRsKoXKdCftsb3S8NTprqBdJlOmsFyETFA==", "dev": true, + "peer": true, "engines": { "node": ">= 18" } @@ -4391,6 +4395,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.8.0.tgz", "integrity": "sha512-gnWxDgdkka0O9GpPX/gZT3REeKYV28Guyg13+Vj/bbLpmK1HmGh6Kx+fMhWv+Ht/wEmGDBGMCW1wdyT/CftJaQ==", "dev": true, + "peer": true, "engines": { "node": ">= 18" } @@ -4400,6 +4405,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.8.0.tgz", "integrity": "sha512-DTMiAkgAx+nyxcxKyxFZk1HPakXXUCgrmei7r5G7kngiggiGp/AUuBBWFHi8xvl2y04GYhro5Wp+KprnLVoAPA==", "dev": true, + "peer": true, "engines": { "node": ">= 18" } @@ -4409,6 +4415,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.8.0.tgz", "integrity": "sha512-iTITWe0Zj8cNqS0xTblmxPbHVWwEtMiDC+Yxwr64d7QBn/1W0ilFQ16J8gB6RVVFU3GpfNyoeg3tUoMpSnrm6Q==", "dev": true, + "peer": true, "engines": { "node": ">= 18" } @@ -4418,6 +4425,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.8.0.tgz", "integrity": "sha512-mNRDyd/C3j7RMcwapifzv2K57sfA5xOw8g2U84ZDvgSrXVXLC99ZPxn9kmolb+dz8VMm9FONTZz9ESS6v8DTnA==", "dev": true, + "peer": true, "engines": { "node": ">= 18" } @@ -4427,6 +4435,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-common/-/ethereumjs-common-4.0.4.tgz", "integrity": "sha512-9Rgb658lcWsjiicr5GzNCjI1llow/7r0k50dLL95OJ+6iZJcVbi15r3Y0xh2cIO+zgX0WIHcbzIu6FeQf9KPrg==", "dev": true, + "peer": true, "dependencies": { "@nomicfoundation/ethereumjs-util": "9.0.4" } @@ -4436,6 +4445,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-rlp/-/ethereumjs-rlp-5.0.4.tgz", "integrity": "sha512-8H1S3s8F6QueOc/X92SdrA4RDenpiAEqMg5vJH99kcQaCy/a3Q6fgseo75mgWlbanGJXSlAPtnCeG9jvfTYXlw==", "dev": true, + "peer": true, "bin": { "rlp": "bin/rlp.cjs" }, @@ -4448,6 +4458,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-tx/-/ethereumjs-tx-5.0.4.tgz", "integrity": "sha512-Xjv8wAKJGMrP1f0n2PeyfFCCojHd7iS3s/Ab7qzF1S64kxZ8Z22LCMynArYsVqiFx6rzYy548HNVEyI+AYN/kw==", "dev": true, + "peer": true, "dependencies": { "@nomicfoundation/ethereumjs-common": "4.0.4", "@nomicfoundation/ethereumjs-rlp": "5.0.4", @@ -4471,6 +4482,7 @@ "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", "dev": true, + "peer": true, "dependencies": { "@types/pbkdf2": "^3.0.0", "@types/secp256k1": "^4.0.1", @@ -4494,6 +4506,7 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-util/-/ethereumjs-util-9.0.4.tgz", "integrity": "sha512-sLOzjnSrlx9Bb9EFNtHzK/FJFsfg2re6bsGqinFinH1gCqVfz9YYlXiMWwDM4C/L4ywuHFCYwfKTVr/QHQcU0Q==", "dev": true, + "peer": true, "dependencies": { "@nomicfoundation/ethereumjs-rlp": "5.0.4", "ethereum-cryptography": "0.1.3" @@ -4515,6 +4528,7 @@ "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", "dev": true, + "peer": true, "dependencies": { "@types/pbkdf2": "^3.0.0", "@types/secp256k1": "^4.0.1", @@ -5665,30 +5679,6 @@ "integrity": "sha512-bxjNie5z89W1Ea0NZLZluFh8PrFNn9DH8DQlujEok2yjsOlraUPKID5p1Wk3qdNbf6XkQ1Os2RvfiHrrXLHWKA==", "dev": true }, - "node_modules/@parcel/watcher": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.0.4.tgz", - "integrity": "sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "node-addon-api": "^3.2.1", - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher/node_modules/node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true - }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", @@ -8730,6 +8720,7 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", "dev": true, + "peer": true, "engines": { "node": ">= 12" } @@ -15138,6 +15129,7 @@ "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.22.19.tgz", "integrity": "sha512-jptJR5o6MCgNbhd7eKa3mrteR+Ggq1exmE5RUL5ydQEVKcZm0sss5laa86yZ0ixIavIvF4zzS7TdGDuyopj0sQ==", "dev": true, + "peer": true, "dependencies": { "@ethersproject/abi": "^5.1.2", "@metamask/eth-sig-util": "^4.0.0", @@ -15219,6 +15211,7 @@ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", "dev": true, + "peer": true, "dependencies": { "readdirp": "^4.0.1" }, @@ -15234,6 +15227,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", "dev": true, + "peer": true, "dependencies": { "graceful-fs": "^4.1.2", "jsonfile": "^4.0.0", @@ -15248,6 +15242,7 @@ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, + "peer": true, "optionalDependencies": { "graceful-fs": "^4.1.6" } @@ -15257,6 +15252,7 @@ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", "dev": true, + "peer": true, "engines": { "node": ">= 14.18.0" }, @@ -15270,6 +15266,7 @@ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, + "peer": true, "dependencies": { "path-parse": "^1.0.6" }, @@ -15282,6 +15279,7 @@ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true, + "peer": true, "engines": { "node": ">= 4.0.0" } @@ -18386,16 +18384,6 @@ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.7.tgz", "integrity": "sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==" }, - "node_modules/js-sdsl": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.2.tgz", - "integrity": "sha512-dwXFwByc/ajSV6m5bcKAPwe4yDDF6D614pxmIi5odytzxRlwqF6nwoiCek80Ixc7Cvma5awClxrzFtxCQvcM8w==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" - } - }, "node_modules/js-sha256": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", @@ -18497,6 +18485,7 @@ "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz", "integrity": "sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==", "dev": true, + "peer": true, "engines": { "node": ">=7.10.1" } @@ -23830,6 +23819,7 @@ "resolved": "https://registry.npmjs.org/solc/-/solc-0.8.26.tgz", "integrity": "sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==", "dev": true, + "peer": true, "dependencies": { "command-exists": "^1.2.8", "commander": "^8.1.0", @@ -23851,6 +23841,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, + "peer": true, "bin": { "semver": "bin/semver" } @@ -23860,6 +23851,7 @@ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, + "peer": true, "dependencies": { "os-tmpdir": "~1.0.2" }, @@ -25033,6 +25025,7 @@ "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", "dev": true, + "peer": true, "dependencies": { "fdir": "^6.4.3", "picomatch": "^4.0.2" @@ -25049,6 +25042,7 @@ "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", "dev": true, + "peer": true, "peerDependencies": { "picomatch": "^3 || ^4" }, @@ -25063,6 +25057,7 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", "dev": true, + "peer": true, "engines": { "node": ">=12" }, @@ -26541,8 +26536,8 @@ "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "jest": "^29.7.0", - "ts-jest": "^29.3.1", - "ts-node": "^10.9.2" + "ts-jest": "^29.1.1", + "ts-node": "^10.9.1" } }, "packages/axelar-local-dev-cosmos/node_modules/bech32": { diff --git a/package.json b/package.json index 9362c313..1b2b11ae 100644 --- a/package.json +++ b/package.json @@ -32,5 +32,6 @@ "devDependencies": { "lerna": "^8.2.1", "lerna-update-wizard": "^1.1.2" - } + }, + "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e" } diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh index f13e5fa5..90b8d905 100755 --- a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh +++ b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh @@ -5,6 +5,18 @@ CHAIN_ID=agoriclocal MONIKER=agoric HOME=/root/private/.agoric +CHAIN_DIR=/root/.agoric + +# See https://github.com/Agoric/agoric-sdk/blob/7b684a6268c999b082a326fdb22f63e4575bac4f/packages/agoric-cli/src/chain-config.js#L66 +RPC_MAX_BODY_BYTES=15000000 +MAX_HEADER_BYTES=$((RPC_MAX_BODY_BYTES / 10)) +MAX_TXS_BYTES=$((RPC_MAX_BODY_BYTES * 50)) +sed -i -e "s/max_body_bytes = .*/max_body_bytes = $RPC_MAX_BODY_BYTES/g" $CHAIN_DIR/config/config.toml +sed -i -e "s/max_header_bytes = .*/max_header_bytes = $MAX_HEADER_BYTES/g" $CHAIN_DIR/config/config.toml +sed -i -e "s/max_txs_bytes = .*/max_txs_bytes = $MAX_TXS_BYTES/g" $CHAIN_DIR/config/config.toml +sed -i -e "s/max_tx_bytes = .*/max_tx_bytes = $RPC_MAX_BODY_BYTES/g" $CHAIN_DIR/config/config.toml +sed -i -e "s/^rpc-max-body-bytes =.*/rpc-max-body-bytes = $RPC_MAX_BODY_BYTES/" $CHAIN_DIR/config/app.toml + # Removing the existing directory to start with a clean slate rm -rf ${HOME}/* mnemonic="soap hub stick bomb dish index wing shield cruel board siren force glory assault rotate busy area topple resource okay clown wedding hint unhappy" From e4cb92f4cff204ab8f58e7ec92d15ec0136f7dc2 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 10 Apr 2025 18:37:07 +0500 Subject: [PATCH 20/93] chore: wait for 30 seconds before setting up channels --- packages/axelar-local-dev-cosmos/src/setup.ts | 27 +++++++++++-------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/setup.ts b/packages/axelar-local-dev-cosmos/src/setup.ts index ae70f268..302b8475 100644 --- a/packages/axelar-local-dev-cosmos/src/setup.ts +++ b/packages/axelar-local-dev-cosmos/src/setup.ts @@ -1,11 +1,11 @@ -import { logger } from "@axelar-network/axelar-local-dev"; -import { AxelarRelayerService, IBCRelayerService } from "./services"; -import { retry } from "."; -import { DockerService } from "./services/DockerService"; +import { logger } from '@axelar-network/axelar-local-dev'; +import { AxelarRelayerService, IBCRelayerService } from './services'; +import { retry } from '.'; +import { DockerService } from './services/DockerService'; // Warning: this mnemonic is used for testing only. Do not use it in production. export const testMnemonic = - "illness step primary sibling donkey body sphere pigeon inject antique head educate"; + 'illness step primary sibling donkey body sphere pigeon inject antique head educate'; export let cosmosRelayer: AxelarRelayerService; export let ibcRelayer: IBCRelayerService; @@ -25,6 +25,10 @@ const getOrCreateIBCRelayer = async () => { return ibcRelayer; }; +const sleep = (ms: number) => { + return new Promise((resolve) => setTimeout(resolve, ms)); +}; + /** * Sets up IBC channels using the IBCRelayerService between Axelar and Wasm chain. * It initializes the IBCRelayerService if not already done and attempts to set up IBC channels. @@ -32,13 +36,14 @@ const getOrCreateIBCRelayer = async () => { * @throws {Error} Throws an error if setting up IBC channels fails. */ export const setupIBCChannels = async () => { + await sleep(30000); ibcRelayer = await getOrCreateIBCRelayer(); - logger.log("Setting up IBC Channels"); + logger.log('Setting up IBC Channels'); await retry(async () => { await ibcRelayer.createIBCChannelIfNeeded(); }); - logger.log("IBC Channels setup completed!"); + logger.log('IBC Channels setup completed!'); }; /** @@ -85,9 +90,9 @@ export const startIBCRelayer = async () => { try { const relayer = await getOrCreateIBCRelayer(); await relayer.runInterval(); - logger.log("IBC relayer started"); + logger.log('IBC relayer started'); } catch (error) { - logger.log("Error starting IBC Relayer: ", error); + logger.log('Error starting IBC Relayer: ', error); throw error; } }; @@ -102,9 +107,9 @@ export async function stopIBCRelayer() { try { const relayer = await getOrCreateIBCRelayer(); await relayer.stopInterval(); - logger.log("IBC relayer stopped"); + logger.log('IBC relayer stopped'); } catch (error) { - logger.log("Error stopping IBC Relayer: ", error); + logger.log('Error stopping IBC Relayer: ', error); throw error; } } From 7670bf7f285045dbe18eed46a02dba3cd30cb85b Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Fri, 11 Apr 2025 11:50:07 +0500 Subject: [PATCH 21/93] chore: allow large bundles --- .../docker/agoric/bin/init_agoric.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh index f13e5fa5..90b8d905 100755 --- a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh +++ b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh @@ -5,6 +5,18 @@ CHAIN_ID=agoriclocal MONIKER=agoric HOME=/root/private/.agoric +CHAIN_DIR=/root/.agoric + +# See https://github.com/Agoric/agoric-sdk/blob/7b684a6268c999b082a326fdb22f63e4575bac4f/packages/agoric-cli/src/chain-config.js#L66 +RPC_MAX_BODY_BYTES=15000000 +MAX_HEADER_BYTES=$((RPC_MAX_BODY_BYTES / 10)) +MAX_TXS_BYTES=$((RPC_MAX_BODY_BYTES * 50)) +sed -i -e "s/max_body_bytes = .*/max_body_bytes = $RPC_MAX_BODY_BYTES/g" $CHAIN_DIR/config/config.toml +sed -i -e "s/max_header_bytes = .*/max_header_bytes = $MAX_HEADER_BYTES/g" $CHAIN_DIR/config/config.toml +sed -i -e "s/max_txs_bytes = .*/max_txs_bytes = $MAX_TXS_BYTES/g" $CHAIN_DIR/config/config.toml +sed -i -e "s/max_tx_bytes = .*/max_tx_bytes = $RPC_MAX_BODY_BYTES/g" $CHAIN_DIR/config/config.toml +sed -i -e "s/^rpc-max-body-bytes =.*/rpc-max-body-bytes = $RPC_MAX_BODY_BYTES/" $CHAIN_DIR/config/app.toml + # Removing the existing directory to start with a clean slate rm -rf ${HOME}/* mnemonic="soap hub stick bomb dish index wing shield cruel board siren force glory assault rotate busy area topple resource okay clown wedding hint unhappy" From 1024b4aa0346a2ec5db07e495a7984e8df32fdc8 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Mon, 14 Apr 2025 15:10:27 +0500 Subject: [PATCH 22/93] chore: update package-lock.json --- package-lock.json | 29 ----------------------------- 1 file changed, 29 deletions(-) diff --git a/package-lock.json b/package-lock.json index afb27034..12043fce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4346,7 +4346,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.8.0.tgz", "integrity": "sha512-dwWRrghSVBQDpt0wP+6RXD8BMz2i/9TI34TcmZqeEAZuCLei3U9KZRgGTKVAM1rMRvrpf5ROfPqrWNetKVUTag==", "dev": true, - "peer": true, "dependencies": { "@nomicfoundation/edr-darwin-arm64": "0.8.0", "@nomicfoundation/edr-darwin-x64": "0.8.0", @@ -4365,7 +4364,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.8.0.tgz", "integrity": "sha512-sKTmOu/P5YYhxT0ThN2Pe3hmCE/5Ag6K/eYoiavjLWbR7HEb5ZwPu2rC3DpuUk1H+UKJqt7o4/xIgJxqw9wu6A==", "dev": true, - "peer": true, "engines": { "node": ">= 18" } @@ -4375,7 +4373,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.8.0.tgz", "integrity": "sha512-8ymEtWw1xf1Id1cc42XIeE+9wyo3Dpn9OD/X8GiaMz9R70Ebmj2g+FrbETu8o6UM+aL28sBZQCiCzjlft2yWAg==", "dev": true, - "peer": true, "engines": { "node": ">= 18" } @@ -4385,7 +4382,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.8.0.tgz", "integrity": "sha512-h/wWzS2EyQuycz+x/SjMRbyA+QMCCVmotRsgM1WycPARvVZWIVfwRRsKoXKdCftsb3S8NTprqBdJlOmsFyETFA==", "dev": true, - "peer": true, "engines": { "node": ">= 18" } @@ -4395,7 +4391,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.8.0.tgz", "integrity": "sha512-gnWxDgdkka0O9GpPX/gZT3REeKYV28Guyg13+Vj/bbLpmK1HmGh6Kx+fMhWv+Ht/wEmGDBGMCW1wdyT/CftJaQ==", "dev": true, - "peer": true, "engines": { "node": ">= 18" } @@ -4405,7 +4400,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.8.0.tgz", "integrity": "sha512-DTMiAkgAx+nyxcxKyxFZk1HPakXXUCgrmei7r5G7kngiggiGp/AUuBBWFHi8xvl2y04GYhro5Wp+KprnLVoAPA==", "dev": true, - "peer": true, "engines": { "node": ">= 18" } @@ -4415,7 +4409,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.8.0.tgz", "integrity": "sha512-iTITWe0Zj8cNqS0xTblmxPbHVWwEtMiDC+Yxwr64d7QBn/1W0ilFQ16J8gB6RVVFU3GpfNyoeg3tUoMpSnrm6Q==", "dev": true, - "peer": true, "engines": { "node": ">= 18" } @@ -4425,7 +4418,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.8.0.tgz", "integrity": "sha512-mNRDyd/C3j7RMcwapifzv2K57sfA5xOw8g2U84ZDvgSrXVXLC99ZPxn9kmolb+dz8VMm9FONTZz9ESS6v8DTnA==", "dev": true, - "peer": true, "engines": { "node": ">= 18" } @@ -4435,7 +4427,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-common/-/ethereumjs-common-4.0.4.tgz", "integrity": "sha512-9Rgb658lcWsjiicr5GzNCjI1llow/7r0k50dLL95OJ+6iZJcVbi15r3Y0xh2cIO+zgX0WIHcbzIu6FeQf9KPrg==", "dev": true, - "peer": true, "dependencies": { "@nomicfoundation/ethereumjs-util": "9.0.4" } @@ -4445,7 +4436,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-rlp/-/ethereumjs-rlp-5.0.4.tgz", "integrity": "sha512-8H1S3s8F6QueOc/X92SdrA4RDenpiAEqMg5vJH99kcQaCy/a3Q6fgseo75mgWlbanGJXSlAPtnCeG9jvfTYXlw==", "dev": true, - "peer": true, "bin": { "rlp": "bin/rlp.cjs" }, @@ -4458,7 +4448,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-tx/-/ethereumjs-tx-5.0.4.tgz", "integrity": "sha512-Xjv8wAKJGMrP1f0n2PeyfFCCojHd7iS3s/Ab7qzF1S64kxZ8Z22LCMynArYsVqiFx6rzYy548HNVEyI+AYN/kw==", "dev": true, - "peer": true, "dependencies": { "@nomicfoundation/ethereumjs-common": "4.0.4", "@nomicfoundation/ethereumjs-rlp": "5.0.4", @@ -4482,7 +4471,6 @@ "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", "dev": true, - "peer": true, "dependencies": { "@types/pbkdf2": "^3.0.0", "@types/secp256k1": "^4.0.1", @@ -4506,7 +4494,6 @@ "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-util/-/ethereumjs-util-9.0.4.tgz", "integrity": "sha512-sLOzjnSrlx9Bb9EFNtHzK/FJFsfg2re6bsGqinFinH1gCqVfz9YYlXiMWwDM4C/L4ywuHFCYwfKTVr/QHQcU0Q==", "dev": true, - "peer": true, "dependencies": { "@nomicfoundation/ethereumjs-rlp": "5.0.4", "ethereum-cryptography": "0.1.3" @@ -4528,7 +4515,6 @@ "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", "dev": true, - "peer": true, "dependencies": { "@types/pbkdf2": "^3.0.0", "@types/secp256k1": "^4.0.1", @@ -8720,7 +8706,6 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", "dev": true, - "peer": true, "engines": { "node": ">= 12" } @@ -15129,7 +15114,6 @@ "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.22.19.tgz", "integrity": "sha512-jptJR5o6MCgNbhd7eKa3mrteR+Ggq1exmE5RUL5ydQEVKcZm0sss5laa86yZ0ixIavIvF4zzS7TdGDuyopj0sQ==", "dev": true, - "peer": true, "dependencies": { "@ethersproject/abi": "^5.1.2", "@metamask/eth-sig-util": "^4.0.0", @@ -15211,7 +15195,6 @@ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", "dev": true, - "peer": true, "dependencies": { "readdirp": "^4.0.1" }, @@ -15227,7 +15210,6 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", "dev": true, - "peer": true, "dependencies": { "graceful-fs": "^4.1.2", "jsonfile": "^4.0.0", @@ -15242,7 +15224,6 @@ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, - "peer": true, "optionalDependencies": { "graceful-fs": "^4.1.6" } @@ -15252,7 +15233,6 @@ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", "dev": true, - "peer": true, "engines": { "node": ">= 14.18.0" }, @@ -15266,7 +15246,6 @@ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, - "peer": true, "dependencies": { "path-parse": "^1.0.6" }, @@ -15279,7 +15258,6 @@ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true, - "peer": true, "engines": { "node": ">= 4.0.0" } @@ -18485,7 +18463,6 @@ "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz", "integrity": "sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==", "dev": true, - "peer": true, "engines": { "node": ">=7.10.1" } @@ -23819,7 +23796,6 @@ "resolved": "https://registry.npmjs.org/solc/-/solc-0.8.26.tgz", "integrity": "sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==", "dev": true, - "peer": true, "dependencies": { "command-exists": "^1.2.8", "commander": "^8.1.0", @@ -23841,7 +23817,6 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, - "peer": true, "bin": { "semver": "bin/semver" } @@ -23851,7 +23826,6 @@ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, - "peer": true, "dependencies": { "os-tmpdir": "~1.0.2" }, @@ -25025,7 +24999,6 @@ "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", "dev": true, - "peer": true, "dependencies": { "fdir": "^6.4.3", "picomatch": "^4.0.2" @@ -25042,7 +25015,6 @@ "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", "dev": true, - "peer": true, "peerDependencies": { "picomatch": "^3 || ^4" }, @@ -25057,7 +25029,6 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", "dev": true, - "peer": true, "engines": { "node": ">=12" }, From 5185ef74ef44b3433c869071bbff307a4b1a013f Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Mon, 14 Apr 2025 15:17:51 +0500 Subject: [PATCH 23/93] chore: build contract and update Cargo config --- .../.cargo/{config => config.toml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename packages/axelar-local-dev-near/src/contracts/test/near-axelar-contract-call-example/.cargo/{config => config.toml} (100%) diff --git a/packages/axelar-local-dev-near/src/contracts/test/near-axelar-contract-call-example/.cargo/config b/packages/axelar-local-dev-near/src/contracts/test/near-axelar-contract-call-example/.cargo/config.toml similarity index 100% rename from packages/axelar-local-dev-near/src/contracts/test/near-axelar-contract-call-example/.cargo/config rename to packages/axelar-local-dev-near/src/contracts/test/near-axelar-contract-call-example/.cargo/config.toml From a840aae5134fd7b91a3f045e10e8531e55986017 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Fri, 18 Apr 2025 11:18:02 +0500 Subject: [PATCH 24/93] chore: remove changes related to accepting larger bundles --- .../docker/agoric/bin/init_agoric.sh | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh index 90b8d905..d8bc37b7 100755 --- a/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh +++ b/packages/axelar-local-dev-cosmos/docker/agoric/bin/init_agoric.sh @@ -7,16 +7,6 @@ HOME=/root/private/.agoric CHAIN_DIR=/root/.agoric -# See https://github.com/Agoric/agoric-sdk/blob/7b684a6268c999b082a326fdb22f63e4575bac4f/packages/agoric-cli/src/chain-config.js#L66 -RPC_MAX_BODY_BYTES=15000000 -MAX_HEADER_BYTES=$((RPC_MAX_BODY_BYTES / 10)) -MAX_TXS_BYTES=$((RPC_MAX_BODY_BYTES * 50)) -sed -i -e "s/max_body_bytes = .*/max_body_bytes = $RPC_MAX_BODY_BYTES/g" $CHAIN_DIR/config/config.toml -sed -i -e "s/max_header_bytes = .*/max_header_bytes = $MAX_HEADER_BYTES/g" $CHAIN_DIR/config/config.toml -sed -i -e "s/max_txs_bytes = .*/max_txs_bytes = $MAX_TXS_BYTES/g" $CHAIN_DIR/config/config.toml -sed -i -e "s/max_tx_bytes = .*/max_tx_bytes = $RPC_MAX_BODY_BYTES/g" $CHAIN_DIR/config/config.toml -sed -i -e "s/^rpc-max-body-bytes =.*/rpc-max-body-bytes = $RPC_MAX_BODY_BYTES/" $CHAIN_DIR/config/app.toml - # Removing the existing directory to start with a clean slate rm -rf ${HOME}/* mnemonic="soap hub stick bomb dish index wing shield cruel board siren force glory assault rotate busy area topple resource okay clown wedding hint unhappy" From 4b88479d8fb35a03e9ce3e777abf8e54983b8124 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 22 Apr 2025 16:06:31 +0500 Subject: [PATCH 25/93] chore: update _execute to decode new shape of payload --- .../src/__tests__/contracts/Factory.sol | 72 +++++++------------ 1 file changed, 26 insertions(+), 46 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 458418c0..d9ca34a9 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -1,29 +1,33 @@ // Factory Contract // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity ^0.8.0; -import { AxelarExecutable } from "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol"; -import { AxelarExecutableWithToken } from '@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol'; +import {AxelarExecutable} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol"; +import {AxelarExecutableWithToken} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol"; import {IAxelarGasService} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol"; -import { StakingContract } from 'src/__tests__/contracts/StakingContract.sol'; -import { IERC20 } from '@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol'; +import {StakingContract} from "src/__tests__/contracts/StakingContract.sol"; +import {IERC20} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol"; import {StringToAddress, AddressToString} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol"; import {Ownable} from "src/__tests__/contracts/Ownable.sol"; contract Wallet is AxelarExecutableWithToken, Ownable { - struct Message { string sender; string message; } + struct Call { + address target; + bytes data; + } + Message public storedMessage; // message received from _execute constructor( address gateway_, string memory owner_ ) AxelarExecutableWithToken(gateway_) Ownable(owner_) { - storedMessage = Message('s', 'f'); + storedMessage = Message("s", "f"); } function _execute( @@ -32,12 +36,15 @@ contract Wallet is AxelarExecutableWithToken, Ownable { string calldata sourceAddress, bytes calldata payload ) internal override onlyOwner(sourceAddress) { - (address[] memory targets, bytes[] memory data) = abi.decode(payload, (address[], bytes[])); - require(targets.length == data.length, "Payload length mismatch"); + (Call[] memory calls, uint256 totalCalls) = abi.decode( + payload, + (Call[], uint256) + ); + require(calls.length == totalCalls, "Payload length mismatch"); - for (uint256 i = 0; i < targets.length; i++) { - (bool success, ) = targets[i].call(data[i]); - require(success, "Arbitrary contract execution failed"); + for (uint256 i = 0; i < calls.length; i++) { + (bool success, ) = calls[i].target.call(calls[i].data); + require(success, "Contract call failed"); } } @@ -53,28 +60,17 @@ contract Wallet is AxelarExecutableWithToken, Ownable { // (address[] memory targets, bytes[] memory callDatas) = abi.decode(payload, (address[], bytes[])); // require(targets.length == callDatas.length, "Payload length mismatch"); - // // storedMessage = Message('fraz', toAsciiString(targets[0])); - // // Loop over each command and execute the call. - // for (uint256 i = 0; i < targets.length; i++) { - // (bool success, ) = targets[i].call(callDatas[i]); - // require(success, "Command execution failed"); - // } - - - address stakingAddress = abi.decode(payload, (address)); - + require(amount > 0, "Deposit amount must be greater than zero"); address tokenAddress = gatewayWithToken().tokenAddresses(tokenSymbol); - storedMessage = Message(tokenSymbol, 'f'); + storedMessage = Message(tokenSymbol, "f"); IERC20(tokenAddress).transfer(address(this), amount); // Transfer tokens from user IERC20(tokenAddress).approve(stakingAddress, amount); // Approve Aave Pool StakingContract(stakingAddress).stake(amount); // Deposit into Aave - } - } contract Factory is AxelarExecutable { @@ -103,9 +99,6 @@ contract Factory is AxelarExecutable { function createVendor(string memory owner) public returns (address) { address newVendorAddress = address(new Wallet(_gateway, owner)); - string memory newVendor = toAsciiString(newVendorAddress); - - storedMessage = Message(newVendorAddress); return newVendorAddress; } @@ -119,34 +112,22 @@ contract Factory is AxelarExecutable { _send(sourceChain, sourceAddress, vendorAddress); } - function toAsciiString(address x) internal pure returns (string memory) { - bytes memory s = new bytes(40); - for (uint i = 0; i < 20; i++) { - bytes1 b = bytes1(uint8(uint(uint160(x)) / (2**(8*(19 - i))))); - bytes1 hi = bytes1(uint8(b) / 16); - bytes1 lo = bytes1(uint8(b) - 16 * uint8(hi)); - s[2*i] = char(hi); - s[2*i+1] = char(lo); - } - return string(s); - } - function char(bytes1 b) internal pure returns (bytes1 c) { if (uint8(b) < 10) return bytes1(uint8(b) + 0x30); else return bytes1(uint8(b) + 0x57); } - function _send( string calldata destinationChain, string calldata destinationAddress, address message ) internal { // 1. Generate GMP payload - bytes memory executeMsgPayload = abi.encode( - message + bytes memory executeMsgPayload = abi.encode(message); + bytes memory payload = abi.encodePacked( + bytes4(0x00000000), + executeMsgPayload ); - bytes memory payload = abi.encodePacked(bytes4(0x00000000), executeMsgPayload); // 2. Pay for gas gasService.payNativeGasForContractCall{value: msg.value}( @@ -196,6 +177,5 @@ contract Factory is AxelarExecutable { abiTypeArray, argValues ); - } -} \ No newline at end of file +} From bd71ddec5543d484a2855434a1c6e1c25c6eadf8 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 23 Apr 2025 07:52:59 +0500 Subject: [PATCH 26/93] chore(lint): apply linting to axelar-local-dev-cosmos package --- .../docker/agoric/docker-compose.yaml | 30 +- .../docker/axelar/bin/init_axelar.sh | 63 ++- .../docker/axelar/docker-compose.yaml | 30 +- .../docker/traefik/docker-compose.yaml | 4 +- .../docker/wasm/bin/init_wasm.sh | 28 +- .../docker/wasm/docker-compose.yaml | 34 +- .../axelar-local-dev-cosmos/scripts/relay.ts | 2 +- .../scripts/relayFromEth.ts | 2 +- .../scripts/relayToEth.ts | 2 +- .../scripts/relayWithTokens.ts | 2 +- .../axelar-local-dev-cosmos/scripts/start.ts | 2 +- .../axelar-local-dev-cosmos/scripts/stop.ts | 2 +- .../axelar-local-dev-cosmos/src/Command.ts | 29 +- .../src/__tests__/CosmosClient.spec.ts | 26 +- .../src/__tests__/DockerService.spec.ts | 64 +-- .../src/__tests__/IBCRelayerClient.spec.ts | 14 +- .../contracts/ContractCallWithToken.sol | 55 +- .../src/__tests__/contracts/Ownable.sol | 26 +- .../__tests__/contracts/StakingContract.sol | 5 +- .../src/__tests__/lib/fetchLcd.ts | 2 +- .../src/__tests__/path.spec.ts | 19 +- .../src/__tests__/utils.spec.ts | 20 +- .../src/clients/cosmos/CosmosClient.ts | 49 +- .../src/clients/cosmos/index.ts | 2 +- .../src/clients/ibc/IBCRelayerClient.ts | 8 +- .../src/config/index.ts | 4 +- .../src/listeners/eventTypes.ts | 7 +- .../src/listeners/parser.ts | 7 +- packages/axelar-local-dev-cosmos/src/relay.ts | 71 +-- .../src/relayFromEth.ts | 64 +-- .../axelar-local-dev-cosmos/src/relayToEth.ts | 134 +---- .../src/relayTokensToEth.ts | 495 +++++------------- .../src/services/AxelarRelayerService.ts | 86 +-- .../src/services/DockerService.ts | 2 +- packages/axelar-local-dev-cosmos/src/setup.ts | 22 +- .../axelar-local-dev-cosmos/tsconfig.json | 52 +- 36 files changed, 596 insertions(+), 868 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml index 3b3faa9d..d67aa8e4 100644 --- a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml @@ -4,26 +4,26 @@ services: container_name: agoric entrypoint: /bin/bash -c "/root/private/bin/init_agoric.sh && exec ./start_agd.sh" volumes: - - './bin:/root/private/bin' - - './.agoric:/root/private/.agoric' + - "./bin:/root/private/bin" + - "./.agoric:/root/private/.agoric" labels: - - 'traefik.enable=true' + - "traefik.enable=true" # RPC - - 'traefik.http.routers.agoric-rpc.rule=Host(`localhost`) && PathPrefix(`/agoric-rpc`)' - - 'traefik.http.routers.agoric-rpc.entrypoints=web' - - 'traefik.http.routers.agoric-rpc.service=agoric-rpc' - - 'traefik.http.services.agoric-rpc.loadbalancer.server.port=26657' - - 'traefik.http.middlewares.agoric-rpc.stripprefix.prefixes=/agoric-rpc' - - 'traefik.http.routers.agoric-rpc.middlewares=agoric-rpc' + - "traefik.http.routers.agoric-rpc.rule=Host(`localhost`) && PathPrefix(`/agoric-rpc`)" + - "traefik.http.routers.agoric-rpc.entrypoints=web" + - "traefik.http.routers.agoric-rpc.service=agoric-rpc" + - "traefik.http.services.agoric-rpc.loadbalancer.server.port=26657" + - "traefik.http.middlewares.agoric-rpc.stripprefix.prefixes=/agoric-rpc" + - "traefik.http.routers.agoric-rpc.middlewares=agoric-rpc" # LCD - - 'traefik.http.routers.agoric-lcd.rule=Host(`localhost`) && PathPrefix(`/agoric-lcd`)' - - 'traefik.http.routers.agoric-lcd.entrypoints=web' - - 'traefik.http.routers.agoric-lcd.service=agoric-lcd' - - 'traefik.http.services.agoric-lcd.loadbalancer.server.port=1317' - - 'traefik.http.middlewares.agoric-lcd.stripprefix.prefixes=/agoric-lcd' - - 'traefik.http.routers.agoric-lcd.middlewares=agoric-lcd' + - "traefik.http.routers.agoric-lcd.rule=Host(`localhost`) && PathPrefix(`/agoric-lcd`)" + - "traefik.http.routers.agoric-lcd.entrypoints=web" + - "traefik.http.routers.agoric-lcd.service=agoric-lcd" + - "traefik.http.services.agoric-lcd.loadbalancer.server.port=1317" + - "traefik.http.middlewares.agoric-lcd.stripprefix.prefixes=/agoric-lcd" + - "traefik.http.routers.agoric-lcd.middlewares=agoric-lcd" networks: default: name: traefik_default diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh b/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh index b10ce83f..578bba89 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh +++ b/packages/axelar-local-dev-cosmos/docker/axelar/bin/init_axelar.sh @@ -12,7 +12,7 @@ DEFAULT_KEYS_FLAGS="--keyring-backend test --home ${HOME}" ASSETS="100000000000000000000${DENOM},10000000000000000uausdc" # Initializing a new blockchain with identifier ${CHAIN_ID} in the specified home directory -axelard init "$MONIKER" --chain-id ${CHAIN_ID} --home ${HOME} > /dev/null 2>&1 && echo "Initialized new blockchain with chain ID ${CHAIN_ID}" +axelard init "$MONIKER" --chain-id ${CHAIN_ID} --home ${HOME} >/dev/null 2>&1 && echo "Initialized new blockchain with chain ID ${CHAIN_ID}" # edit the app.toml file to enable the API and swagger sed -i '/\[api\]/,/\[/ s/enable = false/enable = true/' "$HOME"/config/app.toml @@ -22,14 +22,14 @@ sed -i '/\[api\]/,/\[/ s/swagger = false/swagger = true/' "$HOME"/config/app.tom sed -i "s/\"stake\"/\"$DENOM\"/" "$HOME"/config/genesis.json && echo "Updated staking token to $DENOM" # Counter for poll number, which is reset when chain is restarted -echo '0' > $HOME/poll-counter.txt +echo '0' >$HOME/poll-counter.txt chmod 666 $HOME/poll-counter.txt mnemonic="sunset proud calm real denial process fish coconut sad glass toward duty argue aisle rack arrive bleak suffer invest general animal lift swarm front" gov1_mnemonic="smile unveil sketch gaze length bulb goddess street case exact table fetch robust chronic power choice endorse toward pledge dish access sad illegal dance" final_output=$( - jq '.app_state.nexus.chain_states += + jq '.app_state.nexus.chain_states += [{ "chain": { "name": "agoric", @@ -91,7 +91,7 @@ final_output=$( "proxy": "axelar1kcreerqvlvtful5r6hp8nt7mj4fd0z0rq9mxk5", "active": true }] - ' | jq '.app_state.feegrant.allowances += + ' | jq '.app_state.feegrant.allowances += [{ "granter": "axelar1sufx2ryp5ndxdhl3zftdnsjwrgqqgd3q6sxfjs", "grantee": "axelar1kcreerqvlvtful5r6hp8nt7mj4fd0z0rq9mxk5", @@ -104,25 +104,25 @@ final_output=$( }] } }] - ') - -echo $final_output | jq . > "$HOME"/config/genesis.json + ' +) -cat "$HOME"/config/genesis.json +echo $final_output | jq . >"$HOME"/config/genesis.json +cat "$HOME"/config/genesis.json # Adding a new key named 'owner' with a test keyring-backend in the specified home directory # and storing the mnemonic in the mnemonic.txt file echo ${mnemonic} | axelard keys add owner --recover ${DEFAULT_KEYS_FLAGS} 2>&1 | tail -n 1 -echo ${mnemonic} | tr -d "\n" > ${HOME}/mnemonic.txt +echo ${mnemonic} | tr -d "\n" >${HOME}/mnemonic.txt echo "Added new key 'owner'" echo ${gov1_mnemonic} | axelard keys add gov1 --recover ${DEFAULT_KEYS_FLAGS} 2>&1 | tail -n 1 -echo ${gov1_mnemonic} | tr -d "\n" > ${HOME}/mnemonic-gov1.txt +echo ${gov1_mnemonic} | tr -d "\n" >${HOME}/mnemonic-gov1.txt echo "Added new key 'gov1'" gov2_mnemonic=$(axelard keys add gov2 ${DEFAULT_KEYS_FLAGS} 2>&1 | tail -n 1) -echo ${gov2_mnemonic} | tr -d "\n" > ${HOME}/mnemonic-gov2.txt +echo ${gov2_mnemonic} | tr -d "\n" >${HOME}/mnemonic-gov2.txt echo "Added new key 'gov2'" $(axelard keys add governance --multisig "gov1,gov2" --multisig-threshold 1 --nosort ${DEFAULT_KEYS_FLAGS} 2>&1 | tail -n 1) @@ -130,28 +130,28 @@ echo "Added new key 'governance'" # Adding a new genesis account named 'owner' with an initial balance of 100000000000000000000 in the blockchain axelard add-genesis-account owner ${ASSETS} \ ---home ${HOME} \ ---keyring-backend test > /dev/null 2>&1 && echo "Added 'owner' to genesis account" + --home ${HOME} \ + --keyring-backend test >/dev/null 2>&1 && echo "Added 'owner' to genesis account" axelard add-genesis-account gov1 ${ASSETS} \ ---home ${HOME} \ ---keyring-backend test > /dev/null 2>&1 && echo "Added 'gov1' to genesis account" + --home ${HOME} \ + --keyring-backend test >/dev/null 2>&1 && echo "Added 'gov1' to genesis account" axelard add-genesis-account gov2 ${ASSETS} \ ---home ${HOME} \ ---keyring-backend test > /dev/null 2>&1 && echo "Added 'gov2' to genesis account" + --home ${HOME} \ + --keyring-backend test >/dev/null 2>&1 && echo "Added 'gov2' to genesis account" axelard add-genesis-account governance ${ASSETS} \ ---home ${HOME} \ ---keyring-backend test > /dev/null 2>&1 && echo "Added 'governance' to genesis account" + --home ${HOME} \ + --keyring-backend test >/dev/null 2>&1 && echo "Added 'governance' to genesis account" axelard set-genesis-mint --inflation-min 0 --inflation-max 0 --inflation-max-rate-change 0 --home ${HOME} axelard set-genesis-gov --minimum-deposit "100000000${DENOM}" --max-deposit-period 90s --voting-period 90s --home ${HOME} axelard set-genesis-reward --external-chain-voting-inflation-rate 0 --home ${HOME} axelard set-genesis-slashing --signed-blocks-window 35000 --min-signed-per-window 0.50 --home ${HOME} \ ---downtime-jail-duration 600s --slash-fraction-double-sign 0.02 --slash-fraction-downtime 0.0001 --home ${HOME} + --downtime-jail-duration 600s --slash-fraction-double-sign 0.02 --slash-fraction-downtime 0.0001 --home ${HOME} axelard set-genesis-snapshot --min-proxy-balance 5000000 --home ${HOME} -axelard set-genesis-staking --unbonding-period 168h --max-validators 50 --bond-denom "$DENOM" --home ${HOME} +axelard set-genesis-staking --unbonding-period 168h --max-validators 50 --bond-denom "$DENOM" --home ${HOME} axelard set-genesis-chain-params evm Ethereum --evm-network-name ethereum --evm-chain-id 5 --network ethereum --confirmation-height 1 --revote-locking-period 5 --home ${HOME} GOV_1_KEY="$(axelard keys show gov1 ${DEFAULT_KEYS_FLAGS} -p)" @@ -161,22 +161,21 @@ axelard validate-genesis --home ${HOME} # Generating a new genesis transaction for 'owner' delegating 70000000${DENOM} in the blockchain with the specified chain-id axelard gentx owner 70000000${DENOM} \ ---home ${HOME} \ ---keyring-backend test \ ---moniker ${MONIKER} \ ---chain-id ${CHAIN_ID} > /dev/null 2>&1 && echo "Generated genesis transaction for 'owner'" + --home ${HOME} \ + --keyring-backend test \ + --moniker ${MONIKER} \ + --chain-id ${CHAIN_ID} >/dev/null 2>&1 && echo "Generated genesis transaction for 'owner'" # Collecting all genesis transactions to form the genesis block axelard collect-gentxs \ ---home ${HOME} > /dev/null 2>&1 && echo "Collected genesis transactions" + --home ${HOME} >/dev/null 2>&1 && echo "Collected genesis transactions" # Read the content of the local file and append it to the file inside the Docker container -cat /root/private/bin/libs/evm-rpc.toml >> "$HOME"/config/config.toml +cat /root/private/bin/libs/evm-rpc.toml >>"$HOME"/config/config.toml # Starting the blockchain node with the specified home directory axelard start --home ${HOME} \ ---minimum-gas-prices 0${DENOM} \ ---moniker ${MONIKER} \ ---rpc.laddr "tcp://0.0.0.0:26657" \ ---log_level debug - + --minimum-gas-prices 0${DENOM} \ + --moniker ${MONIKER} \ + --rpc.laddr "tcp://0.0.0.0:26657" \ + --log_level debug diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml index c9ebc7fc..bc042f79 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml @@ -5,26 +5,26 @@ services: entrypoint: sh -l -c /root/private/bin/init_axelar.sh platform: linux/amd64 volumes: - - './bin:/root/private/bin' - - './.axelar:/root/private/.axelar' + - "./bin:/root/private/bin" + - "./.axelar:/root/private/.axelar" labels: - - 'traefik.enable=true' + - "traefik.enable=true" # RPC - - 'traefik.http.routers.axelar-rpc.rule=Host(`localhost`) && PathPrefix(`/axelar-rpc`)' - - 'traefik.http.services.axelar-rpc.loadbalancer.server.port=26657' - - 'traefik.http.routers.axelar-rpc.entrypoints=web' - - 'traefik.http.routers.axelar-rpc.service=axelar-rpc' - - 'traefik.http.middlewares.axelar-rpc.stripprefix.prefixes=/axelar-rpc' - - 'traefik.http.routers.axelar-rpc.middlewares=axelar-rpc' + - "traefik.http.routers.axelar-rpc.rule=Host(`localhost`) && PathPrefix(`/axelar-rpc`)" + - "traefik.http.services.axelar-rpc.loadbalancer.server.port=26657" + - "traefik.http.routers.axelar-rpc.entrypoints=web" + - "traefik.http.routers.axelar-rpc.service=axelar-rpc" + - "traefik.http.middlewares.axelar-rpc.stripprefix.prefixes=/axelar-rpc" + - "traefik.http.routers.axelar-rpc.middlewares=axelar-rpc" # LCD - - 'traefik.http.routers.axelar-lcd.rule=Host(`localhost`) && PathPrefix(`/axelar-lcd`)' - - 'traefik.http.services.axelar-lcd.loadbalancer.server.port=1317' - - 'traefik.http.routers.axelar-lcd.entrypoints=web' - - 'traefik.http.routers.axelar-lcd.service=axelar-lcd' - - 'traefik.http.middlewares.axelar-lcd.stripprefix.prefixes=/axelar-lcd' - - 'traefik.http.routers.axelar-lcd.middlewares=axelar-lcd' + - "traefik.http.routers.axelar-lcd.rule=Host(`localhost`) && PathPrefix(`/axelar-lcd`)" + - "traefik.http.services.axelar-lcd.loadbalancer.server.port=1317" + - "traefik.http.routers.axelar-lcd.entrypoints=web" + - "traefik.http.routers.axelar-lcd.service=axelar-lcd" + - "traefik.http.middlewares.axelar-lcd.stripprefix.prefixes=/axelar-lcd" + - "traefik.http.routers.axelar-lcd.middlewares=axelar-lcd" networks: default: name: traefik_default diff --git a/packages/axelar-local-dev-cosmos/docker/traefik/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/traefik/docker-compose.yaml index 358aa815..37dc4414 100644 --- a/packages/axelar-local-dev-cosmos/docker/traefik/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/traefik/docker-compose.yaml @@ -4,8 +4,8 @@ services: container_name: traefik command: --api.insecure=true --providers.docker=true --entrypoints.web.address=:80 ports: - - '80:80' - - '28080:8080' + - "80:80" + - "28080:8080" volumes: - /var/run/docker.sock:/var/run/docker.sock networks: diff --git a/packages/axelar-local-dev-cosmos/docker/wasm/bin/init_wasm.sh b/packages/axelar-local-dev-cosmos/docker/wasm/bin/init_wasm.sh index ffdce9c9..e782b85d 100755 --- a/packages/axelar-local-dev-cosmos/docker/wasm/bin/init_wasm.sh +++ b/packages/axelar-local-dev-cosmos/docker/wasm/bin/init_wasm.sh @@ -9,7 +9,7 @@ HOME=/root/private/.${CHAIN_ID} rm -rf ${HOME} # Initializing a new blockchain with identifier ${CHAIN_ID} in the specified home directory -wasmd init "$MONIKER" --chain-id ${CHAIN_ID} --home ${HOME} > /dev/null 2>&1 && echo "Initialized new blockchain with chain ID ${CHAIN_ID}" +wasmd init "$MONIKER" --chain-id ${CHAIN_ID} --home ${HOME} >/dev/null 2>&1 && echo "Initialized new blockchain with chain ID ${CHAIN_ID}" # edit the app.toml file to enable the API and swagger sed -i '/\[api\]/,/\[/ s/enable = false/enable = true/' "$HOME"/config/app.toml @@ -25,29 +25,29 @@ sed -i "s/\"stake\"/\"$DENOM\"/" "$HOME"/config/genesis.json && echo "Updated st # Adding a new key named 'owner' with a test keyring-backend in the specified home directory # and storing the mnemonic in the mnemonic.txt file mnemonic=$(wasmd keys add owner --keyring-backend test --home ${HOME} 2>&1 | tail -n 1) -echo ${mnemonic} | tr -d "\n" > ${HOME}/mnemonic.txt +echo ${mnemonic} | tr -d "\n" >${HOME}/mnemonic.txt echo "Added new key 'owner'" # Adding a new genesis account named 'owner' with an initial balance of 100000000000000000000uwasm in the blockchain wasmd genesis add-genesis-account owner 100000000000000000000${DENOM} \ ---home ${HOME} \ ---keyring-backend test > /dev/null 2>&1 && echo "Added 'owner' to genesis account" + --home ${HOME} \ + --keyring-backend test >/dev/null 2>&1 && echo "Added 'owner' to genesis account" # Generating a new genesis transaction for 'owner' delegating 70000000${DENOM} in the blockchain with the specified chain-id wasmd genesis gentx owner 60000000${DENOM} \ ---home ${HOME} \ ---keyring-backend test \ ---moniker ${MONIKER} \ ---chain-id ${CHAIN_ID} > /dev/null 2>&1 && echo "Generated genesis transaction for 'owner'" + --home ${HOME} \ + --keyring-backend test \ + --moniker ${MONIKER} \ + --chain-id ${CHAIN_ID} >/dev/null 2>&1 && echo "Generated genesis transaction for 'owner'" # Collecting all genesis transactions to form the genesis block wasmd genesis collect-gentxs \ ---home ${HOME} > /dev/null 2>&1 && echo "Collected genesis transactions" + --home ${HOME} >/dev/null 2>&1 && echo "Collected genesis transactions" # Starting the blockchain node with the specified home directory wasmd start --home ${HOME} \ ---minimum-gas-prices 0${DENOM} \ ---moniker ${MONIKER} \ ---api.enable=true \ ---api.swagger=true \ ---rpc.laddr "tcp://0.0.0.0:26657" + --minimum-gas-prices 0${DENOM} \ + --moniker ${MONIKER} \ + --api.enable=true \ + --api.swagger=true \ + --rpc.laddr "tcp://0.0.0.0:26657" diff --git a/packages/axelar-local-dev-cosmos/docker/wasm/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/wasm/docker-compose.yaml index 12461b75..28a1b1b5 100644 --- a/packages/axelar-local-dev-cosmos/docker/wasm/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/wasm/docker-compose.yaml @@ -1,30 +1,30 @@ -version: "3.8" +version: '3.8' services: wasm: image: cosmwasm/wasmd:v0.42.0 container_name: wasm - command: "/root/private/bin/init_wasm.sh" + command: '/root/private/bin/init_wasm.sh' volumes: - - "./bin:/root/private/bin" - - "./.wasm:/root/private/.wasm" + - './bin:/root/private/bin' + - './.wasm:/root/private/.wasm' labels: - - "traefik.enable=true" + - 'traefik.enable=true' # RPC - - "traefik.http.routers.wasm-rpc.rule=Host(`localhost`) && PathPrefix(`/wasm-rpc`)" - - "traefik.http.routers.wasm-rpc.entrypoints=web" - - "traefik.http.routers.wasm-rpc.service=wasm-rpc" - - "traefik.http.services.wasm-rpc.loadbalancer.server.port=26657" - - "traefik.http.middlewares.wasm-rpc.stripprefix.prefixes=/wasm-rpc" - - "traefik.http.routers.wasm-rpc.middlewares=wasm-rpc" + - 'traefik.http.routers.wasm-rpc.rule=Host(`localhost`) && PathPrefix(`/wasm-rpc`)' + - 'traefik.http.routers.wasm-rpc.entrypoints=web' + - 'traefik.http.routers.wasm-rpc.service=wasm-rpc' + - 'traefik.http.services.wasm-rpc.loadbalancer.server.port=26657' + - 'traefik.http.middlewares.wasm-rpc.stripprefix.prefixes=/wasm-rpc' + - 'traefik.http.routers.wasm-rpc.middlewares=wasm-rpc' # LCD - - "traefik.http.routers.wasm-lcd.rule=Host(`localhost`) && PathPrefix(`/wasm-lcd`)" - - "traefik.http.routers.wasm-lcd.entrypoints=web" - - "traefik.http.routers.wasm-lcd.service=wasm-lcd" - - "traefik.http.services.wasm-lcd.loadbalancer.server.port=1317" - - "traefik.http.middlewares.wasm-lcd.stripprefix.prefixes=/wasm-lcd" - - "traefik.http.routers.wasm-lcd.middlewares=wasm-lcd" + - 'traefik.http.routers.wasm-lcd.rule=Host(`localhost`) && PathPrefix(`/wasm-lcd`)' + - 'traefik.http.routers.wasm-lcd.entrypoints=web' + - 'traefik.http.routers.wasm-lcd.service=wasm-lcd' + - 'traefik.http.services.wasm-lcd.loadbalancer.server.port=1317' + - 'traefik.http.middlewares.wasm-lcd.stripprefix.prefixes=/wasm-lcd' + - 'traefik.http.routers.wasm-lcd.middlewares=wasm-lcd' networks: default: name: traefik_default diff --git a/packages/axelar-local-dev-cosmos/scripts/relay.ts b/packages/axelar-local-dev-cosmos/scripts/relay.ts index ceafce96..aa3b134f 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relay.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relay.ts @@ -1,3 +1,3 @@ -import { relayBasic } from "../src/relay"; +import { relayBasic } from '../src/relay'; relayBasic(); diff --git a/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts b/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts index bc165e45..5516ff03 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts @@ -1,3 +1,3 @@ -import { relayDataFromEth } from "../src/relayFromEth"; +import { relayDataFromEth } from '../src/relayFromEth'; relayDataFromEth(); diff --git a/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts b/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts index a8dc8fcd..71b19d6d 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts @@ -1,3 +1,3 @@ -import { relayDataToEth } from "../src/relayToEth"; +import { relayDataToEth } from '../src/relayToEth'; relayDataToEth(); diff --git a/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts b/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts index 9b12f7b8..f3a597c6 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts @@ -1,3 +1,3 @@ -import { relayDataToEth } from "../src/relayTokensToEth"; +import { relayDataToEth } from '../src/relayTokensToEth'; relayDataToEth(); diff --git a/packages/axelar-local-dev-cosmos/scripts/start.ts b/packages/axelar-local-dev-cosmos/scripts/start.ts index e00ffef5..e48ce5f2 100644 --- a/packages/axelar-local-dev-cosmos/scripts/start.ts +++ b/packages/axelar-local-dev-cosmos/scripts/start.ts @@ -1,3 +1,3 @@ -import { startChains } from "../src/setup"; +import { startChains } from '../src/setup'; startChains(); diff --git a/packages/axelar-local-dev-cosmos/scripts/stop.ts b/packages/axelar-local-dev-cosmos/scripts/stop.ts index 5558c3a1..89248f62 100644 --- a/packages/axelar-local-dev-cosmos/scripts/stop.ts +++ b/packages/axelar-local-dev-cosmos/scripts/stop.ts @@ -1,3 +1,3 @@ -import { stopAll } from "../src/setup"; +import { stopAll } from '../src/setup'; stopAll(); diff --git a/packages/axelar-local-dev-cosmos/src/Command.ts b/packages/axelar-local-dev-cosmos/src/Command.ts index 0c259a44..b24f60e2 100644 --- a/packages/axelar-local-dev-cosmos/src/Command.ts +++ b/packages/axelar-local-dev-cosmos/src/Command.ts @@ -55,12 +55,15 @@ export class Command { ], [], async (wasmClient: CosmosClient) => { - const { client } = wasmClient; const senderAddress = wasmClient.getOwnerAccount(); // Confirm that event has fired on the EVM chain - console.log("[Ethereum Relayer]", "Confirming Gateway Tx", args.transactionHash); + console.log( + "[Ethereum Relayer]", + "Confirming Gateway Tx", + args.transactionHash + ); const confirmGatewayTxPayload = getConfirmGatewayTxPayload( senderAddress, args.from, @@ -71,7 +74,7 @@ export class Command { confirmGatewayTxPayload, "auto" ); - + // Vote on the poll created by the axelar (normally done by the validator) const pollId = await incrementPollCounter(); console.log("[Ethereum Relayer]", "Voting on poll", pollId); @@ -86,17 +89,17 @@ export class Command { voteRequestPayload, "auto" ); - + // Route the message created by the poll to the destination chain const eventId = VoteRequestResponse.events - .find((e: any) => e.type === "axelar.evm.v1beta1.EVMEventConfirmed") - ?.attributes.find((a: any) => a.key === "event_id") - ?.value.slice(1, -1); - + .find((e: any) => e.type === "axelar.evm.v1beta1.EVMEventConfirmed") + ?.attributes.find((a: any) => a.key === "event_id") + ?.value.slice(1, -1); + if (!eventId) { throw new Error("Event ID not found in EVMEventConfirmed event"); } - + console.log("[Ethereum Relayer]", "Routing event", eventId); const routeMessagePayload = getRouteMessagePayload( wasmClient.getOwnerAccount(), @@ -108,8 +111,12 @@ export class Command { routeMessagePayload, "auto" ); - console.log("[Ethereum Relayer]", "Event routed to agoric", routeMessageResponse.transactionHash); - + console.log( + "[Ethereum Relayer]", + "Event routed to agoric", + routeMessageResponse.transactionHash + ); + relayData.callContract[commandId].execution = routeMessageResponse.transactionHash; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/CosmosClient.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/CosmosClient.spec.ts index 48e7d86d..30745247 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/CosmosClient.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/CosmosClient.spec.ts @@ -1,33 +1,33 @@ -import path from "path"; -import { CosmosClient } from ".."; +import path from 'path'; +import { CosmosClient } from '..'; -describe("CosmosClient", () => { +describe('CosmosClient', () => { let wasmClient: CosmosClient; let axelarClient: CosmosClient; beforeAll(async () => { - wasmClient = await CosmosClient.create("wasm"); - axelarClient = await CosmosClient.create("axelar"); + wasmClient = await CosmosClient.create('wasm'); + axelarClient = await CosmosClient.create('axelar'); }); - it("should be able to upload wasm contract", async () => { - const _path = path.resolve(__dirname, "../..", "wasm/multi_send.wasm"); + it('should be able to upload wasm contract', async () => { + const _path = path.resolve(__dirname, '../..', 'wasm/multi_send.wasm'); const response = await wasmClient.uploadWasm(_path); expect(response).toBeDefined(); }); - it("should be able to send tokens to given address on wasm", async () => { - const recipient = "wasm1puut77ku823785u3c7aalwqdrawe3lnjgwt89v"; - const amount = "1000000"; + it('should be able to send tokens to given address on wasm', async () => { + const recipient = 'wasm1puut77ku823785u3c7aalwqdrawe3lnjgwt89v'; + const amount = '1000000'; const initialBalance = await wasmClient.getBalance(recipient); await wasmClient.fundWallet(recipient, amount); const balance = await wasmClient.getBalance(recipient); expect(parseInt(balance)).toBe(parseInt(initialBalance) + parseInt(amount)); }); - it("should be able to send tokens to given address on axelar", async () => { - const recipient = "axelar1puut77ku823785u3c7aalwqdrawe3lnjxuv68x"; - const amount = "1000000"; + it('should be able to send tokens to given address on axelar', async () => { + const recipient = 'axelar1puut77ku823785u3c7aalwqdrawe3lnjxuv68x'; + const amount = '1000000'; const initialBalance = await axelarClient.getBalance(recipient); await axelarClient.fundWallet(recipient, amount); const balance = await axelarClient.getBalance(recipient); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts index 51bbae64..eab3ed42 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts @@ -1,19 +1,19 @@ -import { setLogger } from "@axelar-network/axelar-local-dev"; -import { exportOwnerAccountFromContainer } from "../utils"; -import { fetchAxelarLcd } from "./lib/fetchLcd"; -import { CosmosClient } from ".."; -import fetch from "node-fetch"; +import { setLogger } from '@axelar-network/axelar-local-dev'; +import { exportOwnerAccountFromContainer } from '../utils'; +import { fetchAxelarLcd } from './lib/fetchLcd'; +import { CosmosClient } from '..'; +import fetch from 'node-fetch'; setLogger(() => undefined); -describe("DockerService", () => { - it("should start containers successfully", async () => { - const testLcd = "cosmos/base/tendermint/v1beta1/node_info"; - const healthAxelarRpc = await fetch("http://localhost/axelar-rpc"); +describe('DockerService', () => { + it('should start containers successfully', async () => { + const testLcd = 'cosmos/base/tendermint/v1beta1/node_info'; + const healthAxelarRpc = await fetch('http://localhost/axelar-rpc'); const healthAxelarLcd = await fetch( `http://localhost/axelar-lcd/${testLcd}` ); - const healthWasmRpc = await fetch("http://localhost/wasm-rpc"); + const healthWasmRpc = await fetch('http://localhost/wasm-rpc'); const healthWasmLcd = await fetch(`http://localhost/wasm-lcd/${testLcd}`); expect(healthAxelarRpc.status).toBe(200); @@ -22,8 +22,8 @@ describe("DockerService", () => { expect(healthWasmLcd.status).toBe(200); }); - it("should have some balance in the owner account", async () => { - const owner = await exportOwnerAccountFromContainer("wasm"); + it('should have some balance in the owner account', async () => { + const owner = await exportOwnerAccountFromContainer('wasm'); const cosmosClient = await CosmosClient.create(); const balance = await cosmosClient.getBalance(owner.address); @@ -31,49 +31,49 @@ describe("DockerService", () => { expect(parseInt(balance)).toBeGreaterThan(1); }); - it("should have registered evm chain", async () => { - const response = await fetchAxelarLcd("axelar/evm/v1beta1/params/Ethereum"); + it('should have registered evm chain', async () => { + const response = await fetchAxelarLcd('axelar/evm/v1beta1/params/Ethereum'); const { token_code, network, chain, burnable } = response.params; expect(token_code).toBeDefined(); expect(burnable).toBeDefined(); - expect(network).toBe("ethereum"); - expect(chain).toBe("Ethereum"); + expect(network).toBe('ethereum'); + expect(chain).toBe('Ethereum'); }); - it("should have registered wasm chain", async () => { + it('should have registered wasm chain', async () => { const response = await fetchAxelarLcd( - "axelar/nexus/v1beta1/chain_state/wasm" + 'axelar/nexus/v1beta1/chain_state/wasm' ); const { activated, chain } = response.state; expect(chain).toEqual({ - name: "wasm", + name: 'wasm', supports_foreign_assets: true, - key_type: "KEY_TYPE_NONE", - module: "axelarnet", + key_type: 'KEY_TYPE_NONE', + module: 'axelarnet', }); expect(activated).toBe(true); }); - it("should have chain maintainer for ethereum", async () => { + it('should have chain maintainer for ethereum', async () => { const response = await fetchAxelarLcd( - "axelar/nexus/v1beta1/chain_maintainers/ethereum" + 'axelar/nexus/v1beta1/chain_maintainers/ethereum' ); expect(response.maintainers.length).toBeGreaterThan(0); }); - it("should have channel id between axelar <-> wasm", async () => { - const response = await fetchAxelarLcd("ibc/core/channel/v1/channels"); + it('should have channel id between axelar <-> wasm', async () => { + const response = await fetchAxelarLcd('ibc/core/channel/v1/channels'); expect(response.channels[0]).toEqual({ - state: "STATE_OPEN", - ordering: "ORDER_UNORDERED", + state: 'STATE_OPEN', + ordering: 'ORDER_UNORDERED', counterparty: { - port_id: "transfer", - channel_id: "channel-0", + port_id: 'transfer', + channel_id: 'channel-0', }, connection_hops: [expect.any(String)], - version: "ics20-1", - port_id: "transfer", - channel_id: "channel-0", + version: 'ics20-1', + port_id: 'transfer', + channel_id: 'channel-0', }); }); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts index 6a30e0e8..f66307e4 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts @@ -1,8 +1,8 @@ -import { IBCRelayerClient } from "../clients"; -import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; +import { IBCRelayerClient } from '../clients'; +import { DirectSecp256k1HdWallet } from '@cosmjs/proto-signing'; -describe("IBCRelayerClient", () => { - it.skip("should be able to create a connection and channel", async () => { +describe('IBCRelayerClient', () => { + it.skip('should be able to create a connection and channel', async () => { const relayerClient = await IBCRelayerClient.create(); const response = await relayerClient.initConnection(); @@ -10,14 +10,14 @@ describe("IBCRelayerClient", () => { expect(response.axelar).toBeDefined(); expect(response.wasm).toBeDefined(); - const response2 = await relayerClient.createChannel("B"); + const response2 = await relayerClient.createChannel('B'); expect(response2).toBeDefined(); expect(response2!.src).toBeDefined(); expect(response2!.dest).toBeDefined(); }); - it("should create a wallet from a mnemonic if provided", async () => { + it('should create a wallet from a mnemonic if provided', async () => { const mockMnemonic = await DirectSecp256k1HdWallet.generate(12).then( (w) => w.mnemonic ); @@ -28,7 +28,7 @@ describe("IBCRelayerClient", () => { ); }); - it("should generate a new wallet if no mnemonic is provided", async () => { + it('should generate a new wallet if no mnemonic is provided', async () => { const result = await IBCRelayerClient.create(); expect(result).toBeDefined(); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol index 5061e524..43df67c5 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol @@ -1,9 +1,9 @@ //SPDX-License-Identifier: MIT pragma solidity ^0.8.0; -import { AxelarExecutableWithToken } from '@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol'; -import { IERC20 } from '@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol'; -import { IAxelarGasService } from '@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol'; +import {AxelarExecutableWithToken} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol"; +import {IERC20} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol"; +import {IAxelarGasService} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol"; /** * @title Call Contract With Token @@ -12,8 +12,20 @@ import { IAxelarGasService } from '@updated-axelar-network/axelar-gmp-sdk-solidi contract CallContractWithToken is AxelarExecutableWithToken { IAxelarGasService public immutable gasService; - event Executed(bytes32 commandId, string sourceChain, string sourceAddress, bytes payload); - event ExecutedWithToken(bytes32 commandId, string sourceChain, string sourceAddress, bytes payload, string tokenSymbol, uint256 amount); + event Executed( + bytes32 commandId, + string sourceChain, + string sourceAddress, + bytes payload + ); + event ExecutedWithToken( + bytes32 commandId, + string sourceChain, + string sourceAddress, + bytes payload, + string tokenSymbol, + uint256 amount + ); struct Message { string sender; @@ -26,10 +38,13 @@ contract CallContractWithToken is AxelarExecutableWithToken { * @param _gateway address of axl gateway on deployed chain * @param _gasReceiver address of axl gas service on deployed chain */ - constructor(address _gateway, address _gasReceiver) AxelarExecutableWithToken(_gateway) { + constructor( + address _gateway, + address _gasReceiver + ) AxelarExecutableWithToken(_gateway) { gasService = IAxelarGasService(_gasReceiver); - storedMessage = Message('fraz', 'init'); + storedMessage = Message("fraz", "init"); } /** @@ -48,13 +63,13 @@ contract CallContractWithToken is AxelarExecutableWithToken { string memory symbol, uint256 amount ) external payable { - require(msg.value > 0, 'Gas payment is required'); + require(msg.value > 0, "Gas payment is required"); address tokenAddress = gatewayWithToken().tokenAddresses(symbol); IERC20(tokenAddress).transferFrom(msg.sender, address(this), amount); IERC20(tokenAddress).approve(address(gatewayWithToken()), amount); bytes memory payload = abi.encode(destinationAddresses); - gasService.payNativeGasForContractCallWithToken{ value: msg.value }( + gasService.payNativeGasForContractCallWithToken{value: msg.value}( address(this), destinationChain, destinationAddress, @@ -63,7 +78,13 @@ contract CallContractWithToken is AxelarExecutableWithToken { amount, msg.sender ); - gatewayWithToken().callContractWithToken(destinationChain, destinationAddress, payload, symbol, amount); + gatewayWithToken().callContractWithToken( + destinationChain, + destinationAddress, + payload, + symbol, + amount + ); } function _execute( @@ -90,18 +111,24 @@ contract CallContractWithToken is AxelarExecutableWithToken { string calldata tokenSymbol, uint256 amount ) internal override { - storedMessage = Message('fraz', tokenSymbol); + storedMessage = Message("fraz", tokenSymbol); address[] memory recipients = abi.decode(payload, (address[])); address tokenAddress = gatewayWithToken().tokenAddresses(tokenSymbol); - uint256 sentAmount = amount / recipients.length; for (uint256 i = 0; i < recipients.length; i++) { IERC20(tokenAddress).transfer(recipients[i], sentAmount); } - emit ExecutedWithToken(commandId, sourceChain, sourceAddress, payload, tokenSymbol, amount); + emit ExecutedWithToken( + commandId, + sourceChain, + sourceAddress, + payload, + tokenSymbol, + amount + ); } function _execute( @@ -115,4 +142,4 @@ contract CallContractWithToken is AxelarExecutableWithToken { ); storedMessage = Message(sender, message); } -} \ No newline at end of file +} diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Ownable.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Ownable.sol index fb64c02a..1282c0cd 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Ownable.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Ownable.sol @@ -28,7 +28,10 @@ abstract contract Ownable { */ error OwnableInvalidOwner(string owner); - event OwnershipTransferred(string indexed previousOwner, string indexed newOwner); + event OwnershipTransferred( + string indexed previousOwner, + string indexed newOwner + ); /** * @dev Initializes the contract setting the address provided by the deployer as the initial owner. @@ -58,7 +61,9 @@ abstract contract Ownable { /** * @dev Throws if the sender is not the owner. */ - function _checkOwner(string calldata incomingAddress) internal view virtual { + function _checkOwner( + string calldata incomingAddress + ) internal view virtual { if (keccak256(bytes(owner())) != keccak256(bytes(incomingAddress))) { revert OwnableUnauthorizedAccount(incomingAddress); } @@ -71,15 +76,24 @@ abstract contract Ownable { * NOTE: Renouncing ownership will leave the contract without an owner, * thereby disabling any functionality that is only available to the owner. */ - function renounceOwnership(string calldata currentOwner) public virtual onlyOwner(currentOwner) { - _transferOwnership(string(abi.encodePacked("0x0000000000000000000000000000000000000000"))); + function renounceOwnership( + string calldata currentOwner + ) public virtual onlyOwner(currentOwner) { + _transferOwnership( + string( + abi.encodePacked("0x0000000000000000000000000000000000000000") + ) + ); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ - function transferOwnership(string calldata oldOwner, string calldata newOwner) public virtual onlyOwner(oldOwner) { + function transferOwnership( + string calldata oldOwner, + string calldata newOwner + ) public virtual onlyOwner(oldOwner) { // if (newOwner == address(0)) { // revert OwnableInvalidOwner(address(0)); // } @@ -95,4 +109,4 @@ abstract contract Ownable { _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } -} \ No newline at end of file +} diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol index 67797ed8..3c57a8f4 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol @@ -26,7 +26,10 @@ contract StakingContract is ERC20 { function unstake(uint256 _amount) external { require(_amount > 0, "Cannot unstake 0 tokens"); - require(stakedBalances[msg.sender] >= _amount, "Insufficient staked balance"); + require( + stakedBalances[msg.sender] >= _amount, + "Insufficient staked balance" + ); stakedBalances[msg.sender] -= _amount; totalStaked -= _amount; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts b/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts index 1c62660d..c33a6c1b 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts @@ -1,4 +1,4 @@ -import fetch from "node-fetch"; +import fetch from 'node-fetch'; export function fetchAxelarLcd(endpoint?: string) { return fetch(`http://localhost/axelar-lcd/${endpoint}`).then((res) => diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts index abae9245..5ca6383b 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts @@ -1,19 +1,18 @@ -import { Path } from "../path"; -import path from "path"; +import { Path } from '../path'; -describe("path", () => { - it("should define path correctly", () => { +describe('path', () => { + it('should define path correctly', () => { expect(Path.base).toContain( - "axelar-local-dev/packages/axelar-local-dev-cosmos" + 'axelar-local-dev/packages/axelar-local-dev-cosmos' ); expect(Path.info).toContain( - "axelar-local-dev/packages/axelar-local-dev-cosmos/info" + 'axelar-local-dev/packages/axelar-local-dev-cosmos/info' ); - expect(Path.docker("axelar")).toContain( - "axelar-local-dev/packages/axelar-local-dev-cosmos/docker/axelar" + expect(Path.docker('axelar')).toContain( + 'axelar-local-dev/packages/axelar-local-dev-cosmos/docker/axelar' ); - expect(Path.docker("wasm")).toContain( - "axelar-local-dev/packages/axelar-local-dev-cosmos/docker/wasm" + expect(Path.docker('wasm')).toContain( + 'axelar-local-dev/packages/axelar-local-dev-cosmos/docker/wasm' ); }); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/utils.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/utils.spec.ts index 44d13d9b..5321add8 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/utils.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/utils.spec.ts @@ -1,20 +1,20 @@ -import { decodeVersionedPayload } from "../utils"; +import { decodeVersionedPayload } from '../utils'; -describe("utils", () => { - it("decodeVersionedPayload", () => { +describe('utils', () => { + it('decodeVersionedPayload', () => { const rawPayloadFromGateway = - "0x00000001000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000013726563656976655f6d6573736167655f65766d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000c736f757263655f636861696e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e736f757263655f6164647265737300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000077061796c6f6164000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000006737472696e6700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006737472696e670000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000562797465730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000008657468657265756d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a3078356233343837366666623136353637313066623936336563643139396336663137336332393236370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002a30786531373063373031643832613735346261316537623534616237353664386330326637623235386500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001368656c6c6f2066726f6d20657468657265756d00000000000000000000000000"; + '0x00000001000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000013726563656976655f6d6573736167655f65766d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000c736f757263655f636861696e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e736f757263655f6164647265737300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000077061796c6f6164000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000006737472696e6700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006737472696e670000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000562797465730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000008657468657265756d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a3078356233343837366666623136353637313066623936336563643139396336663137336332393236370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002a30786531373063373031643832613735346261316537623534616237353664386330326637623235386500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001368656c6c6f2066726f6d20657468657265756d00000000000000000000000000'; const result = decodeVersionedPayload(rawPayloadFromGateway); expect(result).toEqual({ - methodName: "receive_message_evm", - argNames: ["source_chain", "source_address", "payload"], - argTypes: ["string", "string", "bytes"], + methodName: 'receive_message_evm', + argNames: ['source_chain', 'source_address', 'payload'], + argTypes: ['string', 'string', 'bytes'], argValues: [ - "ethereum", - "0x5b34876ffb1656710fb963ecd199c6f173c29267", - "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqMHhlMTcwYzcwMWQ4MmE3NTRiYTFlN2I1NGFiNzU2ZDhjMDJmN2IyNThlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATaGVsbG8gZnJvbSBldGhlcmV1bQAAAAAAAAAAAAAAAAA=", + 'ethereum', + '0x5b34876ffb1656710fb963ecd199c6f173c29267', + 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqMHhlMTcwYzcwMWQ4MmE3NTRiYTFlN2I1NGFiNzU2ZDhjMDJmN2IyNThlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATaGVsbG8gZnJvbSBldGhlcmV1bQAAAAAAAAAAAAAAAAA=', ], }); }); diff --git a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts index 84e40f17..0f9277f2 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts @@ -1,20 +1,14 @@ -import { DirectSecp256k1HdWallet } from '@cosmjs/proto-signing'; -import { GasPrice } from '@cosmjs/stargate'; -import { SigningStargateClient } from '@cosmjs/stargate'; -import { CosmosChain, CosmosChainInfo } from '../../types'; -import { exportOwnerAccountFromContainer, readFileSync } from '../../utils'; -import { stringToPath } from '@cosmjs/crypto'; +import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; +import { GasPrice } from "@cosmjs/stargate"; +import { SigningStargateClient } from "@cosmjs/stargate"; +import { CosmosChain, CosmosChainInfo } from "../../types"; +import { exportOwnerAccountFromContainer, readFileSync } from "../../utils"; +import { stringToPath } from "@cosmjs/crypto"; import { Registry } from "@cosmjs/proto-signing"; import { defaultRegistryTypes } from "@cosmjs/stargate"; -import { - ConfirmGatewayTxRequest as EvmConfirmGatewayTxRequest, -} from '@axelar-network/axelarjs-types/axelar/evm/v1beta1/tx'; -import { - VoteRequest, -} from '@axelar-network/axelarjs-types/axelar/vote/v1beta1/tx'; -import { - RouteMessageRequest, -} from '@axelar-network/axelarjs-types/axelar/axelarnet/v1beta1/tx'; +import { ConfirmGatewayTxRequest as EvmConfirmGatewayTxRequest } from "@axelar-network/axelarjs-types/axelar/evm/v1beta1/tx"; +import { VoteRequest } from "@axelar-network/axelarjs-types/axelar/vote/v1beta1/tx"; +import { RouteMessageRequest } from "@axelar-network/axelarjs-types/axelar/axelarnet/v1beta1/tx"; export class CosmosClient { public chainInfo: Required; @@ -50,12 +44,12 @@ export class CosmosClient { * @returns A promise that resolves to an instance of CosmosClient. */ static async create( - chain: CosmosChain = 'agoric', + chain: CosmosChain = "agoric", mnemonic?: string, - config: Omit = { prefix: chain }, + config: Omit = { prefix: chain }, gasPrice?: GasPrice ) { - const defaultDenom = chain === 'agoric' ? 'ubld' : 'uaxl'; + const defaultDenom = chain === "agoric" ? "ubld" : "uaxl"; const chainInfo = { denom: config.denom || defaultDenom, lcdUrl: config.lcdUrl || `http://localhost/${chain}-lcd`, @@ -72,20 +66,20 @@ export class CosmosClient { const getAgoricSigner = async () => { const Agoric = { - Bech32MainPrefix: 'agoric', + Bech32MainPrefix: "agoric", CoinType: 564, }; const hdPath = (coinType = 118, account = 0) => stringToPath(`m/44'/${coinType}'/${account}'/0/0`); - return DirectSecp256k1HdWallet.fromMnemonic(_mnemonic || '', { + return DirectSecp256k1HdWallet.fromMnemonic(_mnemonic || "", { prefix: Agoric.Bech32MainPrefix, hdPaths: [hdPath(Agoric.CoinType, 0), hdPath(Agoric.CoinType, 1)], }); }; let owner; - if (chain === 'agoric') { + if (chain === "agoric") { owner = await getAgoricSigner(); } else { owner = await CosmosClient.createOrImportAccount(chain, _mnemonic); @@ -95,7 +89,10 @@ export class CosmosClient { .then((accounts) => accounts[0].address); const registry = new Registry([ ...defaultRegistryTypes, - ["/axelar.evm.v1beta1.ConfirmGatewayTxRequest", EvmConfirmGatewayTxRequest], + [ + "/axelar.evm.v1beta1.ConfirmGatewayTxRequest", + EvmConfirmGatewayTxRequest, + ], ["/axelar.vote.v1beta1.VoteRequest", VoteRequest], ["/axelar.axelarnet.v1beta1.RouteMessageRequest", RouteMessageRequest], ]); @@ -158,7 +155,7 @@ export class CosmosClient { * Retrieves the chain information of the CosmosClient instance. * @returns An object containing the chain's information, excluding the owner's details. */ - getChainInfo(): Omit { + getChainInfo(): Omit { return { prefix: this.chainInfo.prefix, denom: this.chainInfo.denom, @@ -193,7 +190,7 @@ export class CosmosClient { ) .then((res) => { if (res.code !== 0) { - throw new Error(res.rawLog || 'Failed to fund wallet'); + throw new Error(res.rawLog || "Failed to fund wallet"); } return res; }); @@ -226,8 +223,8 @@ export class CosmosClient { * @returns A promise that resolves to an object containing the new client and its address. */ async createFundedSigningClient( - chain: CosmosChain = 'wasm', - amount: string = '10000000' + chain: CosmosChain = "wasm", + amount: string = "10000000" ) { const wallet = await DirectSecp256k1HdWallet.generate(12, { prefix: chain, diff --git a/packages/axelar-local-dev-cosmos/src/clients/cosmos/index.ts b/packages/axelar-local-dev-cosmos/src/clients/cosmos/index.ts index ca57bd41..cb892f77 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/cosmos/index.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/cosmos/index.ts @@ -1 +1 @@ -export * from './CosmosClient' +export * from "./CosmosClient"; diff --git a/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts b/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts index c345fd0a..8bb4a617 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts @@ -26,8 +26,8 @@ export class IBCRelayerClient { this.axelarClient = axelarClient; this.wasmClient = wasmClient; this.logger = { - info: console.log, - error: console.log, + info: console.log, + error: console.log, warn: console.log, verbose: console.log, debug: console.log, @@ -120,9 +120,9 @@ export class IBCRelayerClient { wasmIBCClient, connection.axelar.connectionId, connection.wasm.connectionId, - this.logger, + this.logger ); - } catch (e) { } + } catch (e) {} } if (!this.link) { diff --git a/packages/axelar-local-dev-cosmos/src/config/index.ts b/packages/axelar-local-dev-cosmos/src/config/index.ts index 225e07b4..1d8e5e48 100644 --- a/packages/axelar-local-dev-cosmos/src/config/index.ts +++ b/packages/axelar-local-dev-cosmos/src/config/index.ts @@ -1,2 +1,2 @@ -export * from './axelar' -export * from './wasm' +export * from "./axelar"; +export * from "./wasm"; diff --git a/packages/axelar-local-dev-cosmos/src/listeners/eventTypes.ts b/packages/axelar-local-dev-cosmos/src/listeners/eventTypes.ts index b517f689..f1cc4154 100644 --- a/packages/axelar-local-dev-cosmos/src/listeners/eventTypes.ts +++ b/packages/axelar-local-dev-cosmos/src/listeners/eventTypes.ts @@ -3,7 +3,10 @@ import { ContractCallWithTokenSubmitted, IBCEvent, } from "../types"; -import { parseContractCallSubmittedEvent, parseContractCallWithTokenSubmittedEvent } from "./parser"; +import { + parseContractCallSubmittedEvent, + parseContractCallWithTokenSubmittedEvent, +} from "./parser"; export interface AxelarListenerEvent { type: string; @@ -19,7 +22,6 @@ export const AxelarCosmosContractCallEvent: AxelarListenerEvent< parseEvent: parseContractCallSubmittedEvent, }; - export const AxelarCosmosContractCallWithTokenEvent: AxelarListenerEvent< IBCEvent > = { @@ -28,7 +30,6 @@ export const AxelarCosmosContractCallWithTokenEvent: AxelarListenerEvent< parseEvent: parseContractCallWithTokenSubmittedEvent, }; - export const AxelarTokenSentEvent: AxelarListenerEvent< IBCEvent > = { diff --git a/packages/axelar-local-dev-cosmos/src/listeners/parser.ts b/packages/axelar-local-dev-cosmos/src/listeners/parser.ts index bc14137c..3270f2c2 100644 --- a/packages/axelar-local-dev-cosmos/src/listeners/parser.ts +++ b/packages/axelar-local-dev-cosmos/src/listeners/parser.ts @@ -1,4 +1,8 @@ -import { ContractCallSubmitted, ContractCallWithTokenSubmitted, IBCEvent } from "../types"; +import { + ContractCallSubmitted, + ContractCallWithTokenSubmitted, + IBCEvent, +} from "../types"; const decodeBase64 = (str: string) => { return Buffer.from(str, "base64").toString("hex"); @@ -32,7 +36,6 @@ export function parseContractCallSubmittedEvent( }); } - export function parseContractCallWithTokenSubmittedEvent( event: any ): Promise> { diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts index ff35f5ff..4e1bdb0f 100644 --- a/packages/axelar-local-dev-cosmos/src/relay.ts +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -1,47 +1,52 @@ import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; import { - evmRelayer, - createNetwork, - deployContract, - relay, - RelayerType, + evmRelayer, + createNetwork, + deployContract, + relay, + RelayerType, } from "@axelar-network/axelar-local-dev"; import { Contract } from "ethers"; export const relayBasic = async () => { - const axelarRelayer = await AxelarRelayerService.create( - defaultAxelarChainInfo - ); + const axelarRelayer = await AxelarRelayerService.create( + defaultAxelarChainInfo + ); - const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); - const WalletContract = require("../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json"); + const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); + const WalletContract = require("../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json"); - const ethereumNetwork = await createNetwork({ name: "Ethereum" }); - const ethereumContract = await deployContract( - ethereumNetwork.userWallets[0], - Factory, - [ethereumNetwork.gateway.address, - ethereumNetwork.gasService.address, - 'Ethereum', - ] - ); + const ethereumNetwork = await createNetwork({ name: "Ethereum" }); + const ethereumContract = await deployContract( + ethereumNetwork.userWallets[0], + Factory, + [ + ethereumNetwork.gateway.address, + ethereumNetwork.gasService.address, + "Ethereum", + ] + ); - const wallet = new Contract('0x959c9a26d962c38f40d270a3825298cd58a8039e', WalletContract.abi, ethereumNetwork.userWallets[0]); + const wallet = new Contract( + "0x959c9a26d962c38f40d270a3825298cd58a8039e", + WalletContract.abi, + ethereumNetwork.userWallets[0] + ); - console.log('Ethereum Contract Address:', ethereumContract.address); + console.log("Ethereum Contract Address:", ethereumContract.address); - evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); + evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); - while (true) { - await relay({ - agoric: axelarRelayer, - evm: evmRelayer, - }); - try { - const ethereumMessage = await wallet.storedMessage(); - console.log('Ethereum Message:', ethereumMessage); - } catch (e) { - console.log('Error:', e); - } + while (true) { + await relay({ + agoric: axelarRelayer, + evm: evmRelayer, + }); + try { + const ethereumMessage = await wallet.storedMessage(); + console.log("Ethereum Message:", ethereumMessage); + } catch (e) { + console.log("Error:", e); } + } }; diff --git a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts index b2fded13..0e8b4843 100644 --- a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts @@ -1,10 +1,7 @@ import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; -import { encode, decode } from "@metamask/abi-utils"; -import { Contract, ethers } from "ethers"; -import { encodeVersionedPayload } from "./utils"; -import { encode as b64encode, decode as b64decode } from 'js-base64'; -import { SigningStargateClient } from '@cosmjs/stargate'; -import createKeccakHash from 'keccak'; +import { encode } from "@metamask/abi-utils"; +import { SigningStargateClient } from "@cosmjs/stargate"; +import createKeccakHash from "keccak"; import { evmRelayer, @@ -13,7 +10,6 @@ import { relay, RelayerType, } from "@axelar-network/axelar-local-dev"; -import { AxelarGateway } from "@axelar-network/axelar-local-dev/dist/contracts"; const uint8ArrayToHex = (uint8Array: Uint8Array): string => { return `0x${Array.from(uint8Array) @@ -26,7 +22,9 @@ const pack = ( paramTypes: Array, params: Array ) => { - const functionHash = createKeccakHash("keccak256").update(functionSignature).digest(); + const functionHash = createKeccakHash("keccak256") + .update(functionSignature) + .digest(); return uint8ArrayToHex( Uint8Array.from([ @@ -49,51 +47,47 @@ export const relayDataFromEth = async () => { const ethereumContract = await deployContract( ethereumNetwork.userWallets[0], Factory, - [ethereumNetwork.gateway.address, + [ + ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, - 'Ethereum', + "Ethereum", ] - ); + ); const ethereumWallet = await deployContract( ethereumNetwork.userWallets[0], WalletContract, [ ethereumNetwork.gateway.address, - 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', + "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl", ] ); - console.log('Ethereum Contract Address:', ethereumWallet.address); - + console.log("Ethereum Contract Address:", ethereumWallet.address); - const targets = [ - ethereumContract.address, - ]; + const targets = [ethereumContract.address]; const data: any = [ - pack('createVendor(string)', ['string'], ['ownerAddress']), + pack("createVendor(string)", ["string"], ["ownerAddress"]), ]; console.log(data); - const payload = Array.from(encode(['address[]', 'bytes[]'], [targets, data])); - + const payload = Array.from(encode(["address[]", "bytes[]"], [targets, data])); const ibcRelayer = axelarRelayer.ibcRelayer; - const IBC_DENOM_AXL_USDC = - 'ubld'; + const IBC_DENOM_AXL_USDC = "ubld"; // 'ibc/295548A78785A1007F232DE286149A6FF512F180AF5657780FC89C009E2C348F'; - const AMOUNT_IN_ATOMIC_UNITS = '1000000'; + const AMOUNT_IN_ATOMIC_UNITS = "1000000"; const CHANNEL_ID = ibcRelayer.srcChannelId; - const DENOM = 'ubld'; + const DENOM = "ubld"; const AXELAR_GMP_ADDRESS = - 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5'; + "axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5"; const signer = ibcRelayer.wasmClient; - const senderAddress = 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl'; + const senderAddress = "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl"; // TODO const DESTINATION_ADDRESS = ethereumWallet.address; - const DESTINATION_CHAIN = 'Ethereum'; + const DESTINATION_CHAIN = "Ethereum"; // const payload = encode(['string', 'string'], ['agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', 'Hello, world!']); @@ -110,7 +104,7 @@ export const relayDataFromEth = async () => { const message = [ { - typeUrl: '/ibc.applications.transfer.v1.MsgTransfer', + typeUrl: "/ibc.applications.transfer.v1.MsgTransfer", value: { sender: senderAddress, receiver: AXELAR_GMP_ADDRESS, @@ -120,21 +114,20 @@ export const relayDataFromEth = async () => { }, timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, sourceChannel: CHANNEL_ID, - sourcePort: 'transfer', + sourcePort: "transfer", memo: JSON.stringify(memo), }, }, ]; - const fee = { - gas: '250000', - amount: [{ denom: DENOM, amount: '30000' }], + gas: "250000", + amount: [{ denom: DENOM, amount: "30000" }], }; - console.log('Preparing to send tokens...'); + console.log("Preparing to send tokens..."); const signingClient = await SigningStargateClient.connectWithSigner( - 'http://localhost/agoric-rpc', + "http://localhost/agoric-rpc", signer.owner ); @@ -150,9 +143,8 @@ export const relayDataFromEth = async () => { }); await axelarRelayer.stopListening(); - const ethereumMessage = await ethereumContract.storedMessage(); - console.log('Message on Ethereum Contract:', ethereumMessage); + console.log("Message on Ethereum Contract:", ethereumMessage); await relay({ evm: evmRelayer, diff --git a/packages/axelar-local-dev-cosmos/src/relayToEth.ts b/packages/axelar-local-dev-cosmos/src/relayToEth.ts index 0bd6204c..084677e3 100644 --- a/packages/axelar-local-dev-cosmos/src/relayToEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayToEth.ts @@ -1,6 +1,6 @@ -import { defaultAxelarChainInfo, AxelarRelayerService, startChains } from './index'; -import { SigningStargateClient } from '@cosmjs/stargate'; -import { encode } from '@metamask/abi-utils'; +import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; +import { SigningStargateClient } from "@cosmjs/stargate"; +import { encode } from "@metamask/abi-utils"; import { evmRelayer, @@ -8,52 +8,49 @@ import { deployContract, relay, RelayerType, -} from '@axelar-network/axelar-local-dev'; - +} from "@axelar-network/axelar-local-dev"; export const relayDataToEth = async () => { - // Start both Axelar and Wasm Chains - // await startChains(); - // Initialize the Axelar Relayer Service with default configuration const axelarRelayer = await AxelarRelayerService.create( defaultAxelarChainInfo ); - const SendReceive = require('../artifacts/src/__tests__/contracts/SendReceive.sol/SendReceive.json'); + const SendReceive = require("../artifacts/src/__tests__/contracts/SendReceive.sol/SendReceive.json"); - const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); + const ethereumNetwork = await createNetwork({ name: "Ethereum" }); const ethereumContract = await deployContract( ethereumNetwork.userWallets[0], SendReceive, [ ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, - 'Ethereum', + "Ethereum", ] ); const ibcRelayer = axelarRelayer.ibcRelayer; - console.log('IBC RELAYER', JSON.stringify(ibcRelayer.srcChannelId)); + console.log("IBC RELAYER", JSON.stringify(ibcRelayer.srcChannelId)); - const IBC_DENOM_AXL_USDC = - 'ubld'; - // 'ibc/295548A78785A1007F232DE286149A6FF512F180AF5657780FC89C009E2C348F'; - const AMOUNT_IN_ATOMIC_UNITS = '1000000'; + const IBC_DENOM_AXL_USDC = "ubld"; + const AMOUNT_IN_ATOMIC_UNITS = "1000000"; const CHANNEL_ID = ibcRelayer.srcChannelId; - const DENOM = 'ubld'; + const DENOM = "ubld"; const AXELAR_GMP_ADDRESS = - 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5'; + "axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5"; const signer = ibcRelayer.wasmClient; - const senderAddress = 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl'; + const senderAddress = "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl"; // TODO const DESTINATION_ADDRESS = ethereumContract.address; - const DESTINATION_CHAIN = 'Ethereum'; + const DESTINATION_CHAIN = "Ethereum"; - const payload = encode(['string', 'string'], ['agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', 'Hello, world!']); + const payload = encode( + ["string", "string"], + ["agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl", "Hello, world!"] + ); const memo = { destination_chain: DESTINATION_CHAIN, @@ -65,7 +62,7 @@ export const relayDataToEth = async () => { const message = [ { - typeUrl: '/ibc.applications.transfer.v1.MsgTransfer', + typeUrl: "/ibc.applications.transfer.v1.MsgTransfer", value: { sender: senderAddress, receiver: AXELAR_GMP_ADDRESS, @@ -75,33 +72,32 @@ export const relayDataToEth = async () => { }, timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, sourceChannel: CHANNEL_ID, - sourcePort: 'transfer', + sourcePort: "transfer", memo: JSON.stringify(memo), }, }, ]; - const fee = { - gas: '250000', - amount: [{ denom: DENOM, amount: '30000' }], + gas: "250000", + amount: [{ denom: DENOM, amount: "30000" }], }; - console.log('Preparing to send tokens...'); + console.log("Preparing to send tokens..."); const signingClient = await SigningStargateClient.connectWithSigner( - 'http://localhost/agoric-rpc', + "http://localhost/agoric-rpc", signer.owner ); // Set up the Relayer for Wasm Chain evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); - console.log('Sending transaction...', message); + console.log("Sending transaction...", message); const response = await signingClient.signAndBroadcast( senderAddress, message, fee ); - console.log('transaction response', response); + console.log("transaction response", response); // Relay messages between Ethereum and Agoric chains await relay({ @@ -109,83 +105,7 @@ export const relayDataToEth = async () => { evm: evmRelayer, }); - // Setup for Ethereum Network and Wasm chain relayer - // - - // // Deploy Smart Contract on the EVM (Ethereum Virtual Machine) - // // const ethereumContract = await deployContract( - // // ethereumNetwork.userWallets[0], - // // SendReceive, - // // [ - // // ethereumNetwork.gateway.address, - // // ethereumNetwork.gasService.address, - // // 'Ethereum', - // // ] - // // ); - - // // Deploy Contract on the Wasm Chain - // const wasmFilePath = path.resolve(__dirname, '../wasm/send_receive.wasm'); - // const wasmUploadResponse = await wasmClient1.uploadWasm(wasmFilePath); - - // // Instantiate the Wasm Contract - // const { client: wasmClient, address: wasmSenderAddress } = - // await wasmClient1.createFundedSigningClient(); - - // const wasmContractInstantiation = await wasmClient.instantiate( - // wasmSenderAddress, - // wasmUploadResponse.codeId, - // { - // channel: ibcRelayer.srcChannelId, - // }, - // 'send_receive', - // 'auto' - // ); - // // ============ SETUP END ============ - - // const messageToEthereum = 'Hello from Ethereum'; - // const messageToWasm = 'Hello from Wasm'; - - // // Send a message from Wasm Chain to Ethereum Chain - // const wasmTransaction = await wasmClient.execute( - // wasmSenderAddress, - // wasmContractInstantiation.contractAddress, - // { - // send_message_evm: { - // destination_chain: 'Ethereum', - // destination_address: ethereumContract.address, - // message: messageToWasm, - // }, - // }, - // 'auto', - // 'test', - // [{ amount: '100000', denom: 'uwasm' }] - // ); - // console.log('Wasm Chain Transaction Hash:', wasmTransaction.transactionHash); - - // // Send a message from Ethereum Chain to Wasm Chain - // const ethereumTransaction = await ethereumContract.send( - // 'agoric', - // wasmContractInstantiation.contractAddress, - // messageToEthereum, - // { - // value: ethers.utils.parseEther('0.001'), - // } - // ); - // console.log('Ethereum Chain Transaction Hash:', ethereumTransaction.hash); - - - // // Verify the message on the Ethereum contract const ethereumMessage = await ethereumContract.storedMessage(); - console.log('Message on Ethereum Contract:', ethereumMessage); - - // // Verify the message on the Wasm contract - // const wasmResponse = await wasmClient1.client.queryContractSmart( - // wasmContractInstantiation.contractAddress, - // { - // get_stored_message: {}, - // } - // ); - - // console.log('Message on Wasm Contract:', wasmResponse); + console.log("Message on Ethereum Contract:", ethereumMessage); }; diff --git a/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts b/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts index 47b6caf4..21a0542f 100644 --- a/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts @@ -1,381 +1,126 @@ -import { defaultAxelarChainInfo, AxelarRelayerService, startChains } from './index'; -import { SigningStargateClient } from '@cosmjs/stargate'; -import { encode } from '@metamask/abi-utils'; +import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; +import { SigningStargateClient } from "@cosmjs/stargate"; +import { encode } from "@metamask/abi-utils"; import { - evmRelayer, - createNetwork, - deployContract, - relay, - RelayerType, -} from '@axelar-network/axelar-local-dev'; - -import { Contract, ethers } from 'ethers'; - + evmRelayer, + createNetwork, + deployContract, + relay, + RelayerType, +} from "@axelar-network/axelar-local-dev"; export const relayDataToEth = async () => { - // Start both Axelar and Wasm Chains - // await startChains(); - - // Initialize the Axelar Relayer Service with default configuration - const axelarRelayer = await AxelarRelayerService.create( - defaultAxelarChainInfo - ); - - const CallContractWithToken = require('../artifacts/src/__tests__/contracts/ContractCallWithToken.sol/CallContractWithToken.json'); - - const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); - const ethereumContract = await deployContract( - ethereumNetwork.userWallets[0], - CallContractWithToken, - [ - ethereumNetwork.gateway.address, - ethereumNetwork.gasService.address, - ] - ); - - // Deploy tokens - const tokenContract = await ethereumNetwork.deployToken("USDC", "aUSDC", 6, BigInt(100_000e6)); - - const ibcRelayer = axelarRelayer.ibcRelayer; - - console.log('IBC RELAYER', JSON.stringify(ibcRelayer.srcChannelId)); - - const IBC_DENOM_AXL_USDC = - // 'ubld'; - 'ibc/5BDD47E9E73BF91C14497E254F0A751F1A7D3A6084343F66EA7CEE834A384651'; - const AMOUNT_IN_ATOMIC_UNITS = '10' + '000' + '000'; - const FEE = '1' + '000' + '000'; - const CHANNEL_ID = ibcRelayer.srcChannelId; - const DENOM = 'ubld'; - const AXELAR_GMP_ADDRESS = - 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5'; - - const signer = ibcRelayer.wasmClient; - const senderAddress = 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl'; - - const DESTINATION_ADDRESS = ethereumContract.address; - const DESTINATION_CHAIN = 'Ethereum'; - - const ADDRESS_TO_DEPOSIT = '0x20E68F6c276AC6E297aC46c84Ab260928276691D' - - const payload = encode(['address[]'], [[ADDRESS_TO_DEPOSIT]]); - console.log('Balance of account before relaying', (await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT))); - - const memo = { - destination_chain: DESTINATION_CHAIN, - destination_address: DESTINATION_ADDRESS, - payload: Array.from(payload), - fee: { - amount: FEE, - recipient: 'axelar1zl3rxpp70lmte2xr6c4lgske2fyuj3hupcsvcd', - }, - type: 2, - }; - - const message = [ - { - typeUrl: '/ibc.applications.transfer.v1.MsgTransfer', - value: { - sender: senderAddress, - receiver: AXELAR_GMP_ADDRESS, - token: { - denom: IBC_DENOM_AXL_USDC, - amount: AMOUNT_IN_ATOMIC_UNITS, - }, - timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, - sourceChannel: CHANNEL_ID, - sourcePort: 'transfer', - memo: JSON.stringify(memo), - }, + // Initialize the Axelar Relayer Service with default configuration + const axelarRelayer = await AxelarRelayerService.create( + defaultAxelarChainInfo + ); + + const CallContractWithToken = require("../artifacts/src/__tests__/contracts/ContractCallWithToken.sol/CallContractWithToken.json"); + + const ethereumNetwork = await createNetwork({ name: "Ethereum" }); + const ethereumContract = await deployContract( + ethereumNetwork.userWallets[0], + CallContractWithToken, + [ethereumNetwork.gateway.address, ethereumNetwork.gasService.address] + ); + + // Deploy tokens + const tokenContract = await ethereumNetwork.deployToken( + "USDC", + "aUSDC", + 6, + BigInt(100_000e6) + ); + + const ibcRelayer = axelarRelayer.ibcRelayer; + + console.log("IBC RELAYER", JSON.stringify(ibcRelayer.srcChannelId)); + + const IBC_DENOM_AXL_USDC = + // 'ubld'; + "ibc/5BDD47E9E73BF91C14497E254F0A751F1A7D3A6084343F66EA7CEE834A384651"; + const AMOUNT_IN_ATOMIC_UNITS = "10" + "000" + "000"; + const FEE = "1" + "000" + "000"; + const CHANNEL_ID = ibcRelayer.srcChannelId; + const DENOM = "ubld"; + const AXELAR_GMP_ADDRESS = + "axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5"; + + const signer = ibcRelayer.wasmClient; + const senderAddress = "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl"; + + const DESTINATION_ADDRESS = ethereumContract.address; + const DESTINATION_CHAIN = "Ethereum"; + + const ADDRESS_TO_DEPOSIT = "0x20E68F6c276AC6E297aC46c84Ab260928276691D"; + + const payload = encode(["address[]"], [[ADDRESS_TO_DEPOSIT]]); + console.log( + "Balance of account before relaying", + await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT) + ); + + const memo = { + destination_chain: DESTINATION_CHAIN, + destination_address: DESTINATION_ADDRESS, + payload: Array.from(payload), + fee: { + amount: FEE, + recipient: "axelar1zl3rxpp70lmte2xr6c4lgske2fyuj3hupcsvcd", + }, + type: 2, + }; + + const message = [ + { + typeUrl: "/ibc.applications.transfer.v1.MsgTransfer", + value: { + sender: senderAddress, + receiver: AXELAR_GMP_ADDRESS, + token: { + denom: IBC_DENOM_AXL_USDC, + amount: AMOUNT_IN_ATOMIC_UNITS, }, - ]; - - - const fee = { - gas: '250000', - amount: [{ denom: DENOM, amount: '30000' }], - }; - - console.log('Preparing to send tokens...'); - const signingClient = await SigningStargateClient.connectWithSigner( - 'http://localhost/agoric-rpc', - signer.owner - ); - // Set up the Relayer for Wasm Chain - evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); - - console.log('Sending transaction...', message); - const response = await signingClient.signAndBroadcast( - senderAddress, - message, - fee - ); - console.log('transaction response', response); - - // Relay messages between Ethereum and Agoric chains - await relay({ - agoric: axelarRelayer, - evm: evmRelayer, - }); - - - console.log('Balance of account after relaying', (await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT))); - const ethereumMessage = await ethereumContract.storedMessage(); - console.log('Message on Ethereum Contract:', ethereumMessage); - + timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, + sourceChannel: CHANNEL_ID, + sourcePort: "transfer", + memo: JSON.stringify(memo), + }, + }, + ]; + + const fee = { + gas: "250000", + amount: [{ denom: DENOM, amount: "30000" }], + }; + + console.log("Preparing to send tokens..."); + const signingClient = await SigningStargateClient.connectWithSigner( + "http://localhost/agoric-rpc", + signer.owner + ); + // Set up the Relayer for Wasm Chain + evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); + + console.log("Sending transaction...", message); + const response = await signingClient.signAndBroadcast( + senderAddress, + message, + fee + ); + console.log("transaction response", response); + + // Relay messages between Ethereum and Agoric chains + await relay({ + agoric: axelarRelayer, + evm: evmRelayer, + }); + + console.log( + "Balance of account after relaying", + await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT) + ); + const ethereumMessage = await ethereumContract.storedMessage(); + console.log("Message on Ethereum Contract:", ethereumMessage); }; - - - - - - - - - - - - - - - - - - - - - -// import { defaultAxelarChainInfo, AxelarRelayerService, startChains } from './index'; -// import { SigningStargateClient } from '@cosmjs/stargate'; -// import { encode } from '@metamask/abi-utils'; - -// import { -// evmRelayer, -// createNetwork, -// deployContract, -// relay, -// RelayerType, -// contracts, -// setupNetwork, -// } from '@axelar-network/axelar-local-dev'; - -// import { Wallet, ethers, getDefaultProvider } from 'ethers'; - -// export const relayDataToEth = async () => { -// // Start both Axelar and Wasm Chains -// // await startChains(); -// const chain: any = { -// "name": "Ethereum", -// "chainId": 2503, -// "gateway": "0x013459EC3E8Aeced878C5C4bFfe126A366cd19E9", -// "gasService": "0x28f8B50E1Be6152da35e923602a2641491E71Ed8", -// "constAddressDeployer": "0x69aeB7Dc4f2A86873Dae8D753DE89326Cf90a77a", -// "create3Deployer": "0x783E7717fD4592814614aFC47ee92568a495Ce0B", -// "interchainTokenService": "0xc66bec212fb265f86703ff82599693Eb020e9f34", -// "interchainTokenFactory": "0x5548588aCE4A15342856BC36576ceA6C97198086", -// "tokens": { -// "aUSDC": "aUSDC" -// }, -// "rpc": "http://127.0.0.1:8500/3", -// wallet: undefined, -// contract: undefined, -// }; -// // Initialize the Axelar Relayer Service with default configuration -// const axelarRelayer = await AxelarRelayerService.create( -// defaultAxelarChainInfo -// ); - -// const SendReceive = require('../artifacts/src/__tests__/contracts/SendReceive.sol/SendReceive.json'); -// const CallContractWithToken = require('../artifacts/src/__tests__/contracts/ContractCallWithToken.sol/CallContractWithToken.json'); -// // const CallContractWithToken = require('../artifacts/src/__tests__/contracts/ContractCallWithToken.sol/ExecutableWithToken.json'); - -// // const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); -// // const ethereumContract = await deployContract( -// // ethereumNetwork.userWallets[0], -// // CallContractWithToken, -// // [ -// // ethereumNetwork.gateway.address, -// // ethereumNetwork.gasService.address, -// // // 'Ethereum', -// // ] -// // ); - -// const wallet = new Wallet('0xe2d761246917948fa57c75ebe690bab0d214d6d968397487c3221b9563d946fe') -// const provider = getDefaultProvider(chain.rpc); -// chain.wallet = wallet.connect(provider); -// await setupNetwork(provider, { -// name: 'Ethereum', -// // ownerKey: chain.wallet, -// chainId: 2503, -// }) - -// // chain.contract = await deployContract(chain.wallet, CallContractWithToken, [chain.gateway, chain.gasService]); - -// const ibcRelayer = axelarRelayer.ibcRelayer; - -// console.log('IBC RELAYER', JSON.stringify(ibcRelayer.srcChannelId)); - -// const IBC_DENOM_AXL_USDC = -// 'ubld'; -// // 'ibc/5BDD47E9E73BF91C14497E254F0A751F1A7D3A6084343F66EA7CEE834A384651'; -// const AMOUNT_IN_ATOMIC_UNITS = '10000000'; -// const CHANNEL_ID = ibcRelayer.srcChannelId; -// const DENOM = 'ubld'; -// const AXELAR_GMP_ADDRESS = -// 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5'; - -// const signer = ibcRelayer.wasmClient; -// const senderAddress = 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl'; -// console.log(1); - -// console.log(await provider.getBlockNumber()) -// // TODO -// // const ethAccount = ethereumNetwork.userWallets[0]; -// // const ethAdd = await ethAccount.getAddress(); -// // if (ethAdd !== ethAccount.address) -// // throw new Error('wth'); -// // const DESTINATION_ADDRESS = chain.contract.address; -// const DESTINATION_ADDRESS = '0x1aD9C268e5CDf4018cd1EBC50b1EBBcf967c34f3'; -// const DESTINATION_CHAIN = 'Ethereum'; - -// const payload = encode(['address[]'], [['0x5B34876FFB1656710fb963ecD199C6f173c29267']]); - -// const memo = { -// destination_chain: DESTINATION_CHAIN, -// destination_address: DESTINATION_ADDRESS, -// payload: Array.from(payload), -// fee: null, -// type: 2, -// }; - -// const message = [ -// { -// typeUrl: '/ibc.applications.transfer.v1.MsgTransfer', -// value: { -// sender: senderAddress, -// receiver: AXELAR_GMP_ADDRESS, -// token: { -// denom: IBC_DENOM_AXL_USDC, -// amount: AMOUNT_IN_ATOMIC_UNITS, -// }, -// timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, -// sourceChannel: CHANNEL_ID, -// sourcePort: 'transfer', -// memo: JSON.stringify(memo), -// }, -// }, -// ]; - - -// const fee = { -// gas: '250000', -// amount: [{ denom: DENOM, amount: '30000' }], -// }; - -// console.log('Preparing to send tokens...'); -// const signingClient = await SigningStargateClient.connectWithSigner( -// 'http://localhost/agoric-rpc', -// signer.owner -// ); -// // Set up the Relayer for Wasm Chain -// evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); - -// console.log('Sending transaction...', message); -// const response = await signingClient.signAndBroadcast( -// senderAddress, -// message, -// fee -// ); -// console.log('transaction response', response); - -// console.log(await provider.getBlockNumber()) -// // Relay messages between Ethereum and Agoric chains -// await relay({ -// agoric: axelarRelayer, -// evm: evmRelayer, -// }); - -// // Setup for Ethereum Network and Wasm chain relayer -// // - -// // // Deploy Smart Contract on the EVM (Ethereum Virtual Machine) -// // // const ethereumContract = await deployContract( -// // // ethereumNetwork.userWallets[0], -// // // SendReceive, -// // // [ -// // // ethereumNetwork.gateway.address, -// // // ethereumNetwork.gasService.address, -// // // 'Ethereum', -// // // ] -// // // ); - -// // // Deploy Contract on the Wasm Chain -// // const wasmFilePath = path.resolve(__dirname, '../wasm/send_receive.wasm'); -// // const wasmUploadResponse = await wasmClient1.uploadWasm(wasmFilePath); - -// // // Instantiate the Wasm Contract -// // const { client: wasmClient, address: wasmSenderAddress } = -// // await wasmClient1.createFundedSigningClient(); - -// // const wasmContractInstantiation = await wasmClient.instantiate( -// // wasmSenderAddress, -// // wasmUploadResponse.codeId, -// // { -// // channel: ibcRelayer.srcChannelId, -// // }, -// // 'send_receive', -// // 'auto' -// // ); -// // // ============ SETUP END ============ - -// // const messageToEthereum = 'Hello from Ethereum'; -// // const messageToWasm = 'Hello from Wasm'; - -// // // Send a message from Wasm Chain to Ethereum Chain -// // const wasmTransaction = await wasmClient.execute( -// // wasmSenderAddress, -// // wasmContractInstantiation.contractAddress, -// // { -// // send_message_evm: { -// // destination_chain: 'Ethereum', -// // destination_address: ethereumContract.address, -// // message: messageToWasm, -// // }, -// // }, -// // 'auto', -// // 'test', -// // [{ amount: '100000', denom: 'uwasm' }] -// // ); -// // console.log('Wasm Chain Transaction Hash:', wasmTransaction.transactionHash); - -// // // Send a message from Ethereum Chain to Wasm Chain -// // const ethereumTransaction = await ethereumContract.send( -// // 'agoric', -// // wasmContractInstantiation.contractAddress, -// // messageToEthereum, -// // { -// // value: ethers.utils.parseEther('0.001'), -// // } -// // ); -// // console.log('Ethereum Chain Transaction Hash:', ethereumTransaction.hash); - - - -// // // Verify the message on the Ethereum contract -// // const ethereumMessage = await chain.contract.storedMessage(); -// // console.log('Message on Ethereum Contract:', ethereumMessage); -// console.log(await provider.getBlockNumber()) -// // console.log(await ethAccount.getBalance()) -// // console.log(await ethereumNetwork.provider.getLogs({fromBlock:0})) - -// // // Verify the message on the Wasm contract -// // const wasmResponse = await wasmClient1.client.queryContractSmart( -// // wasmContractInstantiation.contractAddress, -// // { -// // get_stored_message: {}, -// // } -// // ); - -// // console.log('Message on Wasm Contract:', wasmResponse); -// }; \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts index 46f08409..f9e76b64 100644 --- a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts @@ -1,5 +1,14 @@ -import { ContractCallSubmitted, ContractCallWithTokenSubmitted, CosmosChainInfo, IBCEvent } from "../types"; -import { AxelarCosmosContractCallEvent, AxelarCosmosContractCallWithTokenEvent, AxelarListener, AxelarTokenSentEvent } from "../listeners"; +import { + ContractCallSubmitted, + ContractCallWithTokenSubmitted, + CosmosChainInfo, + IBCEvent, +} from '../types'; +import { + AxelarCosmosContractCallEvent, + AxelarCosmosContractCallWithTokenEvent, + AxelarListener, +} from '../listeners'; import { CallContractArgs, CallContractWithTokenArgs, @@ -12,12 +21,12 @@ import { RelayData, Relayer, RelayerType, -} from "@axelar-network/axelar-local-dev"; -import { Command as WasmCommand } from "../Command"; -import { ethers } from "ethers"; -import { arrayify, defaultAbiCoder } from "ethers/lib/utils"; -import { CosmosClient } from "../clients"; -import { IBCRelayerService } from "./IBCRelayerService"; +} from '@axelar-network/axelar-local-dev'; +import { Command as WasmCommand } from '../Command'; +import { ethers } from 'ethers'; +import { arrayify, defaultAbiCoder } from 'ethers/lib/utils'; +import { CosmosClient } from '../clients'; +import { IBCRelayerService } from './IBCRelayerService'; export class AxelarRelayerService extends Relayer { private axelarListener: AxelarListener; @@ -37,11 +46,14 @@ export class AxelarRelayerService extends Relayer { } static async create( - axelarConfig: Omit, + axelarConfig: Omit, ibcRelayer?: IBCRelayerService ) { const axelarListener = new AxelarListener(axelarConfig); - const axelarClient = await CosmosClient.create("axelar", "smile unveil sketch gaze length bulb goddess street case exact table fetch robust chronic power choice endorse toward pledge dish access sad illegal dance"); + const axelarClient = await CosmosClient.create( + 'axelar', + 'smile unveil sketch gaze length bulb goddess street case exact table fetch robust chronic power choice endorse toward pledge dish access sad illegal dance' + ); const _ibcRelayer = ibcRelayer || (await IBCRelayerService.create()); await _ibcRelayer.createIBCChannelIfNeeded(); @@ -66,7 +78,6 @@ export class AxelarRelayerService extends Relayer { this.handleContractCallWithTokenEvent.bind(this) ); - this.listened = true; } @@ -80,7 +91,6 @@ export class AxelarRelayerService extends Relayer { await this.execute(this.commands); } - async stopListening() { await this.axelarListener.stop(); @@ -93,7 +103,7 @@ export class AxelarRelayerService extends Relayer { } private async executeEvmToWasm(command: RelayCommand) { - const toExecute = command["agoric"]; + const toExecute = command['agoric']; if (!toExecute || toExecute?.length === 0) return; await this.executeWasmExecutable(toExecute); @@ -139,12 +149,12 @@ export class AxelarRelayerService extends Relayer { callContractWithTokenArgs: CallContractWithTokenArgs ): Command { throw new Error( - "Currently, this method is not supported. Please use createCallContractCommand instead." + 'Currently, this method is not supported. Please use createCallContractCommand instead.' ); } setRelayer(type: RelayerType, relayer: Relayer): void { - if (type !== "evm") { + if (type !== 'evm') { return console.log(`${type} not supported yet`); } } @@ -154,7 +164,7 @@ export class AxelarRelayerService extends Relayer { ) { const { args } = event; const contractCallArgs: CallContractArgs = { - from: "agoric", + from: 'agoric', to: args.destinationChain, sourceAddress: args.sender, destinationContractAddress: args.contractAddress, @@ -181,23 +191,23 @@ export class AxelarRelayerService extends Relayer { private async updateCallContractWithTokenEvents( event: IBCEvent ) { - const tokenMap: {[key:string]: string} = { - 'uausdc': 'aUSDC', - 'ubld': 'aUSDC', - } + const tokenMap: { [key: string]: string } = { + uausdc: 'aUSDC', + ubld: 'aUSDC', + }; if (!tokenMap[event.args.symbol]) { throw new Error('Token not supported yet'); } const { args } = event; const contractCallWithTokenArgs: CallContractWithTokenArgs = { - from: "agoric", + from: 'agoric', to: args.destinationChain, sourceAddress: args.sender, destinationContractAddress: args.contractAddress, payload: args.payload, payloadHash: args.payloadHash, - alias: "??", + alias: '??', destinationTokenSymbol: tokenMap[args.symbol], amountIn: args.amount, amountOut: args.amount, @@ -217,7 +227,7 @@ export class AxelarRelayerService extends Relayer { this.commands[contractCallWithTokenArgs.to].push(command); } - + private getWasmLogID(event: IBCEvent) { return ethers.utils.id( `${event.args.messageId}-${event.args.sourceChain}-${event.args.destinationChain}` @@ -234,7 +244,7 @@ export class AxelarRelayerService extends Relayer { private encodeGatewayData(to: Network, commands: Command[]) { return arrayify( defaultAbiCoder.encode( - ["uint256", "bytes32[]", "string[]", "bytes[]"], + ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], [ to.chainId, commands.map((com) => com.commandId), @@ -259,22 +269,22 @@ export class AxelarRelayerService extends Relayer { ): Promise { for (const command of commands) { if (command.post == null) continue; - + const isExecuted = !execution.events.find((event: any) => { - return event.event === "Executed" && event.args[0] == command.commandId; + return event.event === 'Executed' && event.args[0] == command.commandId; }); - - if (isExecuted) { - continue; - } - - try { - const blockLimit = Number( - (await to.provider.getBlock("latest")).gasLimit - ); - return command.post({ - gasLimit: blockLimit, - }); + + if (isExecuted) { + continue; + } + + try { + const blockLimit = Number( + (await to.provider.getBlock('latest')).gasLimit + ); + return command.post({ + gasLimit: blockLimit, + }); } catch (e) { logger.log(e); } diff --git a/packages/axelar-local-dev-cosmos/src/services/DockerService.ts b/packages/axelar-local-dev-cosmos/src/services/DockerService.ts index cf515857..2882cad9 100644 --- a/packages/axelar-local-dev-cosmos/src/services/DockerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/DockerService.ts @@ -40,7 +40,7 @@ export class DockerService { }; logger.log(`Starting ${chain} container...`); - await compose.upOne(chain, config); + await compose.upOne(chain, config); await this.waitForRpc(chain, options?.rpcWaitTimeout); await this.waitForLcd(chain, options?.lcdWaitTimeout); diff --git a/packages/axelar-local-dev-cosmos/src/setup.ts b/packages/axelar-local-dev-cosmos/src/setup.ts index 302b8475..8c79a3bb 100644 --- a/packages/axelar-local-dev-cosmos/src/setup.ts +++ b/packages/axelar-local-dev-cosmos/src/setup.ts @@ -1,11 +1,11 @@ -import { logger } from '@axelar-network/axelar-local-dev'; -import { AxelarRelayerService, IBCRelayerService } from './services'; -import { retry } from '.'; -import { DockerService } from './services/DockerService'; +import { logger } from "@axelar-network/axelar-local-dev"; +import { AxelarRelayerService, IBCRelayerService } from "./services"; +import { retry } from "."; +import { DockerService } from "./services/DockerService"; // Warning: this mnemonic is used for testing only. Do not use it in production. export const testMnemonic = - 'illness step primary sibling donkey body sphere pigeon inject antique head educate'; + "illness step primary sibling donkey body sphere pigeon inject antique head educate"; export let cosmosRelayer: AxelarRelayerService; export let ibcRelayer: IBCRelayerService; @@ -39,11 +39,11 @@ export const setupIBCChannels = async () => { await sleep(30000); ibcRelayer = await getOrCreateIBCRelayer(); - logger.log('Setting up IBC Channels'); + logger.log("Setting up IBC Channels"); await retry(async () => { await ibcRelayer.createIBCChannelIfNeeded(); }); - logger.log('IBC Channels setup completed!'); + logger.log("IBC Channels setup completed!"); }; /** @@ -90,9 +90,9 @@ export const startIBCRelayer = async () => { try { const relayer = await getOrCreateIBCRelayer(); await relayer.runInterval(); - logger.log('IBC relayer started'); + logger.log("IBC relayer started"); } catch (error) { - logger.log('Error starting IBC Relayer: ', error); + logger.log("Error starting IBC Relayer: ", error); throw error; } }; @@ -107,9 +107,9 @@ export async function stopIBCRelayer() { try { const relayer = await getOrCreateIBCRelayer(); await relayer.stopInterval(); - logger.log('IBC relayer stopped'); + logger.log("IBC relayer stopped"); } catch (error) { - logger.log('Error stopping IBC Relayer: ', error); + logger.log("Error stopping IBC Relayer: ", error); throw error; } } diff --git a/packages/axelar-local-dev-cosmos/tsconfig.json b/packages/axelar-local-dev-cosmos/tsconfig.json index 4b84dcbc..9a77ec49 100644 --- a/packages/axelar-local-dev-cosmos/tsconfig.json +++ b/packages/axelar-local-dev-cosmos/tsconfig.json @@ -1,33 +1,39 @@ { "compilerOptions": { - /* Language and Environment */ - "target": "es6" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */, - "lib": ["es2020", "dom"] /* Specify a set of bundled library declaration files that describe the target runtime environment. */, + /* Language and Environment */ + "target": "es6" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */, + "lib": [ + "es2020", + "dom" + ] /* Specify a set of bundled library declaration files that describe the target runtime environment. */, - /* Modules */ - "module": "CommonJS" /* Specify what module code is generated. */, + /* Modules */ + "module": "CommonJS" /* Specify what module code is generated. */, - "resolveJsonModule": true, - /* Emit */ - "declaration": true /* Generate .d.ts files from TypeScript and JavaScript files in your project. */, - "declarationMap": true /* Create sourcemaps for d.ts files. */, - "sourceMap": true /* Create source map files for emitted JavaScript files. */, - "rootDirs": ["./src", "src/__tests__"] /* Specify the root folder within your source files. */, - "outDir": "./dist" /* Specify an output folder for all emitted files. */, + "resolveJsonModule": true, + /* Emit */ + "declaration": true /* Generate .d.ts files from TypeScript and JavaScript files in your project. */, + "declarationMap": true /* Create sourcemaps for d.ts files. */, + "sourceMap": true /* Create source map files for emitted JavaScript files. */, + "rootDirs": [ + "./src", + "src/__tests__" + ] /* Specify the root folder within your source files. */, + "outDir": "./dist" /* Specify an output folder for all emitted files. */, - /* Interop Constraints */ - // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */ - // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ - "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */, - "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */, + /* Interop Constraints */ + // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */ + // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ + "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */, + "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */, - /* Type Checking */ - "strict": true /* Enable all strict type-checking options. */, - "strictNullChecks": true /* When type checking, take into account `null` and `undefined`. */, + /* Type Checking */ + "strict": true /* Enable all strict type-checking options. */, + "strictNullChecks": true /* When type checking, take into account `null` and `undefined`. */, - /* Completeness */ - "skipDefaultLibCheck": true /* Skip type checking .d.ts files that are included with TypeScript. */, - "skipLibCheck": true /* Skip type checking all .d.ts files. */ + /* Completeness */ + "skipDefaultLibCheck": true /* Skip type checking .d.ts files that are included with TypeScript. */, + "skipLibCheck": true /* Skip type checking all .d.ts files. */ }, "include": ["src"], "exclude": ["node_modules", "dist", "src/__tests__/"] From 355ca6af2036bc1603dcddde852ccdae3620c2f7 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 23 Apr 2025 08:37:58 +0500 Subject: [PATCH 27/93] feat: create and deploy a multicall contract for testing --- .../src/__tests__/contracts/Multicall.sol | 23 ++++++++++++ packages/axelar-local-dev-cosmos/src/relay.ts | 35 +++++++++++-------- 2 files changed, 43 insertions(+), 15 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol new file mode 100644 index 00000000..37a4dbcc --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol @@ -0,0 +1,23 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.0; + +contract Multicall { + uint256 private value; + + event ValueSet(uint256 newValue); + event ValueAdded(uint256 addedValue, uint256 newTotal); + + function setValue(uint256 _value) public { + value = _value; + emit ValueSet(_value); + } + + function addToValue(uint256 _amount) public { + value += _amount; + emit ValueAdded(_amount, value); + } + + function getValue() public view returns (uint256) { + return value; + } +} diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts index 4e1bdb0f..96431b07 100644 --- a/packages/axelar-local-dev-cosmos/src/relay.ts +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -1,40 +1,45 @@ -import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; +import { defaultAxelarChainInfo, AxelarRelayerService } from './index'; import { evmRelayer, createNetwork, deployContract, relay, RelayerType, -} from "@axelar-network/axelar-local-dev"; -import { Contract } from "ethers"; +} from '@axelar-network/axelar-local-dev'; +import { Contract } from 'ethers'; export const relayBasic = async () => { const axelarRelayer = await AxelarRelayerService.create( defaultAxelarChainInfo ); - const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); - const WalletContract = require("../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json"); + const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); - const ethereumNetwork = await createNetwork({ name: "Ethereum" }); - const ethereumContract = await deployContract( + const multiCallContract = await deployContract( ethereumNetwork.userWallets[0], - Factory, + require('../artifacts/src/__tests__/contracts/Multicall.sol/Multicall.json') + ); + console.log('MultiCall Contract Address:', multiCallContract.address); + + const factoryContract = await deployContract( + ethereumNetwork.userWallets[0], + require('../artifacts/src/__tests__/contracts/Factory.sol/Factory.json'), [ ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, - "Ethereum", + 'Ethereum', ] ); + console.log('Factory Contract Address:', factoryContract.address); + const walletContractAbi = + require('../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json').abi; const wallet = new Contract( - "0x959c9a26d962c38f40d270a3825298cd58a8039e", - WalletContract.abi, + '0x959c9a26d962c38f40d270a3825298cd58a8039e', + walletContractAbi, ethereumNetwork.userWallets[0] ); - console.log("Ethereum Contract Address:", ethereumContract.address); - evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); while (true) { @@ -44,9 +49,9 @@ export const relayBasic = async () => { }); try { const ethereumMessage = await wallet.storedMessage(); - console.log("Ethereum Message:", ethereumMessage); + console.log('Ethereum Message:', ethereumMessage); } catch (e) { - console.log("Error:", e); + console.log('Error:', e); } } }; From 10d8bf14b084da0e425a8890cc2c2b13cc183f03 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 23 Apr 2025 08:38:20 +0500 Subject: [PATCH 28/93] chore: remove storedMessage in Factory.sol --- .../src/__tests__/contracts/Factory.sol | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index d9ca34a9..0577aa6c 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -21,14 +21,10 @@ contract Wallet is AxelarExecutableWithToken, Ownable { bytes data; } - Message public storedMessage; // message received from _execute - constructor( address gateway_, string memory owner_ - ) AxelarExecutableWithToken(gateway_) Ownable(owner_) { - storedMessage = Message("s", "f"); - } + ) AxelarExecutableWithToken(gateway_) Ownable(owner_) {} function _execute( bytes32 commandId, @@ -64,7 +60,6 @@ contract Wallet is AxelarExecutableWithToken, Ownable { require(amount > 0, "Deposit amount must be greater than zero"); address tokenAddress = gatewayWithToken().tokenAddresses(tokenSymbol); - storedMessage = Message(tokenSymbol, "f"); IERC20(tokenAddress).transfer(address(this), amount); // Transfer tokens from user IERC20(tokenAddress).approve(stakingAddress, amount); // Approve Aave Pool @@ -81,12 +76,6 @@ contract Factory is AxelarExecutable { IAxelarGasService public immutable gasService; string public chainName; // name of the chain this contract is deployed to - struct Message { - address sender; - } - - Message public storedMessage; // message received from _execute - constructor( address gateway_, address gasReceiver_, @@ -107,7 +96,6 @@ contract Factory is AxelarExecutable { string calldata sourceAddress, bytes calldata payload ) internal override { - // storedMessage = Message(sender, message); address vendorAddress = createVendor(sourceAddress); _send(sourceChain, sourceAddress, vendorAddress); } From 486d0d8b265c8e7f0fba40da1efb80757a4f7266 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 23 Apr 2025 08:48:12 +0500 Subject: [PATCH 29/93] chore: remove unused code in Factory.sol --- .../src/__tests__/contracts/Factory.sol | 52 +------------------ 1 file changed, 1 insertion(+), 51 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 0577aa6c..ea2f6fd1 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -11,11 +11,6 @@ import {StringToAddress, AddressToString} from "@axelar-network/axelar-gmp-sdk-s import {Ownable} from "src/__tests__/contracts/Ownable.sol"; contract Wallet is AxelarExecutableWithToken, Ownable { - struct Message { - string sender; - string message; - } - struct Call { address target; bytes data; @@ -74,7 +69,7 @@ contract Factory is AxelarExecutable { address _gateway; IAxelarGasService public immutable gasService; - string public chainName; // name of the chain this contract is deployed to + string public chainName; constructor( address gateway_, @@ -100,24 +95,17 @@ contract Factory is AxelarExecutable { _send(sourceChain, sourceAddress, vendorAddress); } - function char(bytes1 b) internal pure returns (bytes1 c) { - if (uint8(b) < 10) return bytes1(uint8(b) + 0x30); - else return bytes1(uint8(b) + 0x57); - } - function _send( string calldata destinationChain, string calldata destinationAddress, address message ) internal { - // 1. Generate GMP payload bytes memory executeMsgPayload = abi.encode(message); bytes memory payload = abi.encodePacked( bytes4(0x00000000), executeMsgPayload ); - // 2. Pay for gas gasService.payNativeGasForContractCall{value: msg.value}( address(this), destinationChain, @@ -126,44 +114,6 @@ contract Factory is AxelarExecutable { msg.sender ); - // 3. Make GMP call gateway.callContract(destinationChain, destinationAddress, payload); } - - function _encodePayload( - bytes memory executeMsgPayload - ) internal view returns (bytes memory) { - // Schema - // bytes4 version number (0x00000001) - // bytes ABI-encoded payload, indicating function name and arguments: - // string CosmWasm contract method name - // dynamic array of string CosmWasm contract argument name array - // dynamic array of string argument abi type array - // bytes abi encoded argument values - - // contract call arguments for ExecuteMsg::receive_message_evm{ source_chain, source_address, payload } - bytes memory argValues = abi.encode( - chainName, - address(this).toString(), - executeMsgPayload - ); - - string[] memory argumentNameArray = new string[](3); - argumentNameArray[0] = "source_chain"; - argumentNameArray[1] = "source_address"; - argumentNameArray[2] = "payload"; - - string[] memory abiTypeArray = new string[](3); - abiTypeArray[0] = "string"; - abiTypeArray[1] = "string"; - abiTypeArray[2] = "bytes"; - - bytes memory gmpPayload; - gmpPayload = abi.encode( - "receive_message_evm", - argumentNameArray, - abiTypeArray, - argValues - ); - } } From e10fe166836a84cc759d8af79f44e2e424298d08 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 23 Apr 2025 11:30:21 +0500 Subject: [PATCH 30/93] chore: change signature of _send to accept bytes payload --- .../src/__tests__/contracts/Factory.sol | 15 +++++++-------- packages/axelar-local-dev-cosmos/src/relay.ts | 15 --------------- 2 files changed, 7 insertions(+), 23 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index ea2f6fd1..f56da3a5 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -92,20 +92,19 @@ contract Factory is AxelarExecutable { bytes calldata payload ) internal override { address vendorAddress = createVendor(sourceAddress); - _send(sourceChain, sourceAddress, vendorAddress); + + bytes memory msgPayload = abi.encodePacked( + bytes4(0x00000000), + abi.encode(vendorAddress) + ); + _send(sourceChain, sourceAddress, msgPayload); } function _send( string calldata destinationChain, string calldata destinationAddress, - address message + bytes memory payload ) internal { - bytes memory executeMsgPayload = abi.encode(message); - bytes memory payload = abi.encodePacked( - bytes4(0x00000000), - executeMsgPayload - ); - gasService.payNativeGasForContractCall{value: msg.value}( address(this), destinationChain, diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts index 96431b07..84d81604 100644 --- a/packages/axelar-local-dev-cosmos/src/relay.ts +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -6,7 +6,6 @@ import { relay, RelayerType, } from '@axelar-network/axelar-local-dev'; -import { Contract } from 'ethers'; export const relayBasic = async () => { const axelarRelayer = await AxelarRelayerService.create( @@ -32,14 +31,6 @@ export const relayBasic = async () => { ); console.log('Factory Contract Address:', factoryContract.address); - const walletContractAbi = - require('../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json').abi; - const wallet = new Contract( - '0x959c9a26d962c38f40d270a3825298cd58a8039e', - walletContractAbi, - ethereumNetwork.userWallets[0] - ); - evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); while (true) { @@ -47,11 +38,5 @@ export const relayBasic = async () => { agoric: axelarRelayer, evm: evmRelayer, }); - try { - const ethereumMessage = await wallet.storedMessage(); - console.log('Ethereum Message:', ethereumMessage); - } catch (e) { - console.log('Error:', e); - } } }; From 036b82034349990439092c0adb0de94e890b46ae Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 23 Apr 2025 13:40:32 +0500 Subject: [PATCH 31/93] chore: send response to agoric contract from smart wallet --- .../src/__tests__/contracts/Factory.sol | 42 +++++++++++++++++-- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index f56da3a5..3a0646a2 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -16,10 +16,15 @@ contract Wallet is AxelarExecutableWithToken, Ownable { bytes data; } + IAxelarGasService public gasService; + constructor( address gateway_, + address gasReceiver_, string memory owner_ - ) AxelarExecutableWithToken(gateway_) Ownable(owner_) {} + ) AxelarExecutableWithToken(gateway_) Ownable(owner_) { + gasService = IAxelarGasService(gasReceiver_); + } function _execute( bytes32 commandId, @@ -33,10 +38,19 @@ contract Wallet is AxelarExecutableWithToken, Ownable { ); require(calls.length == totalCalls, "Payload length mismatch"); + bytes[] memory results = new bytes[](calls.length); + for (uint256 i = 0; i < calls.length; i++) { - (bool success, ) = calls[i].target.call(calls[i].data); + (bool success, bytes memory result) = calls[i].target.call( + calls[i].data + ); require(success, "Contract call failed"); + results[i] = result; } + + bytes memory responsePayload = abi.encode(results); + + _send(sourceChain, sourceAddress, responsePayload); } function _executeWithToken( @@ -61,6 +75,26 @@ contract Wallet is AxelarExecutableWithToken, Ownable { StakingContract(stakingAddress).stake(amount); // Deposit into Aave } + + function _send( + string calldata destinationChain, + string calldata destinationAddress, + bytes memory payload + ) internal { + gasService.payNativeGasForContractCall{value: msg.value}( + address(this), + destinationChain, + destinationAddress, + payload, + msg.sender + ); + + gatewayWithToken().callContract( + destinationChain, + destinationAddress, + payload + ); + } } contract Factory is AxelarExecutable { @@ -82,7 +116,9 @@ contract Factory is AxelarExecutable { } function createVendor(string memory owner) public returns (address) { - address newVendorAddress = address(new Wallet(_gateway, owner)); + address newVendorAddress = address( + new Wallet(_gateway, address(gasService), owner) + ); return newVendorAddress; } From 0d7a1d85a6c607b74c3b9922af1ff3169ac8f313 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 24 Apr 2025 07:57:42 +0500 Subject: [PATCH 32/93] fix: prepend missing bytes4 selector in response payload --- .../src/__tests__/contracts/Factory.sol | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 3a0646a2..892d2595 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -48,7 +48,10 @@ contract Wallet is AxelarExecutableWithToken, Ownable { results[i] = result; } - bytes memory responsePayload = abi.encode(results); + bytes memory responsePayload = abi.encodePacked( + bytes4(0x00000000), + abi.encode(results) + ); _send(sourceChain, sourceAddress, responsePayload); } From e103367ceaa9ec2619e8368f6e1debb37cd43918 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 24 Apr 2025 19:16:43 +0500 Subject: [PATCH 33/93] chore: define structure for contract calls and responses --- .../src/__tests__/contracts/Factory.sol | 43 +++++++++++-------- 1 file changed, 25 insertions(+), 18 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 892d2595..912a7c29 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -10,12 +10,23 @@ import {IERC20} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfac import {StringToAddress, AddressToString} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol"; import {Ownable} from "src/__tests__/contracts/Ownable.sol"; -contract Wallet is AxelarExecutableWithToken, Ownable { - struct Call { - address target; - bytes data; - } +struct CallResult { + bool success; + bytes result; +} + +struct AgoricResponse { + // false if this is a smart wallet creation, true if it's a contract call + bool isContractCallResult; + CallResult[] data; +} + +struct CallParams { + address target; + bytes data; +} +contract Wallet is AxelarExecutableWithToken, Ownable { IAxelarGasService public gasService; constructor( @@ -32,25 +43,22 @@ contract Wallet is AxelarExecutableWithToken, Ownable { string calldata sourceAddress, bytes calldata payload ) internal override onlyOwner(sourceAddress) { - (Call[] memory calls, uint256 totalCalls) = abi.decode( - payload, - (Call[], uint256) - ); - require(calls.length == totalCalls, "Payload length mismatch"); + CallParams[] memory calls = abi.decode(payload, (CallParams[])); + require(calls.length == 0, "Payload is empty"); - bytes[] memory results = new bytes[](calls.length); + CallResult[] memory results = new CallResult[](calls.length); for (uint256 i = 0; i < calls.length; i++) { (bool success, bytes memory result) = calls[i].target.call( calls[i].data ); require(success, "Contract call failed"); - results[i] = result; + results[i] = CallResult(success, result); } bytes memory responsePayload = abi.encodePacked( bytes4(0x00000000), - abi.encode(results) + abi.encode(AgoricResponse(true, results)) ); _send(sourceChain, sourceAddress, responsePayload); @@ -64,10 +72,6 @@ contract Wallet is AxelarExecutableWithToken, Ownable { string calldata tokenSymbol, uint256 amount ) internal override { - // Decode the payload: expect two arrays of equal length. - // (address[] memory targets, bytes[] memory callDatas) = abi.decode(payload, (address[], bytes[])); - // require(targets.length == callDatas.length, "Payload length mismatch"); - address stakingAddress = abi.decode(payload, (address)); require(amount > 0, "Deposit amount must be greater than zero"); @@ -131,10 +135,13 @@ contract Factory is AxelarExecutable { bytes calldata payload ) internal override { address vendorAddress = createVendor(sourceAddress); + CallResult[] memory results = new CallResult[](1); + + results[0] = CallResult(true, abi.encode(vendorAddress)); bytes memory msgPayload = abi.encodePacked( bytes4(0x00000000), - abi.encode(vendorAddress) + abi.encode(AgoricResponse(false, results)) ); _send(sourceChain, sourceAddress, msgPayload); } From 5a04d92aa9bc382f0a3a29e83ac6aa440db06e4d Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 24 Apr 2025 20:21:32 +0500 Subject: [PATCH 34/93] chore: remove length check --- .../axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 912a7c29..fd851b65 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -44,7 +44,6 @@ contract Wallet is AxelarExecutableWithToken, Ownable { bytes calldata payload ) internal override onlyOwner(sourceAddress) { CallParams[] memory calls = abi.decode(payload, (CallParams[])); - require(calls.length == 0, "Payload is empty"); CallResult[] memory results = new CallResult[](calls.length); From bb211f9484c5ee8b4c40aa6d304dedebc4a25af9 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 14 May 2025 14:58:44 +0500 Subject: [PATCH 35/93] chore: expose ports and apply lint docker-compose files --- .../docker/agoric/docker-compose.yaml | 33 ++++++++++--------- .../docker/axelar/docker-compose.yaml | 30 ++++++++--------- 2 files changed, 33 insertions(+), 30 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml index d67aa8e4..80316337 100644 --- a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml @@ -4,26 +4,29 @@ services: container_name: agoric entrypoint: /bin/bash -c "/root/private/bin/init_agoric.sh && exec ./start_agd.sh" volumes: - - "./bin:/root/private/bin" - - "./.agoric:/root/private/.agoric" + - './bin:/root/private/bin' + - './.agoric:/root/private/.agoric' + ports: + - '26657:26657' + - '1317:1317' labels: - - "traefik.enable=true" + - 'traefik.enable=true' # RPC - - "traefik.http.routers.agoric-rpc.rule=Host(`localhost`) && PathPrefix(`/agoric-rpc`)" - - "traefik.http.routers.agoric-rpc.entrypoints=web" - - "traefik.http.routers.agoric-rpc.service=agoric-rpc" - - "traefik.http.services.agoric-rpc.loadbalancer.server.port=26657" - - "traefik.http.middlewares.agoric-rpc.stripprefix.prefixes=/agoric-rpc" - - "traefik.http.routers.agoric-rpc.middlewares=agoric-rpc" + - 'traefik.http.routers.agoric-rpc.rule=Host(`localhost`) && PathPrefix(`/agoric-rpc`)' + - 'traefik.http.routers.agoric-rpc.entrypoints=web' + - 'traefik.http.routers.agoric-rpc.service=agoric-rpc' + - 'traefik.http.services.agoric-rpc.loadbalancer.server.port=26657' + - 'traefik.http.middlewares.agoric-rpc.stripprefix.prefixes=/agoric-rpc' + - 'traefik.http.routers.agoric-rpc.middlewares=agoric-rpc' # LCD - - "traefik.http.routers.agoric-lcd.rule=Host(`localhost`) && PathPrefix(`/agoric-lcd`)" - - "traefik.http.routers.agoric-lcd.entrypoints=web" - - "traefik.http.routers.agoric-lcd.service=agoric-lcd" - - "traefik.http.services.agoric-lcd.loadbalancer.server.port=1317" - - "traefik.http.middlewares.agoric-lcd.stripprefix.prefixes=/agoric-lcd" - - "traefik.http.routers.agoric-lcd.middlewares=agoric-lcd" + - 'traefik.http.routers.agoric-lcd.rule=Host(`localhost`) && PathPrefix(`/agoric-lcd`)' + - 'traefik.http.routers.agoric-lcd.entrypoints=web' + - 'traefik.http.routers.agoric-lcd.service=agoric-lcd' + - 'traefik.http.services.agoric-lcd.loadbalancer.server.port=1317' + - 'traefik.http.middlewares.agoric-lcd.stripprefix.prefixes=/agoric-lcd' + - 'traefik.http.routers.agoric-lcd.middlewares=agoric-lcd' networks: default: name: traefik_default diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml index bc042f79..c9ebc7fc 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml @@ -5,26 +5,26 @@ services: entrypoint: sh -l -c /root/private/bin/init_axelar.sh platform: linux/amd64 volumes: - - "./bin:/root/private/bin" - - "./.axelar:/root/private/.axelar" + - './bin:/root/private/bin' + - './.axelar:/root/private/.axelar' labels: - - "traefik.enable=true" + - 'traefik.enable=true' # RPC - - "traefik.http.routers.axelar-rpc.rule=Host(`localhost`) && PathPrefix(`/axelar-rpc`)" - - "traefik.http.services.axelar-rpc.loadbalancer.server.port=26657" - - "traefik.http.routers.axelar-rpc.entrypoints=web" - - "traefik.http.routers.axelar-rpc.service=axelar-rpc" - - "traefik.http.middlewares.axelar-rpc.stripprefix.prefixes=/axelar-rpc" - - "traefik.http.routers.axelar-rpc.middlewares=axelar-rpc" + - 'traefik.http.routers.axelar-rpc.rule=Host(`localhost`) && PathPrefix(`/axelar-rpc`)' + - 'traefik.http.services.axelar-rpc.loadbalancer.server.port=26657' + - 'traefik.http.routers.axelar-rpc.entrypoints=web' + - 'traefik.http.routers.axelar-rpc.service=axelar-rpc' + - 'traefik.http.middlewares.axelar-rpc.stripprefix.prefixes=/axelar-rpc' + - 'traefik.http.routers.axelar-rpc.middlewares=axelar-rpc' # LCD - - "traefik.http.routers.axelar-lcd.rule=Host(`localhost`) && PathPrefix(`/axelar-lcd`)" - - "traefik.http.services.axelar-lcd.loadbalancer.server.port=1317" - - "traefik.http.routers.axelar-lcd.entrypoints=web" - - "traefik.http.routers.axelar-lcd.service=axelar-lcd" - - "traefik.http.middlewares.axelar-lcd.stripprefix.prefixes=/axelar-lcd" - - "traefik.http.routers.axelar-lcd.middlewares=axelar-lcd" + - 'traefik.http.routers.axelar-lcd.rule=Host(`localhost`) && PathPrefix(`/axelar-lcd`)' + - 'traefik.http.services.axelar-lcd.loadbalancer.server.port=1317' + - 'traefik.http.routers.axelar-lcd.entrypoints=web' + - 'traefik.http.routers.axelar-lcd.service=axelar-lcd' + - 'traefik.http.middlewares.axelar-lcd.stripprefix.prefixes=/axelar-lcd' + - 'traefik.http.routers.axelar-lcd.middlewares=axelar-lcd' networks: default: name: traefik_default From 5e447fa52fde0fb1dcdca79920e23477fb4df568 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Sun, 15 Jun 2025 15:52:37 +0500 Subject: [PATCH 36/93] chore: use a3p u19 version --- .../axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml index 80316337..ac78aa56 100644 --- a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml @@ -1,6 +1,6 @@ services: agoric: - image: ghcr.io/agoric/agoric-3-proposals:latest + image: ghcr.io/agoric/agoric-3-proposals:use-upgrade-19 container_name: agoric entrypoint: /bin/bash -c "/root/private/bin/init_agoric.sh && exec ./start_agd.sh" volumes: From 89d89c509588e3ae41f94628b492f64683c13008 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 25 Jun 2025 15:21:52 +0500 Subject: [PATCH 37/93] chore: update implementation for _executeWithToken --- .../docker/agoric/docker-compose.yaml | 2 +- .../src/__tests__/contracts/Factory.sol | 121 +++++++++--------- 2 files changed, 60 insertions(+), 63 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml index ac78aa56..80316337 100644 --- a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml @@ -1,6 +1,6 @@ services: agoric: - image: ghcr.io/agoric/agoric-3-proposals:use-upgrade-19 + image: ghcr.io/agoric/agoric-3-proposals:latest container_name: agoric entrypoint: /bin/bash -c "/root/private/bin/init_agoric.sh && exec ./start_agd.sh" volumes: diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index fd851b65..a41e0d76 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -1,14 +1,11 @@ -// Factory Contract -// SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +// SPDX-License-Identifier: Apache-2.0 +pragma solidity ^0.8.28; -import {AxelarExecutable} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol"; import {AxelarExecutableWithToken} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol"; import {IAxelarGasService} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol"; -import {StakingContract} from "src/__tests__/contracts/StakingContract.sol"; import {IERC20} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol"; import {StringToAddress, AddressToString} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol"; -import {Ownable} from "src/__tests__/contracts/Ownable.sol"; +import {Ownable} from "./Ownable.sol"; struct CallResult { bool success; @@ -37,12 +34,9 @@ contract Wallet is AxelarExecutableWithToken, Ownable { gasService = IAxelarGasService(gasReceiver_); } - function _execute( - bytes32 commandId, - string calldata sourceChain, - string calldata sourceAddress, + function _multicall( bytes calldata payload - ) internal override onlyOwner(sourceAddress) { + ) internal returns (CallResult[] memory) { CallParams[] memory calls = abi.decode(payload, (CallParams[])); CallResult[] memory results = new CallResult[](calls.length); @@ -55,55 +49,49 @@ contract Wallet is AxelarExecutableWithToken, Ownable { results[i] = CallResult(success, result); } - bytes memory responsePayload = abi.encodePacked( - bytes4(0x00000000), - abi.encode(AgoricResponse(true, results)) - ); + return results; + } - _send(sourceChain, sourceAddress, responsePayload); + function _execute( + string calldata /*sourceChain*/, + string calldata sourceAddress, + bytes calldata payload + ) internal override onlyOwner(sourceAddress) { + _multicall(payload); } function _executeWithToken( - bytes32 commandId, string calldata sourceChain, string calldata sourceAddress, bytes calldata payload, - string calldata tokenSymbol, + string calldata symbol, uint256 amount ) internal override { - address stakingAddress = abi.decode(payload, (address)); - - require(amount > 0, "Deposit amount must be greater than zero"); - address tokenAddress = gatewayWithToken().tokenAddresses(tokenSymbol); - - IERC20(tokenAddress).transfer(address(this), amount); // Transfer tokens from user - IERC20(tokenAddress).approve(stakingAddress, amount); // Approve Aave Pool + address tokenAddress = gateway.tokenAddresses(symbol); + IERC20(tokenAddress).transferFrom(msg.sender, address(this), amount); + IERC20(tokenAddress).approve(address(gateway), amount); + IERC20(tokenAddress).approve(address(gasService), amount); - StakingContract(stakingAddress).stake(amount); // Deposit into Aave - } + bytes memory responsePayload = abi.encodePacked( + bytes4(0x00000000), + abi.encode(AgoricResponse(true, _multicall(payload))) + ); - function _send( - string calldata destinationChain, - string calldata destinationAddress, - bytes memory payload - ) internal { - gasService.payNativeGasForContractCall{value: msg.value}( + gasService.payGasForContractCall( address(this), - destinationChain, - destinationAddress, - payload, - msg.sender + sourceChain, + sourceAddress, + responsePayload, + tokenAddress, + amount, + address(this) ); - gatewayWithToken().callContract( - destinationChain, - destinationAddress, - payload - ); + gateway.callContract(sourceChain, sourceAddress, responsePayload); } } -contract Factory is AxelarExecutable { +contract Factory is AxelarExecutableWithToken { using StringToAddress for string; using AddressToString for address; @@ -111,53 +99,62 @@ contract Factory is AxelarExecutable { IAxelarGasService public immutable gasService; string public chainName; + event WalletCreated(address indexed target, string ownerAddress); + constructor( address gateway_, address gasReceiver_, string memory chainName_ - ) AxelarExecutable(gateway_) { + ) AxelarExecutableWithToken(gateway_) { gasService = IAxelarGasService(gasReceiver_); _gateway = gateway_; chainName = chainName_; } - function createVendor(string memory owner) public returns (address) { + function createSmartWallet(string memory owner) public returns (address) { address newVendorAddress = address( new Wallet(_gateway, address(gasService), owner) ); + emit WalletCreated(newVendorAddress, owner); return newVendorAddress; } function _execute( + string calldata /*sourceChain*/, + string calldata /*sourceAddress*/, + bytes calldata /*payload*/ + ) internal pure override { + revert("type 1 contract calls not supported"); + } + + function _executeWithToken( string calldata sourceChain, string calldata sourceAddress, - bytes calldata payload + bytes calldata /*payload*/, + string calldata symbol, + uint256 amount ) internal override { - address vendorAddress = createVendor(sourceAddress); + address tokenAddress = gateway.tokenAddresses(symbol); + address smartWalletAddress = createSmartWallet(sourceAddress); CallResult[] memory results = new CallResult[](1); - - results[0] = CallResult(true, abi.encode(vendorAddress)); + results[0] = CallResult(true, abi.encode(smartWalletAddress)); bytes memory msgPayload = abi.encodePacked( bytes4(0x00000000), abi.encode(AgoricResponse(false, results)) ); - _send(sourceChain, sourceAddress, msgPayload); - } - function _send( - string calldata destinationChain, - string calldata destinationAddress, - bytes memory payload - ) internal { - gasService.payNativeGasForContractCall{value: msg.value}( + IERC20(tokenAddress).approve(address(gasService), amount); + gasService.payGasForContractCall( address(this), - destinationChain, - destinationAddress, - payload, - msg.sender + sourceChain, + sourceAddress, + msgPayload, + tokenAddress, + amount, + address(this) ); - gateway.callContract(destinationChain, destinationAddress, payload); + gateway.callContract(sourceChain, sourceAddress, msgPayload); } } From 667df8900524617e1505a23bdc97e295169b04a0 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 25 Jun 2025 16:09:53 +0500 Subject: [PATCH 38/93] chore: minor changes to comply with working version on testnet --- .../src/__tests__/contracts/Factory.sol | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index a41e0d76..007c4a09 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -53,6 +53,7 @@ contract Wallet is AxelarExecutableWithToken, Ownable { } function _execute( + bytes32 /*commandId*/, string calldata /*sourceChain*/, string calldata sourceAddress, bytes calldata payload @@ -61,15 +62,16 @@ contract Wallet is AxelarExecutableWithToken, Ownable { } function _executeWithToken( + bytes32 /*commandId*/, string calldata sourceChain, string calldata sourceAddress, bytes calldata payload, string calldata symbol, uint256 amount ) internal override { - address tokenAddress = gateway.tokenAddresses(symbol); + address tokenAddress = gatewayWithToken().tokenAddresses(symbol); IERC20(tokenAddress).transferFrom(msg.sender, address(this), amount); - IERC20(tokenAddress).approve(address(gateway), amount); + IERC20(tokenAddress).approve(address(gatewayWithToken()), amount); IERC20(tokenAddress).approve(address(gasService), amount); bytes memory responsePayload = abi.encodePacked( @@ -87,7 +89,11 @@ contract Wallet is AxelarExecutableWithToken, Ownable { address(this) ); - gateway.callContract(sourceChain, sourceAddress, responsePayload); + gatewayWithToken().callContract( + sourceChain, + sourceAddress, + responsePayload + ); } } @@ -120,6 +126,7 @@ contract Factory is AxelarExecutableWithToken { } function _execute( + bytes32 /*commandId*/, string calldata /*sourceChain*/, string calldata /*sourceAddress*/, bytes calldata /*payload*/ @@ -128,13 +135,14 @@ contract Factory is AxelarExecutableWithToken { } function _executeWithToken( + bytes32 /*commandId*/, string calldata sourceChain, string calldata sourceAddress, bytes calldata /*payload*/, string calldata symbol, uint256 amount ) internal override { - address tokenAddress = gateway.tokenAddresses(symbol); + address tokenAddress = gatewayWithToken().tokenAddresses(symbol); address smartWalletAddress = createSmartWallet(sourceAddress); CallResult[] memory results = new CallResult[](1); results[0] = CallResult(true, abi.encode(smartWalletAddress)); @@ -155,6 +163,6 @@ contract Factory is AxelarExecutableWithToken { address(this) ); - gateway.callContract(sourceChain, sourceAddress, msgPayload); + gatewayWithToken().callContract(sourceChain, sourceAddress, msgPayload); } } From 3c10aed0a4e8f9c4c1877ce85fa4b1437ec16569 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Thu, 26 Jun 2025 08:19:08 +0200 Subject: [PATCH 39/93] chore: fix solidity version in contract --- .../axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 007c4a09..d3b5106f 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: Apache-2.0 -pragma solidity ^0.8.28; +pragma solidity ^0.8.20; import {AxelarExecutableWithToken} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol"; import {IAxelarGasService} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol"; From 98d76f1d10522b797761d9135d532bc34c51cf44 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Thu, 26 Jun 2025 08:19:49 +0200 Subject: [PATCH 40/93] chore: add token to relayer --- packages/axelar-local-dev-cosmos/src/relay.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts index 84d81604..16546a30 100644 --- a/packages/axelar-local-dev-cosmos/src/relay.ts +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -9,14 +9,15 @@ import { export const relayBasic = async () => { const axelarRelayer = await AxelarRelayerService.create( - defaultAxelarChainInfo + defaultAxelarChainInfo, ); const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); + await ethereumNetwork.deployToken('USDC', 'aUSDC', 6, BigInt(100_000e6)); const multiCallContract = await deployContract( ethereumNetwork.userWallets[0], - require('../artifacts/src/__tests__/contracts/Multicall.sol/Multicall.json') + require('../artifacts/src/__tests__/contracts/Multicall.sol/Multicall.json'), ); console.log('MultiCall Contract Address:', multiCallContract.address); @@ -27,7 +28,7 @@ export const relayBasic = async () => { ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, 'Ethereum', - ] + ], ); console.log('Factory Contract Address:', factoryContract.address); From 8d68c2852aee91b64e618f05876a0ea4719bcb07 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 26 Jun 2025 11:29:32 +0500 Subject: [PATCH 41/93] refactor(gasService): remove redundant approvals and transferFrom --- .../src/__tests__/contracts/Factory.sol | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index d3b5106f..fbdb4f40 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -70,15 +70,12 @@ contract Wallet is AxelarExecutableWithToken, Ownable { uint256 amount ) internal override { address tokenAddress = gatewayWithToken().tokenAddresses(symbol); - IERC20(tokenAddress).transferFrom(msg.sender, address(this), amount); - IERC20(tokenAddress).approve(address(gatewayWithToken()), amount); - IERC20(tokenAddress).approve(address(gasService), amount); - bytes memory responsePayload = abi.encodePacked( bytes4(0x00000000), abi.encode(AgoricResponse(true, _multicall(payload))) ); + IERC20(tokenAddress).approve(address(gasService), amount); gasService.payGasForContractCall( address(this), sourceChain, From a183b5520cb451cc87ba6d7af70070370eb04de9 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Fri, 27 Jun 2025 12:10:35 +0500 Subject: [PATCH 42/93] refactor: accept funds and pay gas via payNativeGasForContractCall --- .../src/__tests__/contracts/Factory.sol | 101 +++++++----------- 1 file changed, 41 insertions(+), 60 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index fbdb4f40..ba7071c7 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -1,7 +1,7 @@ // SPDX-License-Identifier: Apache-2.0 pragma solidity ^0.8.20; -import {AxelarExecutableWithToken} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol"; +import {AxelarExecutable} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol"; import {IAxelarGasService} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol"; import {IERC20} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol"; import {StringToAddress, AddressToString} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol"; @@ -23,14 +23,14 @@ struct CallParams { bytes data; } -contract Wallet is AxelarExecutableWithToken, Ownable { +contract Wallet is AxelarExecutable, Ownable { IAxelarGasService public gasService; constructor( address gateway_, address gasReceiver_, string memory owner_ - ) AxelarExecutableWithToken(gateway_) Ownable(owner_) { + ) AxelarExecutable(gateway_) Ownable(owner_) { gasService = IAxelarGasService(gasReceiver_); } @@ -53,7 +53,6 @@ contract Wallet is AxelarExecutableWithToken, Ownable { } function _execute( - bytes32 /*commandId*/, string calldata /*sourceChain*/, string calldata sourceAddress, bytes calldata payload @@ -62,39 +61,21 @@ contract Wallet is AxelarExecutableWithToken, Ownable { } function _executeWithToken( - bytes32 /*commandId*/, - string calldata sourceChain, - string calldata sourceAddress, + string calldata /*sourceChain*/, + string calldata /*sourceAddress*/, bytes calldata payload, - string calldata symbol, - uint256 amount + string calldata /*tokenSymbol*/, + uint256 /*amount*/ ) internal override { - address tokenAddress = gatewayWithToken().tokenAddresses(symbol); - bytes memory responsePayload = abi.encodePacked( - bytes4(0x00000000), - abi.encode(AgoricResponse(true, _multicall(payload))) - ); + _multicall(payload); + } - IERC20(tokenAddress).approve(address(gasService), amount); - gasService.payGasForContractCall( - address(this), - sourceChain, - sourceAddress, - responsePayload, - tokenAddress, - amount, - address(this) - ); + receive() external payable {} - gatewayWithToken().callContract( - sourceChain, - sourceAddress, - responsePayload - ); - } + fallback() external payable {} } -contract Factory is AxelarExecutableWithToken { +contract Factory is AxelarExecutable { using StringToAddress for string; using AddressToString for address; @@ -102,64 +83,64 @@ contract Factory is AxelarExecutableWithToken { IAxelarGasService public immutable gasService; string public chainName; - event WalletCreated(address indexed target, string ownerAddress); + event WalletCreated( + string label, + address indexed target, + string ownerAddress + ); constructor( address gateway_, address gasReceiver_, string memory chainName_ - ) AxelarExecutableWithToken(gateway_) { + ) AxelarExecutable(gateway_) { gasService = IAxelarGasService(gasReceiver_); _gateway = gateway_; chainName = chainName_; } function createSmartWallet(string memory owner) public returns (address) { - address newVendorAddress = address( + address newWallet = address( new Wallet(_gateway, address(gasService), owner) ); - emit WalletCreated(newVendorAddress, owner); - return newVendorAddress; + emit WalletCreated("WalletCreatedSuccess", newWallet, owner); + return newWallet; } function _execute( - bytes32 /*commandId*/, - string calldata /*sourceChain*/, - string calldata /*sourceAddress*/, - bytes calldata /*payload*/ - ) internal pure override { - revert("type 1 contract calls not supported"); - } - - function _executeWithToken( - bytes32 /*commandId*/, string calldata sourceChain, string calldata sourceAddress, - bytes calldata /*payload*/, - string calldata symbol, - uint256 amount + bytes calldata /*payload*/ ) internal override { - address tokenAddress = gatewayWithToken().tokenAddresses(symbol); - address smartWalletAddress = createSmartWallet(sourceAddress); + address vendorAddress = createSmartWallet(sourceAddress); CallResult[] memory results = new CallResult[](1); - results[0] = CallResult(true, abi.encode(smartWalletAddress)); + + results[0] = CallResult(true, abi.encode(vendorAddress)); bytes memory msgPayload = abi.encodePacked( bytes4(0x00000000), abi.encode(AgoricResponse(false, results)) ); + _send(sourceChain, sourceAddress, msgPayload); + } - IERC20(tokenAddress).approve(address(gasService), amount); - gasService.payGasForContractCall( + function _send( + string calldata destinationChain, + string calldata destinationAddress, + bytes memory payload + ) internal { + gasService.payNativeGasForContractCall{value: 1000000000000000}( address(this), - sourceChain, - sourceAddress, - msgPayload, - tokenAddress, - amount, + destinationChain, + destinationAddress, + payload, address(this) ); - gatewayWithToken().callContract(sourceChain, sourceAddress, msgPayload); + gateway.callContract(destinationChain, destinationAddress, payload); } + + receive() external payable {} + + fallback() external payable {} } From 10d3d86bff3e1b1bc1dafe501fd450f3d1af07a2 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 1 Jul 2025 13:46:20 +0500 Subject: [PATCH 43/93] chore(lint): enforce double quotes --- .prettierrc | 3 +++ package.json | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .prettierrc diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 00000000..1ca87ab7 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,3 @@ +{ + "singleQuote": false +} diff --git a/package.json b/package.json index 1b2b11ae..925e33fe 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,9 @@ "build:aptos": "lerna exec --scope=@axelar-network/axelar-local-dev-aptos npm run build", "build:sui": "lerna exec --scope=@axelar-network/axelar-local-dev-sui npm run build", "build:cosmos": "lerna exec --scope=@axelar-network/axelar-local-dev-cosmos npm run build", - "build:multiversx": "lerna exec --scope=@axelar-network/axelar-local-dev-multiversx npm run build" + "build:multiversx": "lerna exec --scope=@axelar-network/axelar-local-dev-multiversx npm run build", + "lint": "prettier --check .", + "lint:fix": "prettier --write ." }, "devDependencies": { "lerna": "^8.2.1", From 50ce168fbda87417d017c6f3e65d88935e6c818d Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 1 Jul 2025 13:48:00 +0500 Subject: [PATCH 44/93] chore(lint): use double quotes where missing --- README.md | 27 +- .../__tests__/aptos.spec.ts | 2 +- .../__tests__/contracts/HelloWorld.sol | 18 +- .../axelar-local-dev-aptos/src/Command.ts | 6 +- .../docker/agoric/docker-compose.yaml | 34 +- .../docker/axelar/docker-compose.yaml | 30 +- .../docker/wasm/docker-compose.yaml | 34 +- .../axelar-local-dev-cosmos/scripts/relay.ts | 2 +- .../scripts/relayFromEth.ts | 2 +- .../scripts/relayToEth.ts | 2 +- .../scripts/relayWithTokens.ts | 2 +- .../axelar-local-dev-cosmos/scripts/start.ts | 2 +- .../axelar-local-dev-cosmos/scripts/stop.ts | 2 +- .../src/__tests__/CosmosClient.spec.ts | 26 +- .../src/__tests__/DockerService.spec.ts | 64 +-- .../src/__tests__/IBCRelayerClient.spec.ts | 14 +- .../src/__tests__/lib/fetchLcd.ts | 2 +- .../src/__tests__/path.spec.ts | 18 +- .../src/__tests__/utils.spec.ts | 20 +- packages/axelar-local-dev-cosmos/src/relay.ts | 22 +- .../src/services/AxelarRelayerService.ts | 46 +- .../axelar-local-dev-multiversx/README.md | 8 +- .../__tests__/contracts/HelloWorld.sol | 18 +- .../__tests__/multiversx.spec.ts | 105 ++--- .../docker-compose.yaml | 16 +- .../src/MultiversXNetwork.ts | 161 +++---- .../src/MultiversXRelayer.ts | 82 ++-- .../axelar-local-dev-multiversx/src/its.ts | 395 +++++++++--------- .../src/multiversXNetworkUtils.ts | 8 +- .../src/contracts/test/Executable.sol | 6 +- .../contracts/TestExecutable.sol | 7 +- packages/axelar-local-dev-sui/src/Command.ts | 10 +- .../axelar-local-dev-sui/src/SuiNetwork.ts | 7 +- packages/axelar-local-dev-sui/src/utils.ts | 51 +-- packages/axelar-local-dev/.solhint.json | 14 +- packages/axelar-local-dev/src/exportUtils.ts | 2 +- 36 files changed, 585 insertions(+), 680 deletions(-) diff --git a/README.md b/README.md index 72abcd61..ca43e503 100644 --- a/README.md +++ b/README.md @@ -7,23 +7,32 @@ This repository does not demonstrate a token trasnfer to eth but rather a messag ## Steps to run contract call - In root of the workspace run: + ```bash npm install npm run build ``` + - Change to `axelar-local-dev-cosmos` dir + ```bash cd packages/axelar-local-dev-cosmos ``` + - start the agoric and axelar chains using: + ```bash npm run start ``` + - start the relaying process using + ```bash npm run relay ``` + - you should see this in the logs: + ``` Message on Ethereum Contract: [ 'agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', @@ -36,40 +45,56 @@ Message on Ethereum Contract: [ ## Steps to run contract call with token transfer - In root of the workspace run: + ```bash npm install npm run build ``` + - Change to `axelar-local-dev-cosmos` dir + ```bash cd packages/axelar-local-dev-cosmos ``` + - start the agoric and axelar chains using: + ```bash npm run start ``` + - run the script to start an ibc-transfer + ```bash bash ./docker/axelar/bin/steps/ibc-transfer.sh ``` + - run this script to relay the ibc trasnsaction. + ```bash npm run relayWithTokens ``` + - After that run again to relay the token transfer + ```bash npm run relayWithTokens ``` + - you should see this in the logs: + ``` Balance of account after relaying ... ``` > **Note:** the `npm run relay` command will not exit by itself after receiving the message on ethereum and must be manually exited) + ## Main file + The main file to look out for is the `packages/axelar-local-dev-cosmos/src/relayToEth.ts` in which the majority of the work is being done. -This file is responsible for +This file is responsible for + - starting up an ethereum chain instance - adding a solidity contract to that instance (which receives the message from cosmos) - setting up a relayer between axelar and ethereum + axelar and agoric diff --git a/packages/axelar-local-dev-aptos/__tests__/aptos.spec.ts b/packages/axelar-local-dev-aptos/__tests__/aptos.spec.ts index d6f7016d..0e46ef73 100644 --- a/packages/axelar-local-dev-aptos/__tests__/aptos.spec.ts +++ b/packages/axelar-local-dev-aptos/__tests__/aptos.spec.ts @@ -97,7 +97,7 @@ describe('aptos', () => { const pubTxHash = await client.publishPackage( client.owner, packageMetadata, - moduleDatas.map((moduleData) => new TxnBuilderTypes.Module(new HexString(moduleData.toString('hex')).toUint8Array())) + moduleDatas.map((moduleData) => new TxnBuilderTypes.Module(new HexString(moduleData.toString('hex')).toUint8Array())), ); const pubTx: any = await client.waitForTransactionWithResult(pubTxHash); if (pubTx.vm_status !== 'Executed successfully') { diff --git a/packages/axelar-local-dev-aptos/__tests__/contracts/HelloWorld.sol b/packages/axelar-local-dev-aptos/__tests__/contracts/HelloWorld.sol index 6e3983db..08a400e1 100644 --- a/packages/axelar-local-dev-aptos/__tests__/contracts/HelloWorld.sol +++ b/packages/axelar-local-dev-aptos/__tests__/contracts/HelloWorld.sol @@ -11,23 +11,17 @@ contract HelloWorld is AxelarExecutable { string public sourceAddress; IAxelarGasService gasService; - constructor(address _gateway, address _gasReceiver) - AxelarExecutable(_gateway) - { + constructor(address _gateway, address _gasReceiver) AxelarExecutable(_gateway) { gasService = IAxelarGasService(_gasReceiver); } event Executed(); // Call this function to update the value of this contract along with all its siblings'. - function setRemoteValue( - string memory destinationChain, - string memory destinationAddress, - string calldata message - ) external payable { + function setRemoteValue(string memory destinationChain, string memory destinationAddress, string calldata message) external payable { bytes memory payload = abi.encodePacked(message); if (msg.value > 0) { - gasService.payNativeGasForContractCall{value: msg.value}( + gasService.payNativeGasForContractCall{ value: msg.value }( address(this), destinationChain, destinationAddress, @@ -39,11 +33,7 @@ contract HelloWorld is AxelarExecutable { } // Handles calls created by setAndSend. Updates this contract's value - function _execute( - string calldata sourceChain_, - string calldata sourceAddress_, - bytes calldata payload_ - ) internal override { + function _execute(string calldata sourceChain_, string calldata sourceAddress_, bytes calldata payload_) internal override { (value) = abi.decode(payload_, (string)); sourceChain = sourceChain_; sourceAddress = sourceAddress_; diff --git a/packages/axelar-local-dev-aptos/src/Command.ts b/packages/axelar-local-dev-aptos/src/Command.ts index f83c5fe2..955ddd0b 100644 --- a/packages/axelar-local-dev-aptos/src/Command.ts +++ b/packages/axelar-local-dev-aptos/src/Command.ts @@ -20,7 +20,7 @@ export class Command { data: any[], dataSignature: string[], post: ((options: any) => Promise) | undefined = undefined, - chain: string | null = null + chain: string | null = null, ) { this.commandId = commandId; this.name = name; @@ -39,13 +39,13 @@ export class Command { const tx = await aptosNetwork.execute( new HexString(commandId).toUint8Array(), args.destinationContractAddress, - new HexString(args.payload).toUint8Array() + new HexString(args.payload).toUint8Array(), ); relayData.callContract[commandId].execution = tx.hash; return tx; }, - 'aptos' + 'aptos', ); }; } diff --git a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml index 80316337..af411d51 100644 --- a/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/agoric/docker-compose.yaml @@ -4,29 +4,29 @@ services: container_name: agoric entrypoint: /bin/bash -c "/root/private/bin/init_agoric.sh && exec ./start_agd.sh" volumes: - - './bin:/root/private/bin' - - './.agoric:/root/private/.agoric' + - "./bin:/root/private/bin" + - "./.agoric:/root/private/.agoric" ports: - - '26657:26657' - - '1317:1317' + - "26657:26657" + - "1317:1317" labels: - - 'traefik.enable=true' + - "traefik.enable=true" # RPC - - 'traefik.http.routers.agoric-rpc.rule=Host(`localhost`) && PathPrefix(`/agoric-rpc`)' - - 'traefik.http.routers.agoric-rpc.entrypoints=web' - - 'traefik.http.routers.agoric-rpc.service=agoric-rpc' - - 'traefik.http.services.agoric-rpc.loadbalancer.server.port=26657' - - 'traefik.http.middlewares.agoric-rpc.stripprefix.prefixes=/agoric-rpc' - - 'traefik.http.routers.agoric-rpc.middlewares=agoric-rpc' + - "traefik.http.routers.agoric-rpc.rule=Host(`localhost`) && PathPrefix(`/agoric-rpc`)" + - "traefik.http.routers.agoric-rpc.entrypoints=web" + - "traefik.http.routers.agoric-rpc.service=agoric-rpc" + - "traefik.http.services.agoric-rpc.loadbalancer.server.port=26657" + - "traefik.http.middlewares.agoric-rpc.stripprefix.prefixes=/agoric-rpc" + - "traefik.http.routers.agoric-rpc.middlewares=agoric-rpc" # LCD - - 'traefik.http.routers.agoric-lcd.rule=Host(`localhost`) && PathPrefix(`/agoric-lcd`)' - - 'traefik.http.routers.agoric-lcd.entrypoints=web' - - 'traefik.http.routers.agoric-lcd.service=agoric-lcd' - - 'traefik.http.services.agoric-lcd.loadbalancer.server.port=1317' - - 'traefik.http.middlewares.agoric-lcd.stripprefix.prefixes=/agoric-lcd' - - 'traefik.http.routers.agoric-lcd.middlewares=agoric-lcd' + - "traefik.http.routers.agoric-lcd.rule=Host(`localhost`) && PathPrefix(`/agoric-lcd`)" + - "traefik.http.routers.agoric-lcd.entrypoints=web" + - "traefik.http.routers.agoric-lcd.service=agoric-lcd" + - "traefik.http.services.agoric-lcd.loadbalancer.server.port=1317" + - "traefik.http.middlewares.agoric-lcd.stripprefix.prefixes=/agoric-lcd" + - "traefik.http.routers.agoric-lcd.middlewares=agoric-lcd" networks: default: name: traefik_default diff --git a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml index c9ebc7fc..bc042f79 100755 --- a/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/axelar/docker-compose.yaml @@ -5,26 +5,26 @@ services: entrypoint: sh -l -c /root/private/bin/init_axelar.sh platform: linux/amd64 volumes: - - './bin:/root/private/bin' - - './.axelar:/root/private/.axelar' + - "./bin:/root/private/bin" + - "./.axelar:/root/private/.axelar" labels: - - 'traefik.enable=true' + - "traefik.enable=true" # RPC - - 'traefik.http.routers.axelar-rpc.rule=Host(`localhost`) && PathPrefix(`/axelar-rpc`)' - - 'traefik.http.services.axelar-rpc.loadbalancer.server.port=26657' - - 'traefik.http.routers.axelar-rpc.entrypoints=web' - - 'traefik.http.routers.axelar-rpc.service=axelar-rpc' - - 'traefik.http.middlewares.axelar-rpc.stripprefix.prefixes=/axelar-rpc' - - 'traefik.http.routers.axelar-rpc.middlewares=axelar-rpc' + - "traefik.http.routers.axelar-rpc.rule=Host(`localhost`) && PathPrefix(`/axelar-rpc`)" + - "traefik.http.services.axelar-rpc.loadbalancer.server.port=26657" + - "traefik.http.routers.axelar-rpc.entrypoints=web" + - "traefik.http.routers.axelar-rpc.service=axelar-rpc" + - "traefik.http.middlewares.axelar-rpc.stripprefix.prefixes=/axelar-rpc" + - "traefik.http.routers.axelar-rpc.middlewares=axelar-rpc" # LCD - - 'traefik.http.routers.axelar-lcd.rule=Host(`localhost`) && PathPrefix(`/axelar-lcd`)' - - 'traefik.http.services.axelar-lcd.loadbalancer.server.port=1317' - - 'traefik.http.routers.axelar-lcd.entrypoints=web' - - 'traefik.http.routers.axelar-lcd.service=axelar-lcd' - - 'traefik.http.middlewares.axelar-lcd.stripprefix.prefixes=/axelar-lcd' - - 'traefik.http.routers.axelar-lcd.middlewares=axelar-lcd' + - "traefik.http.routers.axelar-lcd.rule=Host(`localhost`) && PathPrefix(`/axelar-lcd`)" + - "traefik.http.services.axelar-lcd.loadbalancer.server.port=1317" + - "traefik.http.routers.axelar-lcd.entrypoints=web" + - "traefik.http.routers.axelar-lcd.service=axelar-lcd" + - "traefik.http.middlewares.axelar-lcd.stripprefix.prefixes=/axelar-lcd" + - "traefik.http.routers.axelar-lcd.middlewares=axelar-lcd" networks: default: name: traefik_default diff --git a/packages/axelar-local-dev-cosmos/docker/wasm/docker-compose.yaml b/packages/axelar-local-dev-cosmos/docker/wasm/docker-compose.yaml index 28a1b1b5..12461b75 100644 --- a/packages/axelar-local-dev-cosmos/docker/wasm/docker-compose.yaml +++ b/packages/axelar-local-dev-cosmos/docker/wasm/docker-compose.yaml @@ -1,30 +1,30 @@ -version: '3.8' +version: "3.8" services: wasm: image: cosmwasm/wasmd:v0.42.0 container_name: wasm - command: '/root/private/bin/init_wasm.sh' + command: "/root/private/bin/init_wasm.sh" volumes: - - './bin:/root/private/bin' - - './.wasm:/root/private/.wasm' + - "./bin:/root/private/bin" + - "./.wasm:/root/private/.wasm" labels: - - 'traefik.enable=true' + - "traefik.enable=true" # RPC - - 'traefik.http.routers.wasm-rpc.rule=Host(`localhost`) && PathPrefix(`/wasm-rpc`)' - - 'traefik.http.routers.wasm-rpc.entrypoints=web' - - 'traefik.http.routers.wasm-rpc.service=wasm-rpc' - - 'traefik.http.services.wasm-rpc.loadbalancer.server.port=26657' - - 'traefik.http.middlewares.wasm-rpc.stripprefix.prefixes=/wasm-rpc' - - 'traefik.http.routers.wasm-rpc.middlewares=wasm-rpc' + - "traefik.http.routers.wasm-rpc.rule=Host(`localhost`) && PathPrefix(`/wasm-rpc`)" + - "traefik.http.routers.wasm-rpc.entrypoints=web" + - "traefik.http.routers.wasm-rpc.service=wasm-rpc" + - "traefik.http.services.wasm-rpc.loadbalancer.server.port=26657" + - "traefik.http.middlewares.wasm-rpc.stripprefix.prefixes=/wasm-rpc" + - "traefik.http.routers.wasm-rpc.middlewares=wasm-rpc" # LCD - - 'traefik.http.routers.wasm-lcd.rule=Host(`localhost`) && PathPrefix(`/wasm-lcd`)' - - 'traefik.http.routers.wasm-lcd.entrypoints=web' - - 'traefik.http.routers.wasm-lcd.service=wasm-lcd' - - 'traefik.http.services.wasm-lcd.loadbalancer.server.port=1317' - - 'traefik.http.middlewares.wasm-lcd.stripprefix.prefixes=/wasm-lcd' - - 'traefik.http.routers.wasm-lcd.middlewares=wasm-lcd' + - "traefik.http.routers.wasm-lcd.rule=Host(`localhost`) && PathPrefix(`/wasm-lcd`)" + - "traefik.http.routers.wasm-lcd.entrypoints=web" + - "traefik.http.routers.wasm-lcd.service=wasm-lcd" + - "traefik.http.services.wasm-lcd.loadbalancer.server.port=1317" + - "traefik.http.middlewares.wasm-lcd.stripprefix.prefixes=/wasm-lcd" + - "traefik.http.routers.wasm-lcd.middlewares=wasm-lcd" networks: default: name: traefik_default diff --git a/packages/axelar-local-dev-cosmos/scripts/relay.ts b/packages/axelar-local-dev-cosmos/scripts/relay.ts index aa3b134f..ceafce96 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relay.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relay.ts @@ -1,3 +1,3 @@ -import { relayBasic } from '../src/relay'; +import { relayBasic } from "../src/relay"; relayBasic(); diff --git a/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts b/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts index 5516ff03..bc165e45 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts @@ -1,3 +1,3 @@ -import { relayDataFromEth } from '../src/relayFromEth'; +import { relayDataFromEth } from "../src/relayFromEth"; relayDataFromEth(); diff --git a/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts b/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts index 71b19d6d..a8dc8fcd 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts @@ -1,3 +1,3 @@ -import { relayDataToEth } from '../src/relayToEth'; +import { relayDataToEth } from "../src/relayToEth"; relayDataToEth(); diff --git a/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts b/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts index f3a597c6..9b12f7b8 100644 --- a/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts +++ b/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts @@ -1,3 +1,3 @@ -import { relayDataToEth } from '../src/relayTokensToEth'; +import { relayDataToEth } from "../src/relayTokensToEth"; relayDataToEth(); diff --git a/packages/axelar-local-dev-cosmos/scripts/start.ts b/packages/axelar-local-dev-cosmos/scripts/start.ts index e48ce5f2..e00ffef5 100644 --- a/packages/axelar-local-dev-cosmos/scripts/start.ts +++ b/packages/axelar-local-dev-cosmos/scripts/start.ts @@ -1,3 +1,3 @@ -import { startChains } from '../src/setup'; +import { startChains } from "../src/setup"; startChains(); diff --git a/packages/axelar-local-dev-cosmos/scripts/stop.ts b/packages/axelar-local-dev-cosmos/scripts/stop.ts index 89248f62..5558c3a1 100644 --- a/packages/axelar-local-dev-cosmos/scripts/stop.ts +++ b/packages/axelar-local-dev-cosmos/scripts/stop.ts @@ -1,3 +1,3 @@ -import { stopAll } from '../src/setup'; +import { stopAll } from "../src/setup"; stopAll(); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/CosmosClient.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/CosmosClient.spec.ts index 30745247..48e7d86d 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/CosmosClient.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/CosmosClient.spec.ts @@ -1,33 +1,33 @@ -import path from 'path'; -import { CosmosClient } from '..'; +import path from "path"; +import { CosmosClient } from ".."; -describe('CosmosClient', () => { +describe("CosmosClient", () => { let wasmClient: CosmosClient; let axelarClient: CosmosClient; beforeAll(async () => { - wasmClient = await CosmosClient.create('wasm'); - axelarClient = await CosmosClient.create('axelar'); + wasmClient = await CosmosClient.create("wasm"); + axelarClient = await CosmosClient.create("axelar"); }); - it('should be able to upload wasm contract', async () => { - const _path = path.resolve(__dirname, '../..', 'wasm/multi_send.wasm'); + it("should be able to upload wasm contract", async () => { + const _path = path.resolve(__dirname, "../..", "wasm/multi_send.wasm"); const response = await wasmClient.uploadWasm(_path); expect(response).toBeDefined(); }); - it('should be able to send tokens to given address on wasm', async () => { - const recipient = 'wasm1puut77ku823785u3c7aalwqdrawe3lnjgwt89v'; - const amount = '1000000'; + it("should be able to send tokens to given address on wasm", async () => { + const recipient = "wasm1puut77ku823785u3c7aalwqdrawe3lnjgwt89v"; + const amount = "1000000"; const initialBalance = await wasmClient.getBalance(recipient); await wasmClient.fundWallet(recipient, amount); const balance = await wasmClient.getBalance(recipient); expect(parseInt(balance)).toBe(parseInt(initialBalance) + parseInt(amount)); }); - it('should be able to send tokens to given address on axelar', async () => { - const recipient = 'axelar1puut77ku823785u3c7aalwqdrawe3lnjxuv68x'; - const amount = '1000000'; + it("should be able to send tokens to given address on axelar", async () => { + const recipient = "axelar1puut77ku823785u3c7aalwqdrawe3lnjxuv68x"; + const amount = "1000000"; const initialBalance = await axelarClient.getBalance(recipient); await axelarClient.fundWallet(recipient, amount); const balance = await axelarClient.getBalance(recipient); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts index eab3ed42..51bbae64 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts @@ -1,19 +1,19 @@ -import { setLogger } from '@axelar-network/axelar-local-dev'; -import { exportOwnerAccountFromContainer } from '../utils'; -import { fetchAxelarLcd } from './lib/fetchLcd'; -import { CosmosClient } from '..'; -import fetch from 'node-fetch'; +import { setLogger } from "@axelar-network/axelar-local-dev"; +import { exportOwnerAccountFromContainer } from "../utils"; +import { fetchAxelarLcd } from "./lib/fetchLcd"; +import { CosmosClient } from ".."; +import fetch from "node-fetch"; setLogger(() => undefined); -describe('DockerService', () => { - it('should start containers successfully', async () => { - const testLcd = 'cosmos/base/tendermint/v1beta1/node_info'; - const healthAxelarRpc = await fetch('http://localhost/axelar-rpc'); +describe("DockerService", () => { + it("should start containers successfully", async () => { + const testLcd = "cosmos/base/tendermint/v1beta1/node_info"; + const healthAxelarRpc = await fetch("http://localhost/axelar-rpc"); const healthAxelarLcd = await fetch( `http://localhost/axelar-lcd/${testLcd}` ); - const healthWasmRpc = await fetch('http://localhost/wasm-rpc'); + const healthWasmRpc = await fetch("http://localhost/wasm-rpc"); const healthWasmLcd = await fetch(`http://localhost/wasm-lcd/${testLcd}`); expect(healthAxelarRpc.status).toBe(200); @@ -22,8 +22,8 @@ describe('DockerService', () => { expect(healthWasmLcd.status).toBe(200); }); - it('should have some balance in the owner account', async () => { - const owner = await exportOwnerAccountFromContainer('wasm'); + it("should have some balance in the owner account", async () => { + const owner = await exportOwnerAccountFromContainer("wasm"); const cosmosClient = await CosmosClient.create(); const balance = await cosmosClient.getBalance(owner.address); @@ -31,49 +31,49 @@ describe('DockerService', () => { expect(parseInt(balance)).toBeGreaterThan(1); }); - it('should have registered evm chain', async () => { - const response = await fetchAxelarLcd('axelar/evm/v1beta1/params/Ethereum'); + it("should have registered evm chain", async () => { + const response = await fetchAxelarLcd("axelar/evm/v1beta1/params/Ethereum"); const { token_code, network, chain, burnable } = response.params; expect(token_code).toBeDefined(); expect(burnable).toBeDefined(); - expect(network).toBe('ethereum'); - expect(chain).toBe('Ethereum'); + expect(network).toBe("ethereum"); + expect(chain).toBe("Ethereum"); }); - it('should have registered wasm chain', async () => { + it("should have registered wasm chain", async () => { const response = await fetchAxelarLcd( - 'axelar/nexus/v1beta1/chain_state/wasm' + "axelar/nexus/v1beta1/chain_state/wasm" ); const { activated, chain } = response.state; expect(chain).toEqual({ - name: 'wasm', + name: "wasm", supports_foreign_assets: true, - key_type: 'KEY_TYPE_NONE', - module: 'axelarnet', + key_type: "KEY_TYPE_NONE", + module: "axelarnet", }); expect(activated).toBe(true); }); - it('should have chain maintainer for ethereum', async () => { + it("should have chain maintainer for ethereum", async () => { const response = await fetchAxelarLcd( - 'axelar/nexus/v1beta1/chain_maintainers/ethereum' + "axelar/nexus/v1beta1/chain_maintainers/ethereum" ); expect(response.maintainers.length).toBeGreaterThan(0); }); - it('should have channel id between axelar <-> wasm', async () => { - const response = await fetchAxelarLcd('ibc/core/channel/v1/channels'); + it("should have channel id between axelar <-> wasm", async () => { + const response = await fetchAxelarLcd("ibc/core/channel/v1/channels"); expect(response.channels[0]).toEqual({ - state: 'STATE_OPEN', - ordering: 'ORDER_UNORDERED', + state: "STATE_OPEN", + ordering: "ORDER_UNORDERED", counterparty: { - port_id: 'transfer', - channel_id: 'channel-0', + port_id: "transfer", + channel_id: "channel-0", }, connection_hops: [expect.any(String)], - version: 'ics20-1', - port_id: 'transfer', - channel_id: 'channel-0', + version: "ics20-1", + port_id: "transfer", + channel_id: "channel-0", }); }); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts index f66307e4..6a30e0e8 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts @@ -1,8 +1,8 @@ -import { IBCRelayerClient } from '../clients'; -import { DirectSecp256k1HdWallet } from '@cosmjs/proto-signing'; +import { IBCRelayerClient } from "../clients"; +import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; -describe('IBCRelayerClient', () => { - it.skip('should be able to create a connection and channel', async () => { +describe("IBCRelayerClient", () => { + it.skip("should be able to create a connection and channel", async () => { const relayerClient = await IBCRelayerClient.create(); const response = await relayerClient.initConnection(); @@ -10,14 +10,14 @@ describe('IBCRelayerClient', () => { expect(response.axelar).toBeDefined(); expect(response.wasm).toBeDefined(); - const response2 = await relayerClient.createChannel('B'); + const response2 = await relayerClient.createChannel("B"); expect(response2).toBeDefined(); expect(response2!.src).toBeDefined(); expect(response2!.dest).toBeDefined(); }); - it('should create a wallet from a mnemonic if provided', async () => { + it("should create a wallet from a mnemonic if provided", async () => { const mockMnemonic = await DirectSecp256k1HdWallet.generate(12).then( (w) => w.mnemonic ); @@ -28,7 +28,7 @@ describe('IBCRelayerClient', () => { ); }); - it('should generate a new wallet if no mnemonic is provided', async () => { + it("should generate a new wallet if no mnemonic is provided", async () => { const result = await IBCRelayerClient.create(); expect(result).toBeDefined(); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts b/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts index c33a6c1b..1c62660d 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts @@ -1,4 +1,4 @@ -import fetch from 'node-fetch'; +import fetch from "node-fetch"; export function fetchAxelarLcd(endpoint?: string) { return fetch(`http://localhost/axelar-lcd/${endpoint}`).then((res) => diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts index 5ca6383b..4d385a2f 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts @@ -1,18 +1,18 @@ -import { Path } from '../path'; +import { Path } from "../path"; -describe('path', () => { - it('should define path correctly', () => { +describe("path", () => { + it("should define path correctly", () => { expect(Path.base).toContain( - 'axelar-local-dev/packages/axelar-local-dev-cosmos' + "axelar-local-dev/packages/axelar-local-dev-cosmos" ); expect(Path.info).toContain( - 'axelar-local-dev/packages/axelar-local-dev-cosmos/info' + "axelar-local-dev/packages/axelar-local-dev-cosmos/info" ); - expect(Path.docker('axelar')).toContain( - 'axelar-local-dev/packages/axelar-local-dev-cosmos/docker/axelar' + expect(Path.docker("axelar")).toContain( + "axelar-local-dev/packages/axelar-local-dev-cosmos/docker/axelar" ); - expect(Path.docker('wasm')).toContain( - 'axelar-local-dev/packages/axelar-local-dev-cosmos/docker/wasm' + expect(Path.docker("wasm")).toContain( + "axelar-local-dev/packages/axelar-local-dev-cosmos/docker/wasm" ); }); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/utils.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/utils.spec.ts index 5321add8..44d13d9b 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/utils.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/utils.spec.ts @@ -1,20 +1,20 @@ -import { decodeVersionedPayload } from '../utils'; +import { decodeVersionedPayload } from "../utils"; -describe('utils', () => { - it('decodeVersionedPayload', () => { +describe("utils", () => { + it("decodeVersionedPayload", () => { const rawPayloadFromGateway = - '0x00000001000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000013726563656976655f6d6573736167655f65766d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000c736f757263655f636861696e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e736f757263655f6164647265737300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000077061796c6f6164000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000006737472696e6700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006737472696e670000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000562797465730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000008657468657265756d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a3078356233343837366666623136353637313066623936336563643139396336663137336332393236370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002a30786531373063373031643832613735346261316537623534616237353664386330326637623235386500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001368656c6c6f2066726f6d20657468657265756d00000000000000000000000000'; + "0x00000001000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000003400000000000000000000000000000000000000000000000000000000000000013726563656976655f6d6573736167655f65766d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000c736f757263655f636861696e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e736f757263655f6164647265737300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000077061796c6f6164000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000006737472696e6700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006737472696e670000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000562797465730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000008657468657265756d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a3078356233343837366666623136353637313066623936336563643139396336663137336332393236370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002a30786531373063373031643832613735346261316537623534616237353664386330326637623235386500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001368656c6c6f2066726f6d20657468657265756d00000000000000000000000000"; const result = decodeVersionedPayload(rawPayloadFromGateway); expect(result).toEqual({ - methodName: 'receive_message_evm', - argNames: ['source_chain', 'source_address', 'payload'], - argTypes: ['string', 'string', 'bytes'], + methodName: "receive_message_evm", + argNames: ["source_chain", "source_address", "payload"], + argTypes: ["string", "string", "bytes"], argValues: [ - 'ethereum', - '0x5b34876ffb1656710fb963ecd199c6f173c29267', - 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqMHhlMTcwYzcwMWQ4MmE3NTRiYTFlN2I1NGFiNzU2ZDhjMDJmN2IyNThlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATaGVsbG8gZnJvbSBldGhlcmV1bQAAAAAAAAAAAAAAAAA=', + "ethereum", + "0x5b34876ffb1656710fb963ecd199c6f173c29267", + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqMHhlMTcwYzcwMWQ4MmE3NTRiYTFlN2I1NGFiNzU2ZDhjMDJmN2IyNThlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATaGVsbG8gZnJvbSBldGhlcmV1bQAAAAAAAAAAAAAAAAA=", ], }); }); diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts index 16546a30..b6398a85 100644 --- a/packages/axelar-local-dev-cosmos/src/relay.ts +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -1,36 +1,36 @@ -import { defaultAxelarChainInfo, AxelarRelayerService } from './index'; +import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; import { evmRelayer, createNetwork, deployContract, relay, RelayerType, -} from '@axelar-network/axelar-local-dev'; +} from "@axelar-network/axelar-local-dev"; export const relayBasic = async () => { const axelarRelayer = await AxelarRelayerService.create( - defaultAxelarChainInfo, + defaultAxelarChainInfo ); - const ethereumNetwork = await createNetwork({ name: 'Ethereum' }); - await ethereumNetwork.deployToken('USDC', 'aUSDC', 6, BigInt(100_000e6)); + const ethereumNetwork = await createNetwork({ name: "Ethereum" }); + await ethereumNetwork.deployToken("USDC", "aUSDC", 6, BigInt(100_000e6)); const multiCallContract = await deployContract( ethereumNetwork.userWallets[0], - require('../artifacts/src/__tests__/contracts/Multicall.sol/Multicall.json'), + require("../artifacts/src/__tests__/contracts/Multicall.sol/Multicall.json") ); - console.log('MultiCall Contract Address:', multiCallContract.address); + console.log("MultiCall Contract Address:", multiCallContract.address); const factoryContract = await deployContract( ethereumNetwork.userWallets[0], - require('../artifacts/src/__tests__/contracts/Factory.sol/Factory.json'), + require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"), [ ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, - 'Ethereum', - ], + "Ethereum", + ] ); - console.log('Factory Contract Address:', factoryContract.address); + console.log("Factory Contract Address:", factoryContract.address); evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); diff --git a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts index f9e76b64..a1c270af 100644 --- a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts @@ -3,12 +3,12 @@ import { ContractCallWithTokenSubmitted, CosmosChainInfo, IBCEvent, -} from '../types'; +} from "../types"; import { AxelarCosmosContractCallEvent, AxelarCosmosContractCallWithTokenEvent, AxelarListener, -} from '../listeners'; +} from "../listeners"; import { CallContractArgs, CallContractWithTokenArgs, @@ -21,12 +21,12 @@ import { RelayData, Relayer, RelayerType, -} from '@axelar-network/axelar-local-dev'; -import { Command as WasmCommand } from '../Command'; -import { ethers } from 'ethers'; -import { arrayify, defaultAbiCoder } from 'ethers/lib/utils'; -import { CosmosClient } from '../clients'; -import { IBCRelayerService } from './IBCRelayerService'; +} from "@axelar-network/axelar-local-dev"; +import { Command as WasmCommand } from "../Command"; +import { ethers } from "ethers"; +import { arrayify, defaultAbiCoder } from "ethers/lib/utils"; +import { CosmosClient } from "../clients"; +import { IBCRelayerService } from "./IBCRelayerService"; export class AxelarRelayerService extends Relayer { private axelarListener: AxelarListener; @@ -46,13 +46,13 @@ export class AxelarRelayerService extends Relayer { } static async create( - axelarConfig: Omit, + axelarConfig: Omit, ibcRelayer?: IBCRelayerService ) { const axelarListener = new AxelarListener(axelarConfig); const axelarClient = await CosmosClient.create( - 'axelar', - 'smile unveil sketch gaze length bulb goddess street case exact table fetch robust chronic power choice endorse toward pledge dish access sad illegal dance' + "axelar", + "smile unveil sketch gaze length bulb goddess street case exact table fetch robust chronic power choice endorse toward pledge dish access sad illegal dance" ); const _ibcRelayer = ibcRelayer || (await IBCRelayerService.create()); await _ibcRelayer.createIBCChannelIfNeeded(); @@ -103,7 +103,7 @@ export class AxelarRelayerService extends Relayer { } private async executeEvmToWasm(command: RelayCommand) { - const toExecute = command['agoric']; + const toExecute = command["agoric"]; if (!toExecute || toExecute?.length === 0) return; await this.executeWasmExecutable(toExecute); @@ -149,12 +149,12 @@ export class AxelarRelayerService extends Relayer { callContractWithTokenArgs: CallContractWithTokenArgs ): Command { throw new Error( - 'Currently, this method is not supported. Please use createCallContractCommand instead.' + "Currently, this method is not supported. Please use createCallContractCommand instead." ); } setRelayer(type: RelayerType, relayer: Relayer): void { - if (type !== 'evm') { + if (type !== "evm") { return console.log(`${type} not supported yet`); } } @@ -164,7 +164,7 @@ export class AxelarRelayerService extends Relayer { ) { const { args } = event; const contractCallArgs: CallContractArgs = { - from: 'agoric', + from: "agoric", to: args.destinationChain, sourceAddress: args.sender, destinationContractAddress: args.contractAddress, @@ -192,22 +192,22 @@ export class AxelarRelayerService extends Relayer { event: IBCEvent ) { const tokenMap: { [key: string]: string } = { - uausdc: 'aUSDC', - ubld: 'aUSDC', + uausdc: "aUSDC", + ubld: "aUSDC", }; if (!tokenMap[event.args.symbol]) { - throw new Error('Token not supported yet'); + throw new Error("Token not supported yet"); } const { args } = event; const contractCallWithTokenArgs: CallContractWithTokenArgs = { - from: 'agoric', + from: "agoric", to: args.destinationChain, sourceAddress: args.sender, destinationContractAddress: args.contractAddress, payload: args.payload, payloadHash: args.payloadHash, - alias: '??', + alias: "??", destinationTokenSymbol: tokenMap[args.symbol], amountIn: args.amount, amountOut: args.amount, @@ -244,7 +244,7 @@ export class AxelarRelayerService extends Relayer { private encodeGatewayData(to: Network, commands: Command[]) { return arrayify( defaultAbiCoder.encode( - ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], + ["uint256", "bytes32[]", "string[]", "bytes[]"], [ to.chainId, commands.map((com) => com.commandId), @@ -271,7 +271,7 @@ export class AxelarRelayerService extends Relayer { if (command.post == null) continue; const isExecuted = !execution.events.find((event: any) => { - return event.event === 'Executed' && event.args[0] == command.commandId; + return event.event === "Executed" && event.args[0] == command.commandId; }); if (isExecuted) { @@ -280,7 +280,7 @@ export class AxelarRelayerService extends Relayer { try { const blockLimit = Number( - (await to.provider.getBlock('latest')).gasLimit + (await to.provider.getBlock("latest")).gasLimit ); return command.post({ gasLimit: blockLimit, diff --git a/packages/axelar-local-dev-multiversx/README.md b/packages/axelar-local-dev-multiversx/README.md index 11343714..cef5a7db 100644 --- a/packages/axelar-local-dev-multiversx/README.md +++ b/packages/axelar-local-dev-multiversx/README.md @@ -59,10 +59,10 @@ For more details on setting up the `createAndExport` function, check our [Standa `MultiversXNetwork` is a generalization of `ProxyNetworkProvider` (avaliable in the `@multiversx/sdk-network-providers` package) that includes (among others that are mainly used for intrnal purposes): -- `deployAxelarFrameworkModules()`: Deploy Axelar related smart contracts found in `contracts`. -- `deployContract(contractCode: string, initArguments: TypedValue[]): Promise`: A wrapper for deploying a contract from code with init arguments, deployed by `alice.pem` wallet. Returns the SC address. -- `signAndSendTransaction(transaction: Transaction, privateKey: UserSecretKey = this.ownerPrivateKey)`: A wrapper to easily sign, send and wait for a transaction to be completed. -- `callContract(address: string, func: string, args: TypedValue[] = []): Promise)`: A wrapper to easily query a smart contract. +- `deployAxelarFrameworkModules()`: Deploy Axelar related smart contracts found in `contracts`. +- `deployContract(contractCode: string, initArguments: TypedValue[]): Promise`: A wrapper for deploying a contract from code with init arguments, deployed by `alice.pem` wallet. Returns the SC address. +- `signAndSendTransaction(transaction: Transaction, privateKey: UserSecretKey = this.ownerPrivateKey)`: A wrapper to easily sign, send and wait for a transaction to be completed. +- `callContract(address: string, func: string, args: TypedValue[] = []): Promise)`: A wrapper to easily query a smart contract. Additionaly we export two utility functions diff --git a/packages/axelar-local-dev-multiversx/__tests__/contracts/HelloWorld.sol b/packages/axelar-local-dev-multiversx/__tests__/contracts/HelloWorld.sol index 6e3983db..08a400e1 100644 --- a/packages/axelar-local-dev-multiversx/__tests__/contracts/HelloWorld.sol +++ b/packages/axelar-local-dev-multiversx/__tests__/contracts/HelloWorld.sol @@ -11,23 +11,17 @@ contract HelloWorld is AxelarExecutable { string public sourceAddress; IAxelarGasService gasService; - constructor(address _gateway, address _gasReceiver) - AxelarExecutable(_gateway) - { + constructor(address _gateway, address _gasReceiver) AxelarExecutable(_gateway) { gasService = IAxelarGasService(_gasReceiver); } event Executed(); // Call this function to update the value of this contract along with all its siblings'. - function setRemoteValue( - string memory destinationChain, - string memory destinationAddress, - string calldata message - ) external payable { + function setRemoteValue(string memory destinationChain, string memory destinationAddress, string calldata message) external payable { bytes memory payload = abi.encodePacked(message); if (msg.value > 0) { - gasService.payNativeGasForContractCall{value: msg.value}( + gasService.payNativeGasForContractCall{ value: msg.value }( address(this), destinationChain, destinationAddress, @@ -39,11 +33,7 @@ contract HelloWorld is AxelarExecutable { } // Handles calls created by setAndSend. Updates this contract's value - function _execute( - string calldata sourceChain_, - string calldata sourceAddress_, - bytes calldata payload_ - ) internal override { + function _execute(string calldata sourceChain_, string calldata sourceAddress_, bytes calldata payload_) internal override { (value) = abi.decode(payload_, (string)); sourceChain = sourceChain_; sourceAddress = sourceAddress_; diff --git a/packages/axelar-local-dev-multiversx/__tests__/multiversx.spec.ts b/packages/axelar-local-dev-multiversx/__tests__/multiversx.spec.ts index 59d1a2d2..e9f6ad10 100644 --- a/packages/axelar-local-dev-multiversx/__tests__/multiversx.spec.ts +++ b/packages/axelar-local-dev-multiversx/__tests__/multiversx.spec.ts @@ -14,7 +14,7 @@ import { SmartContract, StringType, StringValue, - TupleType + TupleType, } from '@multiversx/sdk-core/out'; const { keccak256, toUtf8Bytes } = ethers.utils; @@ -41,14 +41,11 @@ describe('multiversx', () => { const contractAddress = await client.deployContract(contractCode, [ new AddressValue(client.gatewayAddress as Address), - new AddressValue(client.gasReceiverAddress as Address) + new AddressValue(client.gasReceiverAddress as Address), ]); // Deploy EVM contract - const helloWorld = await deployContract(wallet, HelloWorld, [ - evmNetwork.gateway.address, - evmNetwork.gasService.address - ]); + const helloWorld = await deployContract(wallet, HelloWorld, [evmNetwork.gateway.address, evmNetwork.gasService.address]); // Send tx from EVM to Multiversx const msg = 'Hello Multiversx From EVM!'; @@ -59,17 +56,16 @@ describe('multiversx', () => { // Relay tx from EVM to MultiversX await relay({ multiversx: multiversXRelayer, - evm: new EvmRelayer({ multiversXRelayer }) + evm: new EvmRelayer({ multiversXRelayer }), }); const result = await client.callContract(contractAddress, 'received_value'); const parsedResult = new ResultsParser().parseUntypedQueryResponse(result); expect(parsedResult?.values?.[0]); - const decoded = new BinaryCodec().decodeTopLevel( - parsedResult.values[0], - new TupleType(new StringType(), new StringType(), new BytesType()) - ).valueOf(); + const decoded = new BinaryCodec() + .decodeTopLevel(parsedResult.values[0], new TupleType(new StringType(), new StringType(), new BytesType())) + .valueOf(); const message = decoded.field2.toString(); expect(message).toEqual(msg); @@ -81,14 +77,11 @@ describe('multiversx', () => { const contractAddress = await client.deployContract(contractCode, [ new AddressValue(client.gatewayAddress as Address), - new AddressValue(client.gasReceiverAddress as Address) + new AddressValue(client.gasReceiverAddress as Address), ]); // Deploy EVM contract - const helloWorld = await deployContract(wallet, HelloWorld, [ - evmNetwork.gateway.address, - evmNetwork.gasService.address - ]); + const helloWorld = await deployContract(wallet, HelloWorld, [evmNetwork.gateway.address, evmNetwork.gasService.address]); const multiversXRelayer = new MultiversXRelayer(); // Update events first so new Multiversx logs are processed afterwards @@ -101,13 +94,9 @@ describe('multiversx', () => { caller: client.owner, func: new ContractFunction('setRemoteValue'), gasLimit: 20_000_000, - args: [ - new StringValue(evmNetwork.name), - new StringValue(helloWorld.address), - new BytesValue(Buffer.from(messageEvm, 'hex')) - ], + args: [new StringValue(evmNetwork.name), new StringValue(helloWorld.address), new BytesValue(Buffer.from(messageEvm, 'hex'))], value: 20_000_000, - chainID: 'localnet' + chainID: 'localnet', }); transaction.setNonce(client.ownerAccount.getNonceThenIncrement()); @@ -117,7 +106,7 @@ describe('multiversx', () => { await relay({ multiversx: multiversXRelayer, - evm: new EvmRelayer({ multiversXRelayer }) + evm: new EvmRelayer({ multiversXRelayer }), }); const evmMessage = await helloWorld.value(); @@ -129,7 +118,7 @@ describe('multiversx', () => { const args = [ 'ethereum', '0xD62F0cF0801FAC878F66ebF316AB42DED01F25D8', - 'erd1qqqqqqqqqqqqqpgqlz32muzjtu40pp9lapy35n0cvrdxll47d8ss9ne0ta' + 'erd1qqqqqqqqqqqqqpgqlz32muzjtu40pp9lapy35n0cvrdxll47d8ss9ne0ta', ]; const tx = await client.executeGateway( 'approveContractCall', @@ -147,53 +136,43 @@ describe('multiversx', () => { const contractAddress = await client.deployContract(contractCode, [ new AddressValue(client.gatewayAddress as Address), - new AddressValue(client.gasReceiverAddress as Address) + new AddressValue(client.gasReceiverAddress as Address), ]); const commandId = Buffer.from(ethers.utils.randomBytes(32)).toString('hex'); const toSend = 'Hello Test World!'; const payload = toUtf8Bytes(toSend); const payloadHash = keccak256(payload).substring(2); - const args = [ - 'ethereum', - '0xD62F0cF0801FAC878F66ebF316AB42DED01F25D8', - contractAddress - ]; - const approveTx = await client.executeGateway( - 'approveContractCall', - commandId, - args[0], - args[1], - args[2], - payloadHash - ); + const args = ['ethereum', '0xD62F0cF0801FAC878F66ebF316AB42DED01F25D8', contractAddress]; + const approveTx = await client.executeGateway('approveContractCall', commandId, args[0], args[1], args[2], payloadHash); expect(approveTx).toBeTruthy(); - const tx = await client.executeContract( - commandId, - contractAddress, - args[0], - args[1], - Buffer.from(payload).toString('hex') - ); + const tx = await client.executeContract(commandId, contractAddress, args[0], args[1], Buffer.from(payload).toString('hex')); expect(tx).toBeTruthy(); const result = await client.callContract(contractAddress, 'received_value'); const parsedResult = new ResultsParser().parseUntypedQueryResponse(result); expect(parsedResult?.values?.[0]); - const decoded = new BinaryCodec().decodeTopLevel( - parsedResult.values[0], - new TupleType(new StringType(), new StringType(), new BytesType()) - ).valueOf(); + const decoded = new BinaryCodec() + .decodeTopLevel(parsedResult.values[0], new TupleType(new StringType(), new StringType(), new BytesType())) + .valueOf(); const message = decoded.field2.toString(); expect(message).toEqual(toSend); }); it.skip('should be able to send token from EVM to MultiversX', async () => { - const evmIts = new Contract(evmNetwork.interchainTokenService.address, contracts.IInterchainTokenService.abi, wallet.connect(evmNetwork.provider)); - const evmItsFactory = new Contract(evmNetwork.interchainTokenFactory.address, contracts.IInterchainTokenFactory.abi, wallet.connect(evmNetwork.provider)); + const evmIts = new Contract( + evmNetwork.interchainTokenService.address, + contracts.IInterchainTokenService.abi, + wallet.connect(evmNetwork.provider) + ); + const evmItsFactory = new Contract( + evmNetwork.interchainTokenFactory.address, + contracts.IInterchainTokenFactory.abi, + wallet.connect(evmNetwork.provider) + ); await registerMultiversXRemoteITS(client, [evmNetwork]); @@ -206,30 +185,16 @@ describe('multiversx', () => { const tokenId = await evmItsFactory.interchainTokenId(wallet.address, salt); - await (await evmItsFactory.deployInterchainToken( - salt, - name, - symbol, - decimals, - amount, - wallet.address, - )).wait(); - - await (await evmItsFactory.deployRemoteInterchainToken( - '', - salt, - wallet.address, - 'multiversx', - fee, - { value: fee }, - )).wait(); + await (await evmItsFactory.deployInterchainToken(salt, name, symbol, decimals, amount, wallet.address)).wait(); + + await (await evmItsFactory.deployRemoteInterchainToken('', salt, wallet.address, 'multiversx', fee, { value: fee })).wait(); const multiversXRelayer = new MultiversXRelayer(); // Relay tx from EVM to MultiversX await relay({ multiversx: multiversXRelayer, - evm: new EvmRelayer({ multiversXRelayer }) + evm: new EvmRelayer({ multiversXRelayer }), }); let tokenIdentifier = await client.its.getValidTokenIdentifier(tokenId); @@ -247,7 +212,7 @@ describe('multiversx', () => { // Relay tx from EVM to MultiversX await relay({ multiversx: multiversXRelayer, - evm: new EvmRelayer({ multiversXRelayer }) + evm: new EvmRelayer({ multiversXRelayer }), }); balance = (await client.getFungibleTokenOfAccount(client.owner, tokenIdentifier)).balance?.toString(); diff --git a/packages/axelar-local-dev-multiversx/docker-compose.yaml b/packages/axelar-local-dev-multiversx/docker-compose.yaml index 53a74554..dd0f1ac9 100644 --- a/packages/axelar-local-dev-multiversx/docker-compose.yaml +++ b/packages/axelar-local-dev-multiversx/docker-compose.yaml @@ -1,8 +1,8 @@ -services: - elasticsearch: - image: "docker.elastic.co/elasticsearch/elasticsearch:8.12.0" - environment: - - discovery.type=single-node - - xpack.security.enabled=false - ports: - - "9200:9200" +services: + elasticsearch: + image: 'docker.elastic.co/elasticsearch/elasticsearch:8.12.0' + environment: + - discovery.type=single-node + - xpack.security.enabled=false + ports: + - '9200:9200' diff --git a/packages/axelar-local-dev-multiversx/src/MultiversXNetwork.ts b/packages/axelar-local-dev-multiversx/src/MultiversXNetwork.ts index 3679fb6f..bbcb8f91 100644 --- a/packages/axelar-local-dev-multiversx/src/MultiversXNetwork.ts +++ b/packages/axelar-local-dev-multiversx/src/MultiversXNetwork.ts @@ -23,7 +23,7 @@ import { Tuple, TypedValue, U8Value, - VariadicValue + VariadicValue, } from '@multiversx/sdk-core/out'; import { ProxyNetworkProvider } from '@multiversx/sdk-network-providers/out'; import { Code } from '@multiversx/sdk-core'; @@ -70,26 +70,23 @@ export class MultiversXNetwork extends ProxyNetworkProvider { this.ownerAccount = new Account(this.owner); try { this.gatewayAddress = gatewayAddress ? Address.fromBech32(gatewayAddress) : undefined; - } catch (e) { - } + } catch (e) {} try { this.authAddress = authAddress ? Address.fromBech32(authAddress) : undefined; - } catch (e) { - } + } catch (e) {} try { this.gasReceiverAddress = gasReceiverAddress ? Address.fromBech32(gasReceiverAddress) : undefined; - } catch (e) { - } + } catch (e) {} try { - this.interchainTokenServiceAddress = interchainTokenServiceAddress ? Address.fromBech32( - interchainTokenServiceAddress) : undefined; - } catch (e) { - } + this.interchainTokenServiceAddress = interchainTokenServiceAddress + ? Address.fromBech32(interchainTokenServiceAddress) + : undefined; + } catch (e) {} try { - this.interchainTokenFactoryAddress = interchainTokenFactoryAddress ? Address.fromBech32( - interchainTokenFactoryAddress) : undefined; - } catch (e) { - } + this.interchainTokenFactoryAddress = interchainTokenFactoryAddress + ? Address.fromBech32(interchainTokenFactoryAddress) + : undefined; + } catch (e) {} this.contractAddress = contractAddress; @@ -106,11 +103,11 @@ export class MultiversXNetwork extends ProxyNetworkProvider { this.ownerAccount.update(accountOnNetwork); if ( - !this.gatewayAddress - || !this.authAddress - || !this.gasReceiverAddress - || !this.interchainTokenServiceAddress - || !this.interchainTokenFactoryAddress + !this.gatewayAddress || + !this.authAddress || + !this.gasReceiverAddress || + !this.interchainTokenServiceAddress || + !this.interchainTokenFactoryAddress ) { return false; } @@ -123,11 +120,11 @@ export class MultiversXNetwork extends ProxyNetworkProvider { const interchainTokenFactoryAddress = await this.getAccount(this.interchainTokenFactoryAddress); if ( - !accountGateway.code - || !accountAuth.code - || !accountGasReceiver.code - || !interchainTokenServiceAddress.code - || !interchainTokenFactoryAddress.code + !accountGateway.code || + !accountAuth.code || + !accountGasReceiver.code || + !interchainTokenServiceAddress.code || + !interchainTokenFactoryAddress.code ) { return false; } @@ -158,7 +155,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { codeMetadata: new CodeMetadata(true, true, false, false), initArguments, gasLimit: 50_000_000, - chainID: 'localnet' + chainID: 'localnet', }); deployTransaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -168,10 +165,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { throw new Error(`Could not deploy Contract...`); } - const contractAddress = SmartContract.computeAddress( - deployTransaction.getSender(), - deployTransaction.getNonce() - ); + const contractAddress = SmartContract.computeAddress(deployTransaction.getSender(), deployTransaction.getNonce()); return contractAddress.bech32(); } @@ -194,10 +188,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { axelarGasReceiverAddress, baseTokenManager ); - const interchainTokenFactoryAddress = await this.deployInterchainTokenFactory( - contractFolder, - interchainTokenServiceAddress - ); + const interchainTokenFactoryAddress = await this.deployInterchainTokenFactory(contractFolder, interchainTokenServiceAddress); this.gatewayAddress = Address.fromBech32(axelarGatewayAddress); this.authAddress = Address.fromBech32(axelarAuthAddress); @@ -229,11 +220,11 @@ export class MultiversXNetwork extends ProxyNetworkProvider { Tuple.fromItems([ List.fromItems([new H256Value(Buffer.from(this.operatorWallet.hex(), 'hex'))]), List.fromItems([new BigUIntValue(1)]), - new BigUIntValue(1) - ]) + new BigUIntValue(1), + ]), ], gasLimit: 50_000_000, - chainID: 'localnet' + chainID: 'localnet', }); authTransaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -259,12 +250,9 @@ export class MultiversXNetwork extends ProxyNetworkProvider { deployer: this.owner, code, codeMetadata: new CodeMetadata(true, true, false, false), - initArguments: [ - new AddressValue(Address.fromBech32(axelarAuthAddress)), - new StringValue(CHAIN_ID), - ], + initArguments: [new AddressValue(Address.fromBech32(axelarAuthAddress)), new StringValue(CHAIN_ID)], gasLimit: 50_000_000, - chainID: 'localnet' + chainID: 'localnet', }); gatewayTransaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -274,10 +262,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { throw new Error(`Could not deploy Axelar Gateway contract... ${gatewayTransaction.getHash()}`); } - const axelarGatewayAddress = SmartContract.computeAddress( - gatewayTransaction.getSender(), - gatewayTransaction.getNonce() - ); + const axelarGatewayAddress = SmartContract.computeAddress(gatewayTransaction.getSender(), gatewayTransaction.getNonce()); console.log(`Gateway contract deployed at ${axelarGatewayAddress} with transaction ${gatewayTransaction.getHash()}`); return axelarGatewayAddress.bech32(); @@ -291,7 +276,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { func: new ContractFunction('ChangeOwnerAddress'), gasLimit: 6_000_000, args: [new AddressValue(Address.fromBech32(newOwner))], - chainID: 'localnet' + chainID: 'localnet', }); transaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -314,11 +299,9 @@ export class MultiversXNetwork extends ProxyNetworkProvider { deployer: this.owner, code, codeMetadata: new CodeMetadata(true, true, false, false), - initArguments: [ - new AddressValue(this.owner) - ], + initArguments: [new AddressValue(this.owner)], gasLimit: 50_000_000, - chainID: 'localnet' + chainID: 'localnet', }); gasReceiverTransaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -355,11 +338,11 @@ export class MultiversXNetwork extends ProxyNetworkProvider { new H256Value(Buffer.from('01b3d64c8c6530a3aad5909ae7e0985d4438ce8eafd90e51ce48fbc809bced39', 'hex')), Tuple.fromItems([ new OptionValue(new OptionType(new AddressType()), new AddressValue(this.owner)), - new OptionValue(new OptionType(new StringType()), new StringValue('EGLD')) - ]) + new OptionValue(new OptionType(new StringType()), new StringValue('EGLD')), + ]), ], gasLimit: 50_000_000, - chainID: 'localnet' + chainID: 'localnet', }); tokenManagerTransaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -369,10 +352,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { throw new Error(`Could not deploy Axelar Token Manager contract... ${tokenManagerTransaction.getHash()}`); } - const address = SmartContract.computeAddress( - tokenManagerTransaction.getSender(), - tokenManagerTransaction.getNonce() - ); + const address = SmartContract.computeAddress(tokenManagerTransaction.getSender(), tokenManagerTransaction.getNonce()); console.log(`Base Token Manager contract deployed at ${address} with transaction ${tokenManagerTransaction.getHash()}`); return address.bech32(); @@ -400,10 +380,10 @@ export class MultiversXNetwork extends ProxyNetworkProvider { new AddressValue(this.owner), new StringValue('multiversx'), VariadicValue.fromItemsCounted(), // empty trusted chains - VariadicValue.fromItemsCounted() + VariadicValue.fromItemsCounted(), ], gasLimit: 200_000_000, - chainID: 'localnet' + chainID: 'localnet', }); itsTransaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -413,10 +393,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { throw new Error(`Could not deploy Axelar Interchain Token Service contract... ${itsTransaction.getHash()}`); } - const address = SmartContract.computeAddress( - itsTransaction.getSender(), - itsTransaction.getNonce() - ); + const address = SmartContract.computeAddress(itsTransaction.getSender(), itsTransaction.getNonce()); console.log(`Interchain Token Service contract deployed at ${address} with transaction ${itsTransaction.getHash()}`); return address.bech32(); @@ -433,11 +410,9 @@ export class MultiversXNetwork extends ProxyNetworkProvider { deployer: this.owner, code, codeMetadata: new CodeMetadata(true, true, false, false), - initArguments: [ - new AddressValue(itsAddress) - ], + initArguments: [new AddressValue(itsAddress)], gasLimit: 200_000_000, - chainID: 'localnet' + chainID: 'localnet', }); factoryTransaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -447,10 +422,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { throw new Error(`Could not deploy Axelar Interchain Token Factory contract... ${factoryTransaction.getHash()}`); } - const address = SmartContract.computeAddress( - factoryTransaction.getSender(), - factoryTransaction.getNonce() - ); + const address = SmartContract.computeAddress(factoryTransaction.getSender(), factoryTransaction.getNonce()); console.log(`Interchain Token Factory contract deployed at ${address} with transaction ${factoryTransaction.getHash()}`); const itsContract = new SmartContract({ address: itsAddress }); @@ -459,10 +431,8 @@ export class MultiversXNetwork extends ProxyNetworkProvider { caller: this.owner, func: new ContractFunction('setInterchainTokenFactory'), gasLimit: 50_000_000, - args: [ - new AddressValue(address) - ], - chainID: 'localnet' + args: [new AddressValue(address)], + chainID: 'localnet', }); transaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -483,11 +453,8 @@ export class MultiversXNetwork extends ProxyNetworkProvider { caller: this.owner, func: new ContractFunction('setTrustedAddress'), gasLimit: 50_000_000, - args: [ - new StringValue(chainName), - new StringValue(address) - ], - chainID: 'localnet' + args: [new StringValue(chainName), new StringValue(address)], + chainID: 'localnet', }); transaction.setNonce(this.ownerAccount.getNonceThenIncrement()); @@ -512,7 +479,9 @@ export class MultiversXNetwork extends ProxyNetworkProvider { } const transactionOnNetwork = await new TransactionWatcher({ - getTransaction: async (hash: string) => { return await this.getTransaction(hash, true); } + getTransaction: async (hash: string) => { + return await this.getTransaction(hash, true); + }, }).awaitCompleted(transaction); const { returnCode } = new ResultsParser().parseUntypedOutcome(transactionOnNetwork); @@ -521,7 +490,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { async callContract(address: string, func: string, args: TypedValue[] = []): Promise { const contract = new SmartContract({ - address: new Address(address) + address: new Address(address), }); const query = new Interaction(contract, new ContractFunction(func), args).buildQuery(); @@ -535,7 +504,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { sourceChain: string, sourceAddress: string, destinationAddress: string, - payloadHash: string, + payloadHash: string ) { // Remove 0x added by Ethereum for hex strings commandId = commandId.startsWith('0x') ? commandId.substring(2) : commandId; @@ -554,9 +523,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { new StringValue(CHAIN_ID), List.fromItems([new H256Value(Buffer.from(commandId, 'hex'))]), List.fromItems([new StringValue(commandName)]), - List.fromItems([ - new BytesValue(encodedApproveContractCallData), - ]), + List.fromItems([new BytesValue(encodedApproveContractCallData)]), ]); const encodedExecuteData = codec.encodeTopLevel(executeData); @@ -567,13 +534,8 @@ export class MultiversXNetwork extends ProxyNetworkProvider { caller: this.owner, func: new ContractFunction('execute'), gasLimit: 50_000_000, - args: [ - Tuple.fromItems([ - new BytesValue(encodedExecuteData), - new BytesValue(encodedProof), - ]), - ], - chainID: 'localnet' + args: [Tuple.fromItems([new BytesValue(encodedExecuteData), new BytesValue(encodedProof)])], + chainID: 'localnet', }); const accountOnNetwork = await this.getAccount(this.owner); @@ -596,7 +558,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { sourceChain: string, sourceAddress: string, payloadHex: string, - value: string = '0', + value: string = '0' ): Promise { // Remove 0x added by Ethereum for hex strings commandId = commandId.startsWith('0x') ? commandId.substring(2) : commandId; @@ -611,10 +573,10 @@ export class MultiversXNetwork extends ProxyNetworkProvider { new H256Value(Buffer.from(commandId, 'hex')), new StringValue(sourceChain), new StringValue(sourceAddress), - new BytesValue(Buffer.from(payloadHex, 'hex')) + new BytesValue(Buffer.from(payloadHex, 'hex')), ], value, - chainID: 'localnet' + chainID: 'localnet', }); const accountOnNetwork = await this.getAccount(this.owner); @@ -632,10 +594,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { } private generateProof(encodedData: Buffer) { - const messageHashData = Buffer.concat([ - Buffer.from(MULTIVERSX_SIGNED_MESSAGE_PREFIX), - encodedData - ]); + const messageHashData = Buffer.concat([Buffer.from(MULTIVERSX_SIGNED_MESSAGE_PREFIX), encodedData]); const messageHash = createKeccakHash('keccak256').update(messageHashData).digest('hex'); diff --git a/packages/axelar-local-dev-multiversx/src/MultiversXRelayer.ts b/packages/axelar-local-dev-multiversx/src/MultiversXRelayer.ts index 1ca7b7b6..a94e5632 100644 --- a/packages/axelar-local-dev-multiversx/src/MultiversXRelayer.ts +++ b/packages/axelar-local-dev-multiversx/src/MultiversXRelayer.ts @@ -12,7 +12,7 @@ import { RelayCommand, RelayData, Relayer, - RelayerType + RelayerType, } from '@axelar-network/axelar-local-dev'; import { Command as MultiversXCommand } from './Command'; import { multiversXNetwork } from './multiversXNetworkUtils'; @@ -28,7 +28,7 @@ import { H256Type, H256Value, StringType, - TupleType + TupleType, } from '@multiversx/sdk-core/out'; import { getMultiversXLogID } from './utils'; @@ -54,7 +54,7 @@ export class MultiversXRelayer extends Relayer { super(); this.elasticsearch = new Client({ - node: 'http://127.0.0.1:9200' + node: 'http://127.0.0.1:9200', }); } @@ -66,7 +66,7 @@ export class MultiversXRelayer extends Relayer { async updateEvents(): Promise { const logsCount = await this.elasticsearch.count({ - index: 'logs' + index: 'logs', }); const count = logsCount.count; @@ -81,31 +81,21 @@ export class MultiversXRelayer extends Relayer { // Process only new events const logs = await this.elasticsearch.search({ index: 'logs', - sort: [ - { timestamp: 'desc' } - ], - size: count - this.initialHitsLength + sort: [{ timestamp: 'desc' }], + size: count - this.initialHitsLength, }); const hits = logs.hits.hits; - const newHits: MultiversXEvent[] = hits - .reduce((acc: any, hit: any) => { - const newEvents = hit._source.events - .map((newEvent: MultiversXEvent) => ({ ...newEvent, txHash: hit._id })); + const newHits: MultiversXEvent[] = hits.reduce((acc: any, hit: any) => { + const newEvents = hit._source.events.map((newEvent: MultiversXEvent) => ({ ...newEvent, txHash: hit._id })); - acc.push(...newEvents); + acc.push(...newEvents); - return acc; - }, []); + return acc; + }, []); - await this.updateGasEvents( - newHits - .filter((newHit: any) => newHit.address === multiversXNetwork.gasReceiverAddress?.bech32()) - ); - await this.updateCallContractEvents( - newHits - .filter((newHit: any) => newHit.address === multiversXNetwork.gatewayAddress?.bech32()) - ); + await this.updateGasEvents(newHits.filter((newHit: any) => newHit.address === multiversXNetwork.gasReceiverAddress?.bech32())); + await this.updateCallContractEvents(newHits.filter((newHit: any) => newHit.address === multiversXNetwork.gatewayAddress?.bech32())); this.initialHitsLength = count; } @@ -185,12 +175,12 @@ export class MultiversXRelayer extends Relayer { const payed = command.name == 'approveContractCall' ? this.contractCallGasEvents.find((log: any) => { - if (log.sourceAddress.toLowerCase() != command.data[1].toLowerCase()) return false; - if (log.destinationChain.toLowerCase() != to.name.toLowerCase()) return false; - if (log.destinationAddress.toLowerCase() != command.data[2].toLowerCase()) return false; - if (log.payloadHash.toLowerCase() != command.data[3].toLowerCase()) return false; - return true; - }) + if (log.sourceAddress.toLowerCase() != command.data[1].toLowerCase()) return false; + if (log.destinationChain.toLowerCase() != to.name.toLowerCase()) return false; + if (log.destinationAddress.toLowerCase() != command.data[2].toLowerCase()) return false; + if (log.payloadHash.toLowerCase() != command.data[3].toLowerCase()) return false; + return true; + }) : false; if (!payed) continue; @@ -204,7 +194,7 @@ export class MultiversXRelayer extends Relayer { const blockLimit = Number((await to.provider.getBlock('latest')).gasLimit); await command.post({ - gasLimit: BigInt(Math.min(blockLimit, payed.gasFeeAmount / cost)) + gasLimit: BigInt(Math.min(blockLimit, payed.gasFeeAmount / cost)), }); } catch (e) { logger.log(e); @@ -223,22 +213,25 @@ export class MultiversXRelayer extends Relayer { const destinationChain = Buffer.from(event.topics[2], 'base64').toString(); const destinationAddress = Buffer.from(event.topics[3], 'base64').toString(); - let payloadHash = '0x', gasFeeAmount = '', refundAddress = ''; + let payloadHash = '0x', + gasFeeAmount = '', + refundAddress = ''; if (eventName === 'native_gas_paid_for_contract_call_event') { - const decoded = new BinaryCodec().decodeTopLevel( - Buffer.from(event.data, 'base64'), - new TupleType(new H256Type(), new BigUIntType(), new AddressType()) - ).valueOf(); + const decoded = new BinaryCodec() + .decodeTopLevel(Buffer.from(event.data, 'base64'), new TupleType(new H256Type(), new BigUIntType(), new AddressType())) + .valueOf(); // Need to add '0x' in front of hex encoded strings for EVM payloadHash = '0x' + (decoded.field0 as H256Value).valueOf().toString('hex'); gasFeeAmount = (decoded.field1 as BigUIntValue).toString(); refundAddress = (decoded.field2 as AddressValue).valueOf().bech32(); } else if (eventName === 'gas_paid_for_contract_call_event') { - const decoded = new BinaryCodec().decodeTopLevel( - Buffer.from(event.data, 'base64'), - new TupleType(new H256Type(), new StringType(), new BigUIntType(), new AddressType()) - ).valueOf(); + const decoded = new BinaryCodec() + .decodeTopLevel( + Buffer.from(event.data, 'base64'), + new TupleType(new H256Type(), new StringType(), new BigUIntType(), new AddressType()) + ) + .valueOf(); // Need to add '0x' in front of hex encoded strings for EVM payloadHash = '0x' + (decoded.field0 as H256Value).valueOf().toString('hex'); @@ -255,7 +248,7 @@ export class MultiversXRelayer extends Relayer { destinationChain, payloadHash, refundAddress, - gasToken: AddressZero + gasToken: AddressZero, }; this.contractCallGasEvents.push(args); @@ -270,10 +263,9 @@ export class MultiversXRelayer extends Relayer { const destinationChain = Buffer.from(event.topics[2], 'base64').toString(); const destinationAddress = Buffer.from(event.topics[3], 'base64').toString(); - const decoded = new BinaryCodec().decodeTopLevel( - Buffer.from(event.data, 'base64'), - new TupleType(new H256Type(), new BytesType()) - ).valueOf(); + const decoded = new BinaryCodec() + .decodeTopLevel(Buffer.from(event.data, 'base64'), new TupleType(new H256Type(), new BytesType())) + .valueOf(); // Need to add '0x' in front of hex encoded strings for EVM const payloadHash = '0x' + (decoded.field0 as H256Value).valueOf().toString('hex'); const payload = '0x' + (decoded.field1 as BytesValue).valueOf().toString('hex'); @@ -288,7 +280,7 @@ export class MultiversXRelayer extends Relayer { payload, payloadHash, transactionHash: event.txHash as string, - sourceEventIndex: event.order + sourceEventIndex: event.order, }; this.relayData.callContract[commandId] = contractCallArgs; diff --git a/packages/axelar-local-dev-multiversx/src/its.ts b/packages/axelar-local-dev-multiversx/src/its.ts index e9d9a8a6..cc591415 100644 --- a/packages/axelar-local-dev-multiversx/src/its.ts +++ b/packages/axelar-local-dev-multiversx/src/its.ts @@ -1,200 +1,195 @@ -import { logger, Network } from '@axelar-network/axelar-local-dev'; -import { MultiversXNetwork } from './MultiversXNetwork'; -import { - Address, AddressValue, BigUIntValue, BytesValue, - ContractFunction, - H256Value, Interaction, - ResultsParser, - SmartContract, - StringValue, TokenTransfer, U8Value -} from '@multiversx/sdk-core/out'; - -export class MultiversXITS { - private readonly client; - private readonly itsContract; - private readonly itsFactoryContract; - - constructor(client: MultiversXNetwork, itsContract: string, itsFactoryContract: string) { - this.client = client; - this.itsContract = itsContract; - this.itsFactoryContract = itsFactoryContract; - } - - async getValidTokenIdentifier(tokenId: string): Promise { - // Remove 0x added by Ethereum for hex strings - tokenId = tokenId.startsWith('0x') ? tokenId.substring(2) : tokenId; - - try { - const result = await this.client.callContract(this.itsContract, "validTokenIdentifier", [new H256Value(Buffer.from(tokenId, 'hex'))]); - - const parsedResult = new ResultsParser().parseUntypedQueryResponse(result); - - return parsedResult.values[0].toString(); - } catch (e) { - return null; - } - } - - async interchainTokenId(address: Address, salt: string): Promise { - // Remove 0x added by Ethereum for hex strings - salt = salt.startsWith('0x') ? salt.substring(2) : salt; - - const result = await this.client.callContract(this.itsFactoryContract, "interchainTokenId", [ - new AddressValue(address), - new H256Value(Buffer.from(salt, 'hex')) - ]); - - const parsedResult = new ResultsParser().parseUntypedQueryResponse(result); - - return parsedResult.values[0].toString('hex'); - } - - async deployInterchainToken( - salt: string, - name: string, - symbol: string, - decimals: number, - amount: number, - minter: Address, - ) { - // Remove 0x added by Ethereum for hex strings - salt = salt.startsWith('0x') ? salt.substring(2) : salt; - - const contract = new SmartContract({ address: Address.fromBech32(this.itsFactoryContract) }); - const args = [ - new H256Value(Buffer.from(salt, 'hex')), - new StringValue(name), - new StringValue(symbol), - new U8Value(decimals), - new BigUIntValue(amount), - new AddressValue(minter), - ]; - const transaction = new Interaction(contract, new ContractFunction("deployInterchainToken"), args) - .withSender(this.client.owner) - .withChainID('localnet') - .withGasLimit(300_000_000) - .buildTransaction(); - - const accountOnNetwork = await this.client.getAccount(this.client.owner); - this.client.ownerAccount.update(accountOnNetwork); - - transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); - - // First transaction deploys token manager - let returnCode = await this.client.signAndSendTransaction(transaction); - if (!returnCode.isSuccess()) { - return false; - } - - // Second transaction deploys token - transaction.setValue('5000000000000000000'); // 5 EGLD for ESDT issue cost on localnet - transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); - - returnCode = await this.client.signAndSendTransaction(transaction); - if (!returnCode.isSuccess()) { - return false; - } - - // Third transaction mints tokens - transaction.setValue('0'); - transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); - - returnCode = await this.client.signAndSendTransaction(transaction); - - return returnCode.isSuccess(); - } - - async deployRemoteInterchainToken( - chainName: string, - salt: string, - minter: Address, - destinationChain: string, - fee: number - ) { - // Remove 0x added by Ethereum for hex strings - salt = salt.startsWith('0x') ? salt.substring(2) : salt; - - const contract = new SmartContract({ address: Address.fromBech32(this.itsFactoryContract) }); - const args = [ - new StringValue(chainName), - new H256Value(Buffer.from(salt, 'hex')), - new AddressValue(minter), - new StringValue(destinationChain), - ]; - const transaction = new Interaction(contract, new ContractFunction("deployRemoteInterchainToken"), args) - .withSender(this.client.owner) - .withChainID('localnet') - .withGasLimit(300_000_000) - .withValue(fee) - .buildTransaction(); - - const accountOnNetwork = await this.client.getAccount(this.client.owner); - this.client.ownerAccount.update(accountOnNetwork); - - transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); - - const returnCode = await this.client.signAndSendTransaction(transaction); - - return !returnCode.isSuccess(); - } - - async interchainTransfer( - tokenId: string, - destinationChain: string, - destinationAddress: string, - tokenIdentifier: string, - amount: string, - gasValue: string - ) { - // Remove 0x added by Ethereum for hex strings - tokenId = tokenId.startsWith('0x') ? tokenId.substring(2) : tokenId; - - const contract = new SmartContract({ address: Address.fromBech32(this.itsContract) }); - const args = [ - new H256Value(Buffer.from(tokenId, 'hex')), - new StringValue(destinationChain), - new StringValue(destinationAddress), - new BytesValue(Buffer.from('')), - new BigUIntValue(gasValue), - ]; - const transaction = new Interaction(contract, new ContractFunction("interchainTransfer"), args) - .withSingleESDTTransfer(TokenTransfer.fungibleFromBigInteger(tokenIdentifier, amount)) - .withSender(this.client.owner) - .withChainID('localnet') - .withGasLimit(100_000_000) - .buildTransaction(); - - const accountOnNetwork = await this.client.getAccount(this.client.owner); - this.client.ownerAccount.update(accountOnNetwork); - - transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); - - const returnCode = await this.client.signAndSendTransaction(transaction); - - return returnCode.isSuccess(); - } -} - -export async function registerMultiversXRemoteITS(multiversxNetwork: MultiversXNetwork, networks: Network[]) { - logger.log(`Registerring ITS for ${networks.length} other chain for MultiversX...`); - - const accountOnNetwork = await multiversxNetwork.getAccount(multiversxNetwork.owner); - multiversxNetwork.ownerAccount.update(accountOnNetwork); - - for (const network of networks) { - const data = [] as string[]; - data.push( - ( - await network.interchainTokenService.populateTransaction.setTrustedAddress( - 'multiversx', - (multiversxNetwork.interchainTokenServiceAddress as Address).bech32(), - ) - ).data as string - ); - - await (await network.interchainTokenService.multicall(data)).wait(); - - await multiversxNetwork.setInterchainTokenServiceTrustedAddress(network.name, network.interchainTokenService.address); - } - logger.log(`Done`); -} +import { logger, Network } from '@axelar-network/axelar-local-dev'; +import { MultiversXNetwork } from './MultiversXNetwork'; +import { + Address, + AddressValue, + BigUIntValue, + BytesValue, + ContractFunction, + H256Value, + Interaction, + ResultsParser, + SmartContract, + StringValue, + TokenTransfer, + U8Value, +} from '@multiversx/sdk-core/out'; + +export class MultiversXITS { + private readonly client; + private readonly itsContract; + private readonly itsFactoryContract; + + constructor(client: MultiversXNetwork, itsContract: string, itsFactoryContract: string) { + this.client = client; + this.itsContract = itsContract; + this.itsFactoryContract = itsFactoryContract; + } + + async getValidTokenIdentifier(tokenId: string): Promise { + // Remove 0x added by Ethereum for hex strings + tokenId = tokenId.startsWith('0x') ? tokenId.substring(2) : tokenId; + + try { + const result = await this.client.callContract(this.itsContract, 'validTokenIdentifier', [ + new H256Value(Buffer.from(tokenId, 'hex')), + ]); + + const parsedResult = new ResultsParser().parseUntypedQueryResponse(result); + + return parsedResult.values[0].toString(); + } catch (e) { + return null; + } + } + + async interchainTokenId(address: Address, salt: string): Promise { + // Remove 0x added by Ethereum for hex strings + salt = salt.startsWith('0x') ? salt.substring(2) : salt; + + const result = await this.client.callContract(this.itsFactoryContract, 'interchainTokenId', [ + new AddressValue(address), + new H256Value(Buffer.from(salt, 'hex')), + ]); + + const parsedResult = new ResultsParser().parseUntypedQueryResponse(result); + + return parsedResult.values[0].toString('hex'); + } + + async deployInterchainToken(salt: string, name: string, symbol: string, decimals: number, amount: number, minter: Address) { + // Remove 0x added by Ethereum for hex strings + salt = salt.startsWith('0x') ? salt.substring(2) : salt; + + const contract = new SmartContract({ address: Address.fromBech32(this.itsFactoryContract) }); + const args = [ + new H256Value(Buffer.from(salt, 'hex')), + new StringValue(name), + new StringValue(symbol), + new U8Value(decimals), + new BigUIntValue(amount), + new AddressValue(minter), + ]; + const transaction = new Interaction(contract, new ContractFunction('deployInterchainToken'), args) + .withSender(this.client.owner) + .withChainID('localnet') + .withGasLimit(300_000_000) + .buildTransaction(); + + const accountOnNetwork = await this.client.getAccount(this.client.owner); + this.client.ownerAccount.update(accountOnNetwork); + + transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); + + // First transaction deploys token manager + let returnCode = await this.client.signAndSendTransaction(transaction); + if (!returnCode.isSuccess()) { + return false; + } + + // Second transaction deploys token + transaction.setValue('5000000000000000000'); // 5 EGLD for ESDT issue cost on localnet + transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); + + returnCode = await this.client.signAndSendTransaction(transaction); + if (!returnCode.isSuccess()) { + return false; + } + + // Third transaction mints tokens + transaction.setValue('0'); + transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); + + returnCode = await this.client.signAndSendTransaction(transaction); + + return returnCode.isSuccess(); + } + + async deployRemoteInterchainToken(chainName: string, salt: string, minter: Address, destinationChain: string, fee: number) { + // Remove 0x added by Ethereum for hex strings + salt = salt.startsWith('0x') ? salt.substring(2) : salt; + + const contract = new SmartContract({ address: Address.fromBech32(this.itsFactoryContract) }); + const args = [ + new StringValue(chainName), + new H256Value(Buffer.from(salt, 'hex')), + new AddressValue(minter), + new StringValue(destinationChain), + ]; + const transaction = new Interaction(contract, new ContractFunction('deployRemoteInterchainToken'), args) + .withSender(this.client.owner) + .withChainID('localnet') + .withGasLimit(300_000_000) + .withValue(fee) + .buildTransaction(); + + const accountOnNetwork = await this.client.getAccount(this.client.owner); + this.client.ownerAccount.update(accountOnNetwork); + + transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); + + const returnCode = await this.client.signAndSendTransaction(transaction); + + return !returnCode.isSuccess(); + } + + async interchainTransfer( + tokenId: string, + destinationChain: string, + destinationAddress: string, + tokenIdentifier: string, + amount: string, + gasValue: string + ) { + // Remove 0x added by Ethereum for hex strings + tokenId = tokenId.startsWith('0x') ? tokenId.substring(2) : tokenId; + + const contract = new SmartContract({ address: Address.fromBech32(this.itsContract) }); + const args = [ + new H256Value(Buffer.from(tokenId, 'hex')), + new StringValue(destinationChain), + new StringValue(destinationAddress), + new BytesValue(Buffer.from('')), + new BigUIntValue(gasValue), + ]; + const transaction = new Interaction(contract, new ContractFunction('interchainTransfer'), args) + .withSingleESDTTransfer(TokenTransfer.fungibleFromBigInteger(tokenIdentifier, amount)) + .withSender(this.client.owner) + .withChainID('localnet') + .withGasLimit(100_000_000) + .buildTransaction(); + + const accountOnNetwork = await this.client.getAccount(this.client.owner); + this.client.ownerAccount.update(accountOnNetwork); + + transaction.setNonce(this.client.ownerAccount.getNonceThenIncrement()); + + const returnCode = await this.client.signAndSendTransaction(transaction); + + return returnCode.isSuccess(); + } +} + +export async function registerMultiversXRemoteITS(multiversxNetwork: MultiversXNetwork, networks: Network[]) { + logger.log(`Registerring ITS for ${networks.length} other chain for MultiversX...`); + + const accountOnNetwork = await multiversxNetwork.getAccount(multiversxNetwork.owner); + multiversxNetwork.ownerAccount.update(accountOnNetwork); + + for (const network of networks) { + const data = [] as string[]; + data.push( + ( + await network.interchainTokenService.populateTransaction.setTrustedAddress( + 'multiversx', + (multiversxNetwork.interchainTokenServiceAddress as Address).bech32() + ) + ).data as string + ); + + await (await network.interchainTokenService.multicall(data)).wait(); + + await multiversxNetwork.setInterchainTokenServiceTrustedAddress(network.name, network.interchainTokenService.address); + } + logger.log(`Done`); +} diff --git a/packages/axelar-local-dev-multiversx/src/multiversXNetworkUtils.ts b/packages/axelar-local-dev-multiversx/src/multiversXNetworkUtils.ts index b9e53221..e8908c02 100644 --- a/packages/axelar-local-dev-multiversx/src/multiversXNetworkUtils.ts +++ b/packages/axelar-local-dev-multiversx/src/multiversXNetworkUtils.ts @@ -58,7 +58,7 @@ export async function createMultiversXNetwork(config?: MultiversXNetworkConfig): configFile?.axelarGasReceiverAddress, configFile?.interchainTokenServiceAddress, configFile?.interchainTokenFactoryAddress, - configFile?.contractAddress, + configFile?.contractAddress ); // Check if whether the gateway is deployed @@ -84,9 +84,7 @@ export async function createMultiversXNetwork(config?: MultiversXNetworkConfig): return multiversXNetwork; } -export async function loadMultiversXNetwork( - gatewayUrl = 'http://127.0.0.1:7950', -) { +export async function loadMultiversXNetwork(gatewayUrl = 'http://127.0.0.1:7950') { const configFile = getMultiversXConfig(); multiversXNetwork = new MultiversXNetwork( @@ -96,7 +94,7 @@ export async function loadMultiversXNetwork( configFile?.axelarGasReceiverAddress, configFile?.interchainTokenServiceAddress, configFile?.interchainTokenFactoryAddress, - configFile?.contractAddress, + configFile?.contractAddress ); const isGatewayDeployed = await multiversXNetwork.isGatewayDeployed(); diff --git a/packages/axelar-local-dev-near/src/contracts/test/Executable.sol b/packages/axelar-local-dev-near/src/contracts/test/Executable.sol index e96c7140..876b5200 100644 --- a/packages/axelar-local-dev-near/src/contracts/test/Executable.sol +++ b/packages/axelar-local-dev-near/src/contracts/test/Executable.sol @@ -33,11 +33,7 @@ contract Executable is AxelarExecutable { /* Handles calls created by setAndSend. Updates this contract's value and gives the token received to the destination specified at the source chain. */ - function _execute( - string calldata sourceChain_, - string calldata sourceAddress_, - bytes calldata payload_ - ) internal override { + function _execute(string calldata sourceChain_, string calldata sourceAddress_, bytes calldata payload_) internal override { (value) = abi.decode(payload_, (string)); sourceChain = sourceChain_; sourceAddress = sourceAddress_; diff --git a/packages/axelar-local-dev-sui/contracts/TestExecutable.sol b/packages/axelar-local-dev-sui/contracts/TestExecutable.sol index 4eb15675..e1e4350f 100644 --- a/packages/axelar-local-dev-sui/contracts/TestExecutable.sol +++ b/packages/axelar-local-dev-sui/contracts/TestExecutable.sol @@ -21,7 +21,6 @@ contract TestExecutable is AxelarExecutable { siblings[chain_] = address_; } - // Call this function to update the value of this contract along with all its siblings'. function set(string memory chain, string calldata value_) external payable { value = value_; @@ -34,11 +33,7 @@ contract TestExecutable is AxelarExecutable { /* Handles calls created by setAndSend. Updates this contract's value and gives the token received to the destination specified at the source chain. */ - function _execute( - string calldata sourceChain_, - string calldata sourceAddress_, - bytes calldata payload_ - ) internal override { + function _execute(string calldata sourceChain_, string calldata sourceAddress_, bytes calldata payload_) internal override { (value) = abi.decode(payload_, (string)); sourceChain = sourceChain_; sourceAddress = sourceAddress_; diff --git a/packages/axelar-local-dev-sui/src/Command.ts b/packages/axelar-local-dev-sui/src/Command.ts index 8ba9eb4f..5ccef356 100644 --- a/packages/axelar-local-dev-sui/src/Command.ts +++ b/packages/axelar-local-dev-sui/src/Command.ts @@ -36,21 +36,19 @@ export class Command { [args.from, args.sourceAddress, args.destinationContractAddress, args.payloadHash, args.payload], [], async () => { - - let tx = new TransactionBlock(); tx.moveCall({ target: `${suiNetwork.axelarPackageId}::discovery::get_transaction`, - arguments: [tx.object(suiNetwork.axelarDiscoveryId), tx.pure(args.destinationContractAddress)] + arguments: [tx.object(suiNetwork.axelarDiscoveryId), tx.pure(args.destinationContractAddress)], }); - let resp = await suiNetwork.devInspect(tx) as any; + let resp = (await suiNetwork.devInspect(tx)) as any; tx = new TransactionBlock(); tx.moveCall(getMoveCallFromTx(tx, resp.results[0].returnValues[0][0], args.payload)); - resp = await suiNetwork.devInspect(tx) as any; + resp = (await suiNetwork.devInspect(tx)) as any; tx = new TransactionBlock(); - + const approvedCall = tx.moveCall({ target: `${suiNetwork.axelarPackageId}::gateway::take_approved_call`, arguments: [ diff --git a/packages/axelar-local-dev-sui/src/SuiNetwork.ts b/packages/axelar-local-dev-sui/src/SuiNetwork.ts index 8bb3b559..eb03d279 100644 --- a/packages/axelar-local-dev-sui/src/SuiNetwork.ts +++ b/packages/axelar-local-dev-sui/src/SuiNetwork.ts @@ -39,7 +39,6 @@ export class SuiNetwork extends SuiClient { * @param faucetUrl - Optional faucet URL; defaults to localnet if not provided */ constructor(nodeUrl?: string, faucetUrl?: string) { - super({ url: nodeUrl || getFullnodeUrl('localnet') }); this.nodeUrl = nodeUrl || getFullnodeUrl('localnet'); this.faucetUrl = faucetUrl || getFaucetHost('localnet'); @@ -52,11 +51,11 @@ export class SuiNetwork extends SuiClient { async init() { // Fund executor account await this.fundWallet(this.getExecutorAddress()); - + updateMoveToml('axelar', '0x0'); - const {packageId, publishTxn } = await publishPackage('../move/axelar', this, this.executor); + const { packageId, publishTxn } = await publishPackage('../move/axelar', this, this.executor); updateMoveToml('axelar', packageId); - + const validators = publishTxn.objectChanges?.find((obj: any) => { return obj.objectType && obj.objectType.endsWith('validators::AxelarValidators'); }) as any; diff --git a/packages/axelar-local-dev-sui/src/utils.ts b/packages/axelar-local-dev-sui/src/utils.ts index 1f38c5ec..4b9f7594 100644 --- a/packages/axelar-local-dev-sui/src/utils.ts +++ b/packages/axelar-local-dev-sui/src/utils.ts @@ -3,7 +3,9 @@ import { EventId } from '@mysten/sui.js/client'; import { BCS, getSuiMoveConfig } from '@mysten/bcs'; import { TransactionBlock } from '@mysten/sui.js'; -const { utils: { hexlify, arrayify }} = ethers; +const { + utils: { hexlify, arrayify }, +} = ethers; export const getCommandId = (event: EventId) => { return ethers.utils.id([event.txDigest, event.eventSeq].join(':')); @@ -74,35 +76,36 @@ export const getMoveCallFromTx = (tx: TransactionBlock, txData: any, payload: st const bcs = new BCS(getSuiMoveConfig()); // input argument for the tx - bcs.registerStructType("Description", { - packageId: "address", - module_name: "string", - name: "string", + bcs.registerStructType('Description', { + packageId: 'address', + module_name: 'string', + name: 'string', }); - bcs.registerStructType("Transaction", { - function: "Description", - arguments: "vector>", - type_arguments: "vector", + bcs.registerStructType('Transaction', { + function: 'Description', + arguments: 'vector>', + type_arguments: 'vector', }); let txInfo = bcs.de('Transaction', new Uint8Array(txData)); - const decodeArgs = (args: Uint8Array[]) => args.map(arg => { - if(arg[0] === 0) { - return tx.object(hexlify(arg.slice(1))); - } else if (arg[0] === 1) { - return tx.pure(arg.slice(1)); - } else if (arg[0] === 2) { - return callContractObj - } else if (arg[0] === 3) { - return tx.pure(String.fromCharCode(...arrayify(payload))); - } else { - throw new Error(`Invalid argument prefix: ${arg[0]}`); - } - }); + const decodeArgs = (args: Uint8Array[]) => + args.map((arg) => { + if (arg[0] === 0) { + return tx.object(hexlify(arg.slice(1))); + } else if (arg[0] === 1) { + return tx.pure(arg.slice(1)); + } else if (arg[0] === 2) { + return callContractObj; + } else if (arg[0] === 3) { + return tx.pure(String.fromCharCode(...arrayify(payload))); + } else { + throw new Error(`Invalid argument prefix: ${arg[0]}`); + } + }); const decodeDescription = (description: any) => `${description.packageId}::${description.module_name}::${description.name}`; - return{ + return { target: decodeDescription(txInfo.function), arguments: decodeArgs(txInfo.arguments), typeArguments: txInfo.type_arguments.map(decodeDescription), } as any; -} \ No newline at end of file +}; diff --git a/packages/axelar-local-dev/.solhint.json b/packages/axelar-local-dev/.solhint.json index 84888a37..77b6cfdc 100644 --- a/packages/axelar-local-dev/.solhint.json +++ b/packages/axelar-local-dev/.solhint.json @@ -1,9 +1,9 @@ { - "extends": "solhint:recommended", - "plugins": [], - "rules": { - "quotes": ["error", "single"], - "compiler-version": ["off"], - "func-visibility": ["warn", {"ignoreConstructors": true}] - } + "extends": "solhint:recommended", + "plugins": [], + "rules": { + "quotes": ["error", "single"], + "compiler-version": ["off"], + "func-visibility": ["warn", { "ignoreConstructors": true }] + } } diff --git a/packages/axelar-local-dev/src/exportUtils.ts b/packages/axelar-local-dev/src/exportUtils.ts index 3faccba8..3deed7b7 100644 --- a/packages/axelar-local-dev/src/exportUtils.ts +++ b/packages/axelar-local-dev/src/exportUtils.ts @@ -100,7 +100,7 @@ export async function setupAndExport(options: SetupLocalOptions) { // check if given rpc url is valid using ethers.js to get latest block const provider = new ethers.providers.JsonRpcProvider(chain.rpcUrl); await provider.getBlockNumber().catch((e) => { - throw Error(`Please check if the ${chain.name} chain is running on ${chain.rpcUrl}`) + throw Error(`Please check if the ${chain.name} chain is running on ${chain.rpcUrl}`); }); } From f1d5981203fbdab9e6d20dc6774fb6544e9d0ebd Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 1 Jul 2025 13:55:05 +0500 Subject: [PATCH 45/93] chore: add .prettierignore --- .prettierignore | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 .prettierignore diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 00000000..8f504c13 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,17 @@ +# Node.js dependencies +node_modules + +# Docker configuration, volumes, or related files +docker + +# Build artifacts from smart contract compilers +artifacts +build +dist +cache + +# Agoric-specific hidden configuration +.agoric/ + +# Axelar-related configuration or artifacts +.axelar/ From 2e5809aafb6a19fa7010cb64222c62b650fa7c3d Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 1 Jul 2025 13:58:56 +0500 Subject: [PATCH 46/93] chore: rename Factory.sol to AgoricProxy.sol --- .../src/__tests__/contracts/{Factory.sol => AgoricProxy.sol} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename packages/axelar-local-dev-cosmos/src/__tests__/contracts/{Factory.sol => AgoricProxy.sol} (98%) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol similarity index 98% rename from packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol rename to packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol index ba7071c7..9dc5e667 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol @@ -75,7 +75,7 @@ contract Wallet is AxelarExecutable, Ownable { fallback() external payable {} } -contract Factory is AxelarExecutable { +contract AgoricProxy is AxelarExecutable { using StringToAddress for string; using AddressToString for address; From fd9feade6d2da9547f16b702a151cb0957f1d0e5 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 1 Jul 2025 16:14:43 +0500 Subject: [PATCH 47/93] feat: migrate cosmos package to Hardhat + ethers v6, add AgoricProxy tests --- .gitignore | 2 +- .prettierignore | 3 +- package-lock.json | 1135 +++++++++++++---- package.json | 3 +- .../{hardhat.config.js => hardhat.config.ts} | 15 +- packages/axelar-local-dev-cosmos/package.json | 27 +- .../axelar-local-dev-cosmos/src/Command.ts | 11 +- .../src/__tests__/AgoricProxy.spec.ts | 80 ++ .../src/clients/ibc/RelayerAccountManager.ts | 8 +- .../src/services/AxelarRelayerService.ts | 28 +- .../axelar-local-dev-cosmos/tsconfig.json | 3 +- 11 files changed, 1064 insertions(+), 251 deletions(-) rename packages/axelar-local-dev-cosmos/{hardhat.config.js => hardhat.config.ts} (73%) create mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts diff --git a/.gitignore b/.gitignore index 607cf4a9..a7945b27 100644 --- a/.gitignore +++ b/.gitignore @@ -117,7 +117,7 @@ dist # Build artifacts - +typechain-types build .aptos diff --git a/.prettierignore b/.prettierignore index 8f504c13..a3c35640 100644 --- a/.prettierignore +++ b/.prettierignore @@ -4,11 +4,12 @@ node_modules # Docker configuration, volumes, or related files docker -# Build artifacts from smart contract compilers +# Build artifacts build dist cache +typechain-types # Agoric-specific hidden configuration .agoric/ diff --git a/package-lock.json b/package-lock.json index 12043fce..88ebb337 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,6 +22,13 @@ "node": ">=0.10.0" } }, + "node_modules/@adraffy/ens-normalize": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz", + "integrity": "sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==", + "dev": true, + "license": "MIT" + }, "node_modules/@ampproject/remapping": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", @@ -3586,22 +3593,6 @@ "node": "^18.18 || ^20.14 || >=22" } }, - "node_modules/@metamask/eth-sig-util": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@metamask/eth-sig-util/-/eth-sig-util-4.0.1.tgz", - "integrity": "sha512-tghyZKLHZjcdlDqCA3gNZmLeR0XvOE9U1qoQO9ohyAZT6Pya+H9vkBPcsyXytmYLNgVoin7CKCmweo/R43V+tQ==", - "dev": true, - "dependencies": { - "ethereumjs-abi": "^0.6.8", - "ethereumjs-util": "^6.2.1", - "ethjs-util": "^0.1.6", - "tweetnacl": "^1.0.3", - "tweetnacl-util": "^0.15.1" - }, - "engines": { - "node": ">=12.0.0" - } - }, "node_modules/@metamask/superstruct": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/@metamask/superstruct/-/superstruct-3.1.0.tgz", @@ -4342,196 +4333,405 @@ } }, "node_modules/@nomicfoundation/edr": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.8.0.tgz", - "integrity": "sha512-dwWRrghSVBQDpt0wP+6RXD8BMz2i/9TI34TcmZqeEAZuCLei3U9KZRgGTKVAM1rMRvrpf5ROfPqrWNetKVUTag==", + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.11.2.tgz", + "integrity": "sha512-JEFMTs5Tju+YiCsv6EO+657O/fvPaQ7bkUCkWqHFYFFbCKH1yh0PeRIaqj5h4z4O16ckxbVpAM676ZFTmvFUGQ==", "dev": true, + "license": "MIT", "dependencies": { - "@nomicfoundation/edr-darwin-arm64": "0.8.0", - "@nomicfoundation/edr-darwin-x64": "0.8.0", - "@nomicfoundation/edr-linux-arm64-gnu": "0.8.0", - "@nomicfoundation/edr-linux-arm64-musl": "0.8.0", - "@nomicfoundation/edr-linux-x64-gnu": "0.8.0", - "@nomicfoundation/edr-linux-x64-musl": "0.8.0", - "@nomicfoundation/edr-win32-x64-msvc": "0.8.0" + "@nomicfoundation/edr-darwin-arm64": "0.11.2", + "@nomicfoundation/edr-darwin-x64": "0.11.2", + "@nomicfoundation/edr-linux-arm64-gnu": "0.11.2", + "@nomicfoundation/edr-linux-arm64-musl": "0.11.2", + "@nomicfoundation/edr-linux-x64-gnu": "0.11.2", + "@nomicfoundation/edr-linux-x64-musl": "0.11.2", + "@nomicfoundation/edr-win32-x64-msvc": "0.11.2" }, "engines": { "node": ">= 18" } }, "node_modules/@nomicfoundation/edr-darwin-arm64": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.8.0.tgz", - "integrity": "sha512-sKTmOu/P5YYhxT0ThN2Pe3hmCE/5Ag6K/eYoiavjLWbR7HEb5ZwPu2rC3DpuUk1H+UKJqt7o4/xIgJxqw9wu6A==", + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.11.2.tgz", + "integrity": "sha512-/QU0GHeoLFOJp28qK46kkTG849NN/5Qgq9ifKzhqBas1MCqwcdjrUI3raGkvE9SWJevljWd1HdW16fFpxUrzbA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18" } }, "node_modules/@nomicfoundation/edr-darwin-x64": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.8.0.tgz", - "integrity": "sha512-8ymEtWw1xf1Id1cc42XIeE+9wyo3Dpn9OD/X8GiaMz9R70Ebmj2g+FrbETu8o6UM+aL28sBZQCiCzjlft2yWAg==", + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.11.2.tgz", + "integrity": "sha512-Dam+k00vyYNXCkM7JZGQBm0McNaL6ilbfY8BuIdHU2mpIVO5hpAFk8IQnMnG3FRuXuPJ0JoSTkn1R495T8AKqw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18" } }, "node_modules/@nomicfoundation/edr-linux-arm64-gnu": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.8.0.tgz", - "integrity": "sha512-h/wWzS2EyQuycz+x/SjMRbyA+QMCCVmotRsgM1WycPARvVZWIVfwRRsKoXKdCftsb3S8NTprqBdJlOmsFyETFA==", + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.11.2.tgz", + "integrity": "sha512-6Z+hZ61c0v5EPVhCAc/rV36eN20GbPRfcmUeFJ3t+RjdY20EiUQzP85YU0q3AgCuwr410W27pazoBoL73cCPbg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18" } }, "node_modules/@nomicfoundation/edr-linux-arm64-musl": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.8.0.tgz", - "integrity": "sha512-gnWxDgdkka0O9GpPX/gZT3REeKYV28Guyg13+Vj/bbLpmK1HmGh6Kx+fMhWv+Ht/wEmGDBGMCW1wdyT/CftJaQ==", + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.11.2.tgz", + "integrity": "sha512-AqC4AI3pR4vSsEcFyW/6rI1q16wEjIRYIR25IJO/EdBmXdsuVZgxsf/kMUCWQhhTuy89RTgIGTbMAQA0+DfSvA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18" } }, "node_modules/@nomicfoundation/edr-linux-x64-gnu": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.8.0.tgz", - "integrity": "sha512-DTMiAkgAx+nyxcxKyxFZk1HPakXXUCgrmei7r5G7kngiggiGp/AUuBBWFHi8xvl2y04GYhro5Wp+KprnLVoAPA==", + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.11.2.tgz", + "integrity": "sha512-vz1uiof1ZIi6RnXfHZiAXRgkloLciuYGD1rNDrqm1Pp7Nf0pbxw+e4TBQLoMYKzZn0MYS4u4Fa0AV2S7NjfptQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18" } }, "node_modules/@nomicfoundation/edr-linux-x64-musl": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.8.0.tgz", - "integrity": "sha512-iTITWe0Zj8cNqS0xTblmxPbHVWwEtMiDC+Yxwr64d7QBn/1W0ilFQ16J8gB6RVVFU3GpfNyoeg3tUoMpSnrm6Q==", + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.11.2.tgz", + "integrity": "sha512-ArAbcrWwn+8Ze8JAaA9349N2E7hfs9PYvxDgfhujEH9iVC9XI6L+OhMATPsS3wkOST/+ykxELAF1KT4YjSxcrA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18" } }, "node_modules/@nomicfoundation/edr-win32-x64-msvc": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.8.0.tgz", - "integrity": "sha512-mNRDyd/C3j7RMcwapifzv2K57sfA5xOw8g2U84ZDvgSrXVXLC99ZPxn9kmolb+dz8VMm9FONTZz9ESS6v8DTnA==", + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.11.2.tgz", + "integrity": "sha512-GDXBhxy5wlmZYQrTXu9Oh9OPTsi4tCdmHy1z8O9XqdH9wsP674Frh6Fb43yjVoS2Ek1F9yX11nexIrFXSuNyJQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18" } }, - "node_modules/@nomicfoundation/ethereumjs-common": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-common/-/ethereumjs-common-4.0.4.tgz", - "integrity": "sha512-9Rgb658lcWsjiicr5GzNCjI1llow/7r0k50dLL95OJ+6iZJcVbi15r3Y0xh2cIO+zgX0WIHcbzIu6FeQf9KPrg==", + "node_modules/@nomicfoundation/hardhat-ignition": { + "version": "0.15.12", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ignition/-/hardhat-ignition-0.15.12.tgz", + "integrity": "sha512-T03bSjFy8vWeKGvFsR42vzl4PgmW06i1e/84m2oowZzdO3i9ax3XJhRiH4kC08QXzkdAdUPinx68hQea8Wh6Jw==", "dev": true, + "license": "MIT", "dependencies": { - "@nomicfoundation/ethereumjs-util": "9.0.4" + "@nomicfoundation/ignition-core": "^0.15.12", + "@nomicfoundation/ignition-ui": "^0.15.11", + "chalk": "^4.0.0", + "debug": "^4.3.2", + "fs-extra": "^10.0.0", + "json5": "^2.2.3", + "prompts": "^2.4.2" + }, + "peerDependencies": { + "@nomicfoundation/hardhat-verify": "^2.0.1", + "hardhat": "^2.18.0" } }, - "node_modules/@nomicfoundation/ethereumjs-rlp": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-rlp/-/ethereumjs-rlp-5.0.4.tgz", - "integrity": "sha512-8H1S3s8F6QueOc/X92SdrA4RDenpiAEqMg5vJH99kcQaCy/a3Q6fgseo75mgWlbanGJXSlAPtnCeG9jvfTYXlw==", + "node_modules/@nomicfoundation/hardhat-ignition/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "bin": { - "rlp": "bin/rlp.cjs" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" }, "engines": { - "node": ">=18" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@nomicfoundation/ethereumjs-tx": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-tx/-/ethereumjs-tx-5.0.4.tgz", - "integrity": "sha512-Xjv8wAKJGMrP1f0n2PeyfFCCojHd7iS3s/Ab7qzF1S64kxZ8Z22LCMynArYsVqiFx6rzYy548HNVEyI+AYN/kw==", + "node_modules/@nomicfoundation/hardhat-ignition/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, + "license": "MIT", "dependencies": { - "@nomicfoundation/ethereumjs-common": "4.0.4", - "@nomicfoundation/ethereumjs-rlp": "5.0.4", - "@nomicfoundation/ethereumjs-util": "9.0.4", - "ethereum-cryptography": "0.1.3" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=18" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@nomicfoundation/hardhat-ignition/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@nomicfoundation/hardhat-ignition/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@nomicfoundation/hardhat-ignition/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@nomicfoundation/hardhat-ignition/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@nomicfoundation/hardhat-ignition/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@nomicfoundation/hardhat-network-helpers": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-network-helpers/-/hardhat-network-helpers-1.0.13.tgz", + "integrity": "sha512-ptg0+SH8jnfoYHlR3dKWTNTB43HZSxkuy3OeDk+AufEKQvQ7Ru9LQEbJtLuDTQ4HGRBkhl4oJ9RABsEIbn7Taw==", + "dev": true, + "license": "MIT", + "dependencies": { + "ethereumjs-util": "^7.1.4" }, "peerDependencies": { - "c-kzg": "^2.1.2" + "hardhat": "^2.9.5" + } + }, + "node_modules/@nomicfoundation/hardhat-verify": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-verify/-/hardhat-verify-2.0.14.tgz", + "integrity": "sha512-z3iVF1WYZHzcdMMUuureFpSAfcnlfJbJx3faOnGrOYg6PRTki1Ut9JAuRccnFzMHf1AmTEoSUpWcyvBCoxL5Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ethersproject/abi": "^5.1.2", + "@ethersproject/address": "^5.0.2", + "cbor": "^8.1.0", + "debug": "^4.1.1", + "lodash.clonedeep": "^4.5.0", + "picocolors": "^1.1.0", + "semver": "^6.3.0", + "table": "^6.8.0", + "undici": "^5.14.0" }, - "peerDependenciesMeta": { - "c-kzg": { - "optional": true + "peerDependencies": { + "hardhat": "^2.24.1" + } + }, + "node_modules/@nomicfoundation/ignition-core": { + "version": "0.15.12", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ignition-core/-/ignition-core-0.15.12.tgz", + "integrity": "sha512-JJdyoyfM5RXaUqv4c2V/8xpuui4uqJbMCvVnEhgo6FMOK6bqj8wGP6hM4gNE5TLug6ZUCdjIB8kFpofl21RycQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ethersproject/address": "5.6.1", + "@nomicfoundation/solidity-analyzer": "^0.1.1", + "cbor": "^9.0.0", + "debug": "^4.3.2", + "ethers": "^6.14.0", + "fs-extra": "^10.0.0", + "immer": "10.0.2", + "lodash": "4.17.21", + "ndjson": "2.0.0" + } + }, + "node_modules/@nomicfoundation/ignition-core/node_modules/@ethersproject/address": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.1.tgz", + "integrity": "sha512-uOgF0kS5MJv9ZvCz7x6T2EXJSzotiybApn4XlOgoTX0xdtyVIJ7pF+6cGPxiEq/dpBiTfMiw7Yc81JcwhSYA0Q==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" } + ], + "license": "MIT", + "dependencies": { + "@ethersproject/bignumber": "^5.6.2", + "@ethersproject/bytes": "^5.6.1", + "@ethersproject/keccak256": "^5.6.1", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/rlp": "^5.6.1" } }, - "node_modules/@nomicfoundation/ethereumjs-tx/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", + "node_modules/@nomicfoundation/ignition-core/node_modules/@noble/curves": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz", + "integrity": "sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==", "dev": true, + "license": "MIT", "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" + "@noble/hashes": "1.3.2" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@nomicfoundation/ignition-core/node_modules/@noble/hashes": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.2.tgz", + "integrity": "sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, - "node_modules/@nomicfoundation/ethereumjs-util": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-util/-/ethereumjs-util-9.0.4.tgz", - "integrity": "sha512-sLOzjnSrlx9Bb9EFNtHzK/FJFsfg2re6bsGqinFinH1gCqVfz9YYlXiMWwDM4C/L4ywuHFCYwfKTVr/QHQcU0Q==", + "node_modules/@nomicfoundation/ignition-core/node_modules/aes-js": { + "version": "4.0.0-beta.5", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-4.0.0-beta.5.tgz", + "integrity": "sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@nomicfoundation/ignition-core/node_modules/cbor": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-9.0.2.tgz", + "integrity": "sha512-JPypkxsB10s9QOWwa6zwPzqE1Md3vqpPc+cai4sAecuCsRyAtAl/pMyhPlMbT/xtPnm2dznJZYRLui57qiRhaQ==", "dev": true, + "license": "MIT", "dependencies": { - "@nomicfoundation/ethereumjs-rlp": "5.0.4", - "ethereum-cryptography": "0.1.3" + "nofilter": "^3.1.0" }, "engines": { - "node": ">=18" + "node": ">=16" + } + }, + "node_modules/@nomicfoundation/ignition-core/node_modules/ethers": { + "version": "6.14.4", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-6.14.4.tgz", + "integrity": "sha512-Jm/dzRs2Z9iBrT6e9TvGxyb5YVKAPLlpna7hjxH7KH/++DSh2T/JVmQUv7iHI5E55hDbp/gEVvstWYXVxXFzsA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/ethers-io/" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "license": "MIT", + "dependencies": { + "@adraffy/ens-normalize": "1.10.1", + "@noble/curves": "1.2.0", + "@noble/hashes": "1.3.2", + "@types/node": "22.7.5", + "aes-js": "4.0.0-beta.5", + "tslib": "2.7.0", + "ws": "8.17.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@nomicfoundation/ignition-core/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@nomicfoundation/ignition-core/node_modules/tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "dev": true, + "license": "0BSD" + }, + "node_modules/@nomicfoundation/ignition-core/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" }, "peerDependencies": { - "c-kzg": "^2.1.2" + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" }, "peerDependenciesMeta": { - "c-kzg": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { "optional": true } } }, - "node_modules/@nomicfoundation/ethereumjs-util/node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } + "node_modules/@nomicfoundation/ignition-ui": { + "version": "0.15.11", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ignition-ui/-/ignition-ui-0.15.11.tgz", + "integrity": "sha512-VPOVl5xqCKhYCyPOQlposx+stjCwqXQ+BCs5lnw/f2YUfgII+G5Ye0JfHiJOfCJGmqyS03WertBslcj9zQg50A==", + "dev": true }, "node_modules/@nomicfoundation/solidity-analyzer": { "version": "0.1.1", @@ -5660,10 +5860,11 @@ } }, "node_modules/@openzeppelin/contracts": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.2.0.tgz", - "integrity": "sha512-bxjNie5z89W1Ea0NZLZluFh8PrFNn9DH8DQlujEok2yjsOlraUPKID5p1Wk3qdNbf6XkQ1Os2RvfiHrrXLHWKA==", - "dev": true + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.3.0.tgz", + "integrity": "sha512-zj/KGoW7zxWUE8qOI++rUM18v+VeLTTzKs/DJFkSzHpQFPD/jKKF0TrMxBfGLl3kpdELCNccvB3zmofSzm4nlA==", + "dev": true, + "license": "MIT" }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", @@ -6233,6 +6434,16 @@ "integrity": "sha512-Wj71sXE4Q4AkGdG9Tvq1u/fquNz9EdG4LIJMwVVII7ashjD/8cf8fyIfJAjRr6YcsXnSE8cOGQPq1gqeR8z+3w==", "dev": true }, + "node_modules/@types/chai-as-promised": { + "version": "7.1.8", + "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz", + "integrity": "sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/chai": "*" + } + }, "node_modules/@types/concat-stream": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz", @@ -6397,10 +6608,11 @@ "dev": true }, "node_modules/@types/mocha": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz", - "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==", - "dev": true + "version": "10.0.10", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.10.tgz", + "integrity": "sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==", + "dev": true, + "license": "MIT" }, "node_modules/@types/ms": { "version": "2.1.0", @@ -6408,11 +6620,12 @@ "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==" }, "node_modules/@types/node": { - "version": "20.11.30", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.30.tgz", - "integrity": "sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==", + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "license": "MIT", "dependencies": { - "undici-types": "~5.26.4" + "undici-types": "~6.19.2" } }, "node_modules/@types/node-fetch": { @@ -6425,6 +6638,12 @@ "form-data": "^4.0.0" } }, + "node_modules/@types/node/node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "license": "MIT" + }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", @@ -6436,6 +6655,7 @@ "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.2.tgz", "integrity": "sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*" } @@ -6466,6 +6686,7 @@ "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.6.tgz", "integrity": "sha512-hHxJU6PAEUn0TP4S/ZOzuTUvJWuZ6eIKeNKb5RBpODvSl6hp1Wrw4s7ATY50rklRCScUDpHzVA/DQdSjJ3UoYQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*" } @@ -7734,7 +7955,8 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/bn.js": { "version": "5.2.1", @@ -7894,6 +8116,7 @@ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, + "license": "MIT", "dependencies": { "buffer-xor": "^1.0.3", "cipher-base": "^1.0.0", @@ -7961,6 +8184,7 @@ "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", "dev": true, + "license": "MIT", "dependencies": { "bs58": "^4.0.0", "create-hash": "^1.1.0", @@ -8009,7 +8233,8 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/byte-size": { "version": "8.1.1", @@ -8242,6 +8467,19 @@ "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "dev": true }, + "node_modules/cbor": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-8.1.0.tgz", + "integrity": "sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==", + "dev": true, + "license": "MIT", + "dependencies": { + "nofilter": "^3.1.0" + }, + "engines": { + "node": ">=12.19" + } + }, "node_modules/chai": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", @@ -8260,6 +8498,19 @@ "node": ">=4" } }, + "node_modules/chai-as-promised": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.2.tgz", + "integrity": "sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==", + "dev": true, + "license": "WTFPL", + "dependencies": { + "check-error": "^1.0.2" + }, + "peerDependencies": { + "chai": ">= 2.1.2 < 6" + } + }, "node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -10119,57 +10370,29 @@ "@scure/bip39": "1.1.1" } }, - "node_modules/ethereumjs-abi": { - "version": "0.6.8", - "resolved": "https://registry.npmjs.org/ethereumjs-abi/-/ethereumjs-abi-0.6.8.tgz", - "integrity": "sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA==", - "dev": true, - "dependencies": { - "bn.js": "^4.11.8", - "ethereumjs-util": "^6.0.0" - } - }, - "node_modules/ethereumjs-abi/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - }, "node_modules/ethereumjs-util": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", - "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", + "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", "dev": true, + "license": "MPL-2.0", "dependencies": { - "@types/bn.js": "^4.11.3", - "bn.js": "^4.11.0", + "@types/bn.js": "^5.1.0", + "bn.js": "^5.1.2", "create-hash": "^1.1.2", - "elliptic": "^6.5.2", "ethereum-cryptography": "^0.1.3", - "ethjs-util": "0.1.6", - "rlp": "^2.2.3" - } - }, - "node_modules/ethereumjs-util/node_modules/@types/bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", - "dev": true, - "dependencies": { - "@types/node": "*" + "rlp": "^2.2.4" + }, + "engines": { + "node": ">=10.0.0" } }, - "node_modules/ethereumjs-util/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - }, "node_modules/ethereumjs-util/node_modules/ethereum-cryptography": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/pbkdf2": "^3.0.0", "@types/secp256k1": "^4.0.1", @@ -10255,20 +10478,6 @@ "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", "dev": true }, - "node_modules/ethjs-util": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", - "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", - "dev": true, - "dependencies": { - "is-hex-prefixed": "1.0.0", - "strip-hex-prefix": "1.0.0" - }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } - }, "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", @@ -10288,6 +10497,7 @@ "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, + "license": "MIT", "dependencies": { "md5.js": "^1.3.4", "safe-buffer": "^5.1.1" @@ -15110,17 +15320,15 @@ } }, "node_modules/hardhat": { - "version": "2.22.19", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.22.19.tgz", - "integrity": "sha512-jptJR5o6MCgNbhd7eKa3mrteR+Ggq1exmE5RUL5ydQEVKcZm0sss5laa86yZ0ixIavIvF4zzS7TdGDuyopj0sQ==", + "version": "2.25.0", + "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.25.0.tgz", + "integrity": "sha512-yBiA74Yj3VnTRj7lhnn8GalvBdvsMOqTKRrRATSy/2v0VIR2hR0Jcnmfn4aQBLtGAnr3Q2c8CxL0g3LYegUp+g==", "dev": true, + "license": "MIT", "dependencies": { + "@ethereumjs/util": "^9.1.0", "@ethersproject/abi": "^5.1.2", - "@metamask/eth-sig-util": "^4.0.0", - "@nomicfoundation/edr": "^0.8.0", - "@nomicfoundation/ethereumjs-common": "4.0.4", - "@nomicfoundation/ethereumjs-tx": "5.0.4", - "@nomicfoundation/ethereumjs-util": "9.0.4", + "@nomicfoundation/edr": "^0.11.1", "@nomicfoundation/solidity-analyzer": "^0.1.0", "@sentry/node": "^5.18.1", "@types/bn.js": "^5.1.0", @@ -15135,7 +15343,6 @@ "enquirer": "^2.3.0", "env-paths": "^2.2.0", "ethereum-cryptography": "^1.0.3", - "ethereumjs-abi": "^0.6.8", "find-up": "^5.0.0", "fp-ts": "1.19.3", "fs-extra": "^7.0.1", @@ -15144,6 +15351,7 @@ "json-stream-stringify": "^3.1.4", "keccak": "^3.0.2", "lodash": "^4.17.11", + "micro-eth-signer": "^0.14.0", "mnemonist": "^0.38.0", "mocha": "^10.0.0", "p-map": "^4.0.0", @@ -15182,12 +15390,107 @@ "integrity": "sha512-02N4+So/fZrzJ88ci54GqwVA3Zrf0C9duuTyGt0CFRIh/CdNwbnTgkXkRfojOMLBQ+6t+lBIkgbsOtqMvNwikA==", "dev": true, "dependencies": { - "array-uniq": "1.0.3", - "eth-gas-reporter": "^0.2.25", - "sha1": "^1.1.1" + "array-uniq": "1.0.3", + "eth-gas-reporter": "^0.2.25", + "sha1": "^1.1.1" + }, + "peerDependencies": { + "hardhat": "^2.0.2" + } + }, + "node_modules/hardhat/node_modules/@ethereumjs/rlp": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-5.0.2.tgz", + "integrity": "sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA==", + "dev": true, + "license": "MPL-2.0", + "bin": { + "rlp": "bin/rlp.cjs" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/hardhat/node_modules/@ethereumjs/util": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-9.1.0.tgz", + "integrity": "sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog==", + "dev": true, + "license": "MPL-2.0", + "dependencies": { + "@ethereumjs/rlp": "^5.0.2", + "ethereum-cryptography": "^2.2.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/hardhat/node_modules/@ethereumjs/util/node_modules/ethereum-cryptography": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", + "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/curves": "1.4.2", + "@noble/hashes": "1.4.0", + "@scure/bip32": "1.4.0", + "@scure/bip39": "1.3.0" + } + }, + "node_modules/hardhat/node_modules/@noble/curves": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", + "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.4.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/hardhat/node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/hardhat/node_modules/@scure/bip32": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", + "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/curves": "~1.4.0", + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/hardhat/node_modules/@scure/bip39": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", + "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" }, - "peerDependencies": { - "hardhat": "^2.0.2" + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/hardhat/node_modules/chokidar": { @@ -15694,6 +15997,17 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/immer": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/immer/-/immer-10.0.2.tgz", + "integrity": "sha512-Rx3CqeqQ19sxUtYV9CU911Vhy8/721wRFnJv3REVGWUmoAcIwzifTsdmJte/MV+0/XpM35LZdQMBGkRIoLPwQA==", + "dev": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, "node_modules/immutable": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", @@ -19475,11 +19789,26 @@ "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", "dev": true }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", + "dev": true, + "license": "MIT" + }, "node_modules/lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", + "deprecated": "This package is deprecated. Use require('node:util').isDeepStrictEqual instead.", + "dev": true, + "license": "MIT" + }, "node_modules/lodash.ismatch": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", @@ -20004,11 +20333,75 @@ "node": ">= 8" } }, + "node_modules/micro-eth-signer": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/micro-eth-signer/-/micro-eth-signer-0.14.0.tgz", + "integrity": "sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/curves": "~1.8.1", + "@noble/hashes": "~1.7.1", + "micro-packed": "~0.7.2" + } + }, + "node_modules/micro-eth-signer/node_modules/@noble/curves": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz", + "integrity": "sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.7.2" + }, + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/micro-eth-signer/node_modules/@noble/hashes": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz", + "integrity": "sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/micro-ftch": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.3.1.tgz", "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==" }, + "node_modules/micro-packed": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/micro-packed/-/micro-packed-0.7.3.tgz", + "integrity": "sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@scure/base": "~1.2.5" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/micro-packed/node_modules/@scure/base": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz", + "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/micromatch": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", @@ -20505,6 +20898,36 @@ "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", "dev": true }, + "node_modules/ndjson": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ndjson/-/ndjson-2.0.0.tgz", + "integrity": "sha512-nGl7LRGrzugTtaFcJMhLbpzJM6XdivmbkdlaGcrk/LXg2KL/YBC6z1g70xh0/al+oFuVFP8N8kiWRucmeEH/qQ==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "json-stringify-safe": "^5.0.1", + "minimist": "^1.2.5", + "readable-stream": "^3.6.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "ndjson": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ndjson/node_modules/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "3" + } + }, "node_modules/near-abi": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/near-abi/-/near-abi-0.1.1.tgz", @@ -20884,6 +21307,16 @@ "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, + "node_modules/nofilter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", + "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.19" + } + }, "node_modules/nopt": { "version": "7.2.1", "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", @@ -21681,6 +22114,13 @@ "node": ">=8" } }, + "node_modules/ordinal": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ordinal/-/ordinal-1.0.3.tgz", + "integrity": "sha512-cMddMgb2QElm8G7vdaa02jhUNbTSrhsgAGUz1OokD83uJTwSUn+nKoNoKVVaRa08yF6sgfO7Maou1+bgLd9rdQ==", + "dev": true, + "license": "MIT" + }, "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -23126,6 +23566,7 @@ "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", "dev": true, + "license": "MPL-2.0", "dependencies": { "bn.js": "^5.2.0" }, @@ -23407,6 +23848,7 @@ "integrity": "sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==", "dev": true, "hasInstallScript": true, + "license": "MIT", "dependencies": { "elliptic": "^6.5.7", "node-addon-api": "^5.0.0", @@ -23420,7 +23862,8 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/secure-json-parse": { "version": "2.7.0", @@ -23493,7 +23936,8 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/setprototypeof": { "version": "1.2.0", @@ -24189,6 +24633,13 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, + "node_modules/solmate": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/solmate/-/solmate-6.8.0.tgz", + "integrity": "sha512-/oI8kgEvSxGG1mrFv3FmCEZd0F8Z9VzRmoYMIhzmmzt6mjtPwfdCm3oh8yOL7bMHJBSfXJuMpnMPrM0uyaKsKg==", + "dev": true, + "license": "AGPL-3.0-only" + }, "node_modules/sort-keys": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", @@ -25373,12 +25824,6 @@ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" }, - "node_modules/tweetnacl-util": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", - "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==", - "dev": true - }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -25636,7 +26081,8 @@ "node_modules/undici-types": { "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true }, "node_modules/unique-filename": { "version": "3.0.0", @@ -26503,18 +26949,236 @@ }, "devDependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "^5.6.2", - "@openzeppelin/contracts": "^5.2.0", + "@nomicfoundation/hardhat-chai-matchers": "^2.0.8", + "@nomicfoundation/hardhat-ethers": "^3.0.0", + "@nomicfoundation/hardhat-ignition": "^0.15.11", + "@nomicfoundation/hardhat-ignition-ethers": "^0.15.0", + "@nomicfoundation/hardhat-network-helpers": "^1.0.0", + "@nomicfoundation/hardhat-toolbox": "^5.0.0", + "@nomicfoundation/hardhat-verify": "^2.0.0", + "@nomicfoundation/ignition-core": "^0.15.11", + "@openzeppelin/contracts": "^5.3.0", + "@typechain/ethers-v6": "^0.5.0", + "@typechain/hardhat": "^9.0.0", + "@types/chai": "^4.2.0", + "@types/mocha": "^10.0.10", "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", + "dotenv": "^16.5.0", + "ethers": "^6.1.0", + "hardhat": "^2.23.0", + "hardhat-gas-reporter": "^1.0.8", "jest": "^29.7.0", + "solidity-coverage": "^0.8.1", + "solmate": "^6.8.0", "ts-jest": "^29.1.1", - "ts-node": "^10.9.1" + "ts-node": "^10.9.2", + "typechain": "^8.3.0", + "typescript": "~5.8.2" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@noble/curves": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz", + "integrity": "sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.3.2" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@noble/hashes": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.2.tgz", + "integrity": "sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@nomicfoundation/hardhat-chai-matchers": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-chai-matchers/-/hardhat-chai-matchers-2.0.9.tgz", + "integrity": "sha512-AbCoBuTKMlwlf1lesSmi/4VvJHNG9EP13EmkCJ+MJS1SBdtVtU4YrBbdYmnYPEvRFcAIMFB/cwcQGmuBYeCoVg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/chai-as-promised": "^7.1.3", + "chai-as-promised": "^7.1.1", + "deep-eql": "^4.0.1", + "ordinal": "^1.0.3" + }, + "peerDependencies": { + "@nomicfoundation/hardhat-ethers": "^3.0.9", + "chai": "^4.2.0", + "ethers": "^6.14.0", + "hardhat": "^2.9.4" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@nomicfoundation/hardhat-ethers": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ethers/-/hardhat-ethers-3.0.9.tgz", + "integrity": "sha512-xBJdRUiCwKpr0OYrOzPwAyNGtsVzoBx32HFPJVv6S+sFA9TmBIBDaqNlFPmBH58ZjgNnGhEr/4oBZvGr4q4TjQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "lodash.isequal": "^4.5.0" + }, + "peerDependencies": { + "ethers": "^6.14.0", + "hardhat": "^2.0.0" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@nomicfoundation/hardhat-ignition-ethers": { + "version": "0.15.13", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ignition-ethers/-/hardhat-ignition-ethers-0.15.13.tgz", + "integrity": "sha512-fJuImb0KBbsylTL5M1DdlChIO/GZoms2NUVJhU+AvfhlgB0jzRH+9jSXE9izYPktd8//tdVSC4kJloJPrR+BlA==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@nomicfoundation/hardhat-ethers": "^3.0.9", + "@nomicfoundation/hardhat-ignition": "^0.15.12", + "@nomicfoundation/ignition-core": "^0.15.12", + "ethers": "^6.14.0", + "hardhat": "^2.18.0" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@nomicfoundation/hardhat-toolbox": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-toolbox/-/hardhat-toolbox-5.0.0.tgz", + "integrity": "sha512-FnUtUC5PsakCbwiVNsqlXVIWG5JIb5CEZoSXbJUsEBun22Bivx2jhF1/q9iQbzuaGpJKFQyOhemPB2+XlEE6pQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@nomicfoundation/hardhat-chai-matchers": "^2.0.0", + "@nomicfoundation/hardhat-ethers": "^3.0.0", + "@nomicfoundation/hardhat-ignition-ethers": "^0.15.0", + "@nomicfoundation/hardhat-network-helpers": "^1.0.0", + "@nomicfoundation/hardhat-verify": "^2.0.0", + "@typechain/ethers-v6": "^0.5.0", + "@typechain/hardhat": "^9.0.0", + "@types/chai": "^4.2.0", + "@types/mocha": ">=9.1.0", + "@types/node": ">=18.0.0", + "chai": "^4.2.0", + "ethers": "^6.4.0", + "hardhat": "^2.11.0", + "hardhat-gas-reporter": "^1.0.8", + "solidity-coverage": "^0.8.1", + "ts-node": ">=8.0.0", + "typechain": "^8.3.0", + "typescript": ">=4.5.0" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@typechain/ethers-v6": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@typechain/ethers-v6/-/ethers-v6-0.5.1.tgz", + "integrity": "sha512-F+GklO8jBWlsaVV+9oHaPh5NJdd6rAKN4tklGfInX1Q7h0xPgVLP39Jl3eCulPB5qexI71ZFHwbljx4ZXNfouA==", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash": "^4.17.15", + "ts-essentials": "^7.0.1" + }, + "peerDependencies": { + "ethers": "6.x", + "typechain": "^8.3.2", + "typescript": ">=4.7.0" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@typechain/hardhat": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@typechain/hardhat/-/hardhat-9.1.0.tgz", + "integrity": "sha512-mtaUlzLlkqTlfPwB3FORdejqBskSnh+Jl8AIJGjXNAQfRQ4ofHADPl1+oU7Z3pAJzmZbUXII8MhOLQltcHgKnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fs-extra": "^9.1.0" + }, + "peerDependencies": { + "@typechain/ethers-v6": "^0.5.1", + "ethers": "^6.1.0", + "hardhat": "^2.9.9", + "typechain": "^8.3.2" } }, + "packages/axelar-local-dev-cosmos/node_modules/aes-js": { + "version": "4.0.0-beta.5", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-4.0.0-beta.5.tgz", + "integrity": "sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==", + "dev": true, + "license": "MIT" + }, "packages/axelar-local-dev-cosmos/node_modules/bech32": { "version": "2.0.0", "license": "MIT" }, + "packages/axelar-local-dev-cosmos/node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/ethers": { + "version": "6.14.4", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-6.14.4.tgz", + "integrity": "sha512-Jm/dzRs2Z9iBrT6e9TvGxyb5YVKAPLlpna7hjxH7KH/++DSh2T/JVmQUv7iHI5E55hDbp/gEVvstWYXVxXFzsA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/ethers-io/" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "license": "MIT", + "dependencies": { + "@adraffy/ens-normalize": "1.10.1", + "@noble/curves": "1.2.0", + "@noble/hashes": "1.3.2", + "@types/node": "22.7.5", + "aes-js": "4.0.0-beta.5", + "tslib": "2.7.0", + "ws": "8.17.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, "packages/axelar-local-dev-cosmos/node_modules/node-fetch": { "version": "2.7.0", "license": "MIT", @@ -26533,6 +27197,49 @@ } } }, + "packages/axelar-local-dev-cosmos/node_modules/tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "dev": true, + "license": "0BSD" + }, + "packages/axelar-local-dev-cosmos/node_modules/typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "packages/axelar-local-dev-multiversx": { "name": "@axelar-network/axelar-local-dev-multiversx", "version": "2.3.2", diff --git a/package.json b/package.json index 925e33fe..07a47a71 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,8 @@ "build:cosmos": "lerna exec --scope=@axelar-network/axelar-local-dev-cosmos npm run build", "build:multiversx": "lerna exec --scope=@axelar-network/axelar-local-dev-multiversx npm run build", "lint": "prettier --check .", - "lint:fix": "prettier --write ." + "lint:fix": "prettier --write .", + "test:proxy": "yarn --cwd packages/axelar-local-dev-cosmos test:proxy" }, "devDependencies": { "lerna": "^8.2.1", diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.js b/packages/axelar-local-dev-cosmos/hardhat.config.ts similarity index 73% rename from packages/axelar-local-dev-cosmos/hardhat.config.js rename to packages/axelar-local-dev-cosmos/hardhat.config.ts index 4a80b4d6..1ebe40e7 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.js +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -1,9 +1,10 @@ -require("hardhat-gas-reporter"); -require("solidity-coverage"); -/** - * @type import('hardhat/config').HardhatUserConfig - */ -module.exports = { +import "@nomicfoundation/hardhat-toolbox"; +import { config as envConfig } from "dotenv"; +import { HardhatUserConfig } from "hardhat/config"; + +envConfig(); + +const config: HardhatUserConfig = { solidity: { version: "0.8.20", settings: { @@ -34,3 +35,5 @@ module.exports = { timeout: 200000, }, }; + +export default config; diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index 7d3f33d1..1a8df678 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -22,7 +22,8 @@ "relay": "ts-node scripts/relay.ts", "relayToEth": "ts-node scripts/relayToEth.ts", "relayWithTokens": "ts-node scripts/relayWithTokens.ts", - "relayFromEth": "ts-node scripts/relayFromEth.ts" + "relayFromEth": "ts-node scripts/relayFromEth.ts", + "test:proxy": "hardhat test src/__tests__/AgoricProxy.spec.ts" }, "dependencies": { "@axelar-network/axelar-local-dev": "^2.3.2", @@ -45,12 +46,32 @@ "description": "", "devDependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "^5.6.2", - "@openzeppelin/contracts": "^5.2.0", "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "jest": "^29.7.0", "ts-jest": "^29.1.1", - "ts-node": "^10.9.1" + "@nomicfoundation/hardhat-chai-matchers": "^2.0.8", + "@nomicfoundation/hardhat-ethers": "^3.0.0", + "@nomicfoundation/hardhat-ignition": "^0.15.11", + "@nomicfoundation/hardhat-ignition-ethers": "^0.15.0", + "@nomicfoundation/hardhat-network-helpers": "^1.0.0", + "@nomicfoundation/hardhat-toolbox": "^5.0.0", + "@nomicfoundation/hardhat-verify": "^2.0.0", + "@nomicfoundation/ignition-core": "^0.15.11", + "@openzeppelin/contracts": "^5.3.0", + "@typechain/ethers-v6": "^0.5.0", + "@typechain/hardhat": "^9.0.0", + "@types/chai": "^4.2.0", + "@types/mocha": "^10.0.10", + "dotenv": "^16.5.0", + "ethers": "^6.1.0", + "hardhat": "^2.23.0", + "hardhat-gas-reporter": "^1.0.8", + "solidity-coverage": "^0.8.1", + "solmate": "^6.8.0", + "ts-node": "^10.9.2", + "typechain": "^8.3.0", + "typescript": "~5.8.2" }, "gitHead": "39d77bf2128077a615e6d3a5a4caf55e79f53b70" } diff --git a/packages/axelar-local-dev-cosmos/src/Command.ts b/packages/axelar-local-dev-cosmos/src/Command.ts index b24f60e2..aaf417ff 100644 --- a/packages/axelar-local-dev-cosmos/src/Command.ts +++ b/packages/axelar-local-dev-cosmos/src/Command.ts @@ -1,16 +1,15 @@ "use strict"; -import { ethers } from "ethers"; -const { defaultAbiCoder } = ethers.utils; import { CallContractArgs, RelayData } from "@axelar-network/axelar-local-dev"; +import { AbiCoder } from "ethers"; +import { CosmosClient } from "./clients"; import { - decodeVersionedPayload, getConfirmGatewayTxPayload, getRouteMessagePayload, getVoteRequestPayload, - incrementPollCounter, + incrementPollCounter } from "./utils"; -import { CosmosClient } from "./clients"; +const abiCoder = new AbiCoder(); //An internal class for handling axelar commands. export class Command { @@ -34,7 +33,7 @@ export class Command { this.encodedData = chain === "wasm" && name === "approve_contract_call" ? "" - : defaultAbiCoder.encode(dataSignature, data); + : abiCoder.encode(dataSignature, data); this.post = post; } diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts new file mode 100644 index 00000000..d35c30e3 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts @@ -0,0 +1,80 @@ +import { expect } from "chai"; +import { ethers } from "hardhat"; + +describe("AgoricProxy", function () { + let agoricProxy: any; + let gateway: any; + let gasService: any; + let owner: any; + let chainName = "Ethereum"; + + before(async function () { + // Deploy mock AxelarExecutable and IAxelarGasService if needed + // For now, use signers' addresses as mocks + [gateway, gasService, owner] = await ethers.getSigners(); + + const contractFactory = await ethers.getContractFactory("AgoricProxy"); + agoricProxy = await contractFactory.deploy( + await gateway.getAddress(), + await gasService.getAddress(), + chainName + ); + }); + + it("should deploy AgoricProxy with correct parameters", async function () { + expect(await agoricProxy.chainName()).to.equal(chainName); + expect(await agoricProxy.gasService()).to.equal( + await gasService.getAddress() + ); + expect(await agoricProxy.gateway()).to.equal(await gateway.getAddress()); + }); + + it("should create a new Wallet and emit WalletCreated event", async function () { + const ownerString = "agoric1rwwley550k9mmk6uq6mm6z4udrg8kyuyvfszjk"; + const tx = await agoricProxy.createSmartWallet(ownerString); + const receipt = await tx.wait(); + + const parsedLogs = receipt.logs + .map((log: any) => { + try { + return agoricProxy.interface.parseLog(log); + } catch { + return null; + } + }) + .filter((parsed: any) => parsed && parsed.name === "WalletCreated"); + const event = parsedLogs[0]; + expect(event).to.not.be.undefined; + expect(event.args.label).to.equal("WalletCreatedSuccess"); + expect(event.args.ownerAddress).to.equal(ownerString); + + // Check that the created wallet is a contract + const walletAddress = event.args.target; + expect(await owner.provider.getCode(walletAddress)).to.not.equal("0x"); + }); + + it("should allow the created Wallet to receive ETH", async function () { + const ownerString = "agoric1rwwley550k9mmk6uq6mm6z4udrg8kyuyvfszjk"; + const tx = await agoricProxy.createSmartWallet(ownerString); + const receipt = await tx.wait(); + const parsedLogs = receipt.logs + .map((log: any) => { + try { + return agoricProxy.interface.parseLog(log); + } catch { + return null; + } + }) + .filter((parsed: any) => parsed && parsed.name === "WalletCreated"); + const event = parsedLogs[0]; + const walletAddress = event.args.target; + + const sendTx = await owner.sendTransaction({ + to: walletAddress, + value: ethers.parseEther("1.0"), + }); + await sendTx.wait(); + const balance = await owner.provider.getBalance(walletAddress); + expect(balance).to.equal(ethers.parseEther("1.0")); + }); +}); diff --git a/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts b/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts index ff34db2d..abb5ee0d 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts @@ -1,8 +1,8 @@ import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; -import { ethers } from "ethers"; +import { toBigInt } from "ethers"; +import { convertCosmosAddress } from "../.."; import { CosmosChain } from "../../types"; import { CosmosClient } from "../cosmos/CosmosClient"; -import { convertCosmosAddress } from "../.."; /** * RelayerAccountManager manages the relayer account on wasm and axelar. @@ -69,8 +69,8 @@ export class RelayerAccountManager { const fund = await this.getRelayerFund(); if ( - ethers.BigNumber.from(fund.wasm.balance).lt(minAmount) || - ethers.BigNumber.from(fund.axelar.balance).lt(minAmount) + toBigInt(fund.wasm.balance) < toBigInt(minAmount) || + toBigInt(fund.axelar.balance) < toBigInt(minAmount) ) { await this.fundRelayer(minAmount); } diff --git a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts index a1c270af..1b86fdfc 100644 --- a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts @@ -1,14 +1,3 @@ -import { - ContractCallSubmitted, - ContractCallWithTokenSubmitted, - CosmosChainInfo, - IBCEvent, -} from "../types"; -import { - AxelarCosmosContractCallEvent, - AxelarCosmosContractCallWithTokenEvent, - AxelarListener, -} from "../listeners"; import { CallContractArgs, CallContractWithTokenArgs, @@ -22,10 +11,21 @@ import { Relayer, RelayerType, } from "@axelar-network/axelar-local-dev"; -import { Command as WasmCommand } from "../Command"; -import { ethers } from "ethers"; +import { id } from "ethers"; import { arrayify, defaultAbiCoder } from "ethers/lib/utils"; import { CosmosClient } from "../clients"; +import { Command as WasmCommand } from "../Command"; +import { + AxelarCosmosContractCallEvent, + AxelarCosmosContractCallWithTokenEvent, + AxelarListener, +} from "../listeners"; +import { + ContractCallSubmitted, + ContractCallWithTokenSubmitted, + CosmosChainInfo, + IBCEvent, +} from "../types"; import { IBCRelayerService } from "./IBCRelayerService"; export class AxelarRelayerService extends Relayer { @@ -229,7 +229,7 @@ export class AxelarRelayerService extends Relayer { } private getWasmLogID(event: IBCEvent) { - return ethers.utils.id( + return id( `${event.args.messageId}-${event.args.sourceChain}-${event.args.destinationChain}` ); } diff --git a/packages/axelar-local-dev-cosmos/tsconfig.json b/packages/axelar-local-dev-cosmos/tsconfig.json index 9a77ec49..4e37de3e 100644 --- a/packages/axelar-local-dev-cosmos/tsconfig.json +++ b/packages/axelar-local-dev-cosmos/tsconfig.json @@ -33,7 +33,8 @@ /* Completeness */ "skipDefaultLibCheck": true /* Skip type checking .d.ts files that are included with TypeScript. */, - "skipLibCheck": true /* Skip type checking all .d.ts files. */ + "skipLibCheck": true /* Skip type checking all .d.ts files. */, + "types": ["@nomicfoundation/hardhat-chai-matchers", "mocha"] }, "include": ["src"], "exclude": ["node_modules", "dist", "src/__tests__/"] From 32acbc2c3efea80af4d882041adf610a55457a79 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 1 Jul 2025 17:04:12 +0500 Subject: [PATCH 48/93] fix: migrate ethers v5 utils imports to v6 top-level imports --- packages/axelar-local-dev-cosmos/src/relay.ts | 6 +-- .../src/relayFromEth.ts | 11 ++--- .../src/services/AxelarRelayerService.ts | 8 +-- packages/axelar-local-dev-cosmos/src/utils.ts | 49 +++++++++---------- 4 files changed, 36 insertions(+), 38 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts index b6398a85..12b0210b 100644 --- a/packages/axelar-local-dev-cosmos/src/relay.ts +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -1,11 +1,11 @@ -import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; import { - evmRelayer, createNetwork, deployContract, + evmRelayer, relay, RelayerType, } from "@axelar-network/axelar-local-dev"; +import { AxelarRelayerService, defaultAxelarChainInfo } from "./index"; export const relayBasic = async () => { const axelarRelayer = await AxelarRelayerService.create( @@ -23,7 +23,7 @@ export const relayBasic = async () => { const factoryContract = await deployContract( ethereumNetwork.userWallets[0], - require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"), + require("../artifacts/src/__tests__/contracts/AgoricProxy.sol/AgoricProxy.json"), [ ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, diff --git a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts index 0e8b4843..89d4dd98 100644 --- a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts @@ -1,12 +1,12 @@ -import { defaultAxelarChainInfo, AxelarRelayerService } from "./index"; -import { encode } from "@metamask/abi-utils"; import { SigningStargateClient } from "@cosmjs/stargate"; +import { encode } from "@metamask/abi-utils"; import createKeccakHash from "keccak"; +import { AxelarRelayerService, defaultAxelarChainInfo } from "./index"; import { - evmRelayer, createNetwork, deployContract, + evmRelayer, relay, RelayerType, } from "@axelar-network/axelar-local-dev"; @@ -39,9 +39,8 @@ export const relayDataFromEth = async () => { defaultAxelarChainInfo ); - const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); - const WalletContract = require("../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json"); - const StakeContract = require("../artifacts/src/__tests__/contracts/StakingContract.sol/StakingContract.json"); + const Factory = require("../artifacts/src/__tests__/contracts/AgoricProxy.sol/AgoricProxy.json"); + const WalletContract = require("../artifacts/src/__tests__/contracts/AgoricProxy.sol/Wallet.json"); const ethereumNetwork = await createNetwork({ name: "Ethereum" }); const ethereumContract = await deployContract( diff --git a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts index 1b86fdfc..df65beb2 100644 --- a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts @@ -11,8 +11,7 @@ import { Relayer, RelayerType, } from "@axelar-network/axelar-local-dev"; -import { id } from "ethers"; -import { arrayify, defaultAbiCoder } from "ethers/lib/utils"; +import { AbiCoder, getBytes, id } from "ethers"; import { CosmosClient } from "../clients"; import { Command as WasmCommand } from "../Command"; import { @@ -242,8 +241,9 @@ export class AxelarRelayerService extends Relayer { } private encodeGatewayData(to: Network, commands: Command[]) { - return arrayify( - defaultAbiCoder.encode( + const abiCoder = new AbiCoder(); + return getBytes( + abiCoder.encode( ["uint256", "bytes32[]", "string[]", "bytes[]"], [ to.chainId, diff --git a/packages/axelar-local-dev-cosmos/src/utils.ts b/packages/axelar-local-dev-cosmos/src/utils.ts index 59504fb7..05e0d22f 100644 --- a/packages/axelar-local-dev-cosmos/src/utils.ts +++ b/packages/axelar-local-dev-cosmos/src/utils.ts @@ -1,26 +1,23 @@ -import { - hexZeroPad, - hexlify, - defaultAbiCoder, - arrayify, -} from "ethers/lib/utils"; -import crypto from "crypto"; -import fs, { promises as fsp } from "fs"; -import { bech32 } from "bech32"; -import { CosmosChain } from "./types"; -import { toAccAddress } from "@cosmjs/stargate/build/queryclient/utils"; -import { ConfirmGatewayTxRequest as EvmConfirmGatewayTxRequest } from "@axelar-network/axelarjs-types/axelar/evm/v1beta1/tx"; -import { VoteRequest } from "@axelar-network/axelarjs-types/axelar/vote/v1beta1/tx"; +import { CallContractArgs } from "@axelar-network/axelar-local-dev"; import { RouteMessageRequest } from "@axelar-network/axelarjs-types/axelar/axelarnet/v1beta1/tx"; +import { ConfirmGatewayTxRequest as EvmConfirmGatewayTxRequest } from "@axelar-network/axelarjs-types/axelar/evm/v1beta1/tx"; import { Event_Status, VoteEvents, } from "@axelar-network/axelarjs-types/axelar/evm/v1beta1/types"; +import { VoteRequest } from "@axelar-network/axelarjs-types/axelar/vote/v1beta1/tx"; +import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; import { DeliverTxResponse } from "@cosmjs/stargate"; -import { CallContractArgs } from "@axelar-network/axelar-local-dev"; +import { toAccAddress } from "@cosmjs/stargate/build/queryclient/utils"; +import { bech32 } from "bech32"; +import crypto from "crypto"; +import { AbiCoder, getBytes, toBeHex, zeroPadValue } from "ethers"; +import fs, { promises as fsp } from "fs"; import path from "path"; -import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; import { Path } from "./path"; +import { CosmosChain } from "./types"; + +const abiCoder = new AbiCoder(); export async function retry(fn: () => void, maxAttempts = 5, interval = 3000) { let attempts = 0; @@ -53,8 +50,8 @@ export function encodeVersionedPayload( version: number, payload: string ): Uint8Array { - const versionHex = hexZeroPad(hexlify(version), 4); - return arrayify(versionHex.concat(payload.substring(2))); + const versionHex = zeroPadValue(toBeHex(version), 4); + return getBytes(versionHex.concat(payload.substring(2))); } export async function exportOwnerAccountFromContainer( @@ -83,13 +80,15 @@ export function decodeVersionedPayload(versionedPayload: string) { "bytes", ]; // Decode the payload - const decoded = defaultAbiCoder.decode(types, encodedData); + const decoded = abiCoder.decode(types, encodedData); // Extract the method name and argument values const [methodName, argNames, argTypes, argValues] = decoded; - const [sourceChain, sourceAddress, executeMsgPayload] = - defaultAbiCoder.decode(["string", "string", "bytes"], argValues); + const [sourceChain, sourceAddress, executeMsgPayload] = abiCoder.decode( + ["string", "string", "bytes"], + argValues + ); return { methodName, @@ -136,7 +135,7 @@ export const getConfirmGatewayTxPayload = ( value: EvmConfirmGatewayTxRequest.fromPartial({ sender: toAccAddress(sender), chain, - txId: arrayify(txHash), + txId: getBytes(txHash), }), }, ]; @@ -169,14 +168,14 @@ export const getVoteRequestPayload = ( ) => { const event = { chain: callContractArgs.from, - txId: arrayify(`0x${confirmGatewayTx.transactionHash}`), + txId: getBytes(`0x${confirmGatewayTx.transactionHash}`), index: confirmGatewayTx.txIndex, status: Event_Status.STATUS_UNSPECIFIED, contractCall: { - sender: arrayify(callContractArgs.sourceAddress), + sender: getBytes(callContractArgs.sourceAddress), destinationChain: callContractArgs.to, contractAddress: callContractArgs.destinationContractAddress, - payloadHash: arrayify(callContractArgs.payloadHash), + payloadHash: getBytes(callContractArgs.payloadHash), }, }; @@ -213,7 +212,7 @@ export const getRouteMessagePayload = ( value: RouteMessageRequest.fromPartial({ sender: toAccAddress(sender), id: eventId, - payload: arrayify(callContractArgs.payload), + payload: getBytes(callContractArgs.payload), feegranter: toAccAddress( // Address of gov1 wallet in the axelar chain "axelar1sufx2ryp5ndxdhl3zftdnsjwrgqqgd3q6sxfjs" From 8b9e87521ab3e9694f418b2a665840448f32cab3 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 2 Jul 2025 09:58:36 +0500 Subject: [PATCH 49/93] test: create and use remote wallet for gmp --- package-lock.json | 563 +++++++++++------- .../axelar-local-dev-cosmos/hardhat.config.ts | 35 +- packages/axelar-local-dev-cosmos/package.json | 14 +- .../src/__tests__/AgoricProxy.spec.ts | 321 +++++++--- .../contracts/importer/axelar-contracts.sol | 19 + .../src/__tests__/lib/utils.ts | 162 +++++ 6 files changed, 805 insertions(+), 309 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/contracts/importer/axelar-contracts.sol create mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts diff --git a/package-lock.json b/package-lock.json index 88ebb337..19667716 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1251,7 +1251,7 @@ "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, + "devOptional": true, "dependencies": { "@jridgewell/trace-mapping": "0.3.9" }, @@ -1263,7 +1263,7 @@ "version": "0.3.9", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, + "devOptional": true, "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -3207,7 +3207,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "dev": true, + "devOptional": true, "engines": { "node": ">=6.0.0" } @@ -3225,7 +3225,7 @@ "version": "1.4.15", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true + "devOptional": true }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.25", @@ -3585,6 +3585,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/@metamask/abi-utils/-/abi-utils-3.0.0.tgz", "integrity": "sha512-a/l0DiSIr7+CBYVpHygUa3ztSlYLFCQMsklLna+t6qmNY9+eIO5TedNxhyIyvaJ+4cN7TLy0NQFbp9FV3X2ktg==", + "license": "(Apache-2.0 AND MIT)", "dependencies": { "@metamask/superstruct": "^3.1.0", "@metamask/utils": "^11.0.1" @@ -4241,6 +4242,19 @@ "eslint-scope": "5.1.1" } }, + "node_modules/@noble/ciphers": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.3.0.tgz", + "integrity": "sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/@noble/curves": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.3.0.tgz", @@ -4289,7 +4303,6 @@ "version": "1.7.1", "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz", "integrity": "sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==", - "dev": true, "funding": [ { "type": "individual", @@ -4336,7 +4349,6 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.11.2.tgz", "integrity": "sha512-JEFMTs5Tju+YiCsv6EO+657O/fvPaQ7bkUCkWqHFYFFbCKH1yh0PeRIaqj5h4z4O16ckxbVpAM676ZFTmvFUGQ==", - "dev": true, "license": "MIT", "dependencies": { "@nomicfoundation/edr-darwin-arm64": "0.11.2", @@ -4355,7 +4367,6 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.11.2.tgz", "integrity": "sha512-/QU0GHeoLFOJp28qK46kkTG849NN/5Qgq9ifKzhqBas1MCqwcdjrUI3raGkvE9SWJevljWd1HdW16fFpxUrzbA==", - "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4365,7 +4376,6 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.11.2.tgz", "integrity": "sha512-Dam+k00vyYNXCkM7JZGQBm0McNaL6ilbfY8BuIdHU2mpIVO5hpAFk8IQnMnG3FRuXuPJ0JoSTkn1R495T8AKqw==", - "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4375,7 +4385,6 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.11.2.tgz", "integrity": "sha512-6Z+hZ61c0v5EPVhCAc/rV36eN20GbPRfcmUeFJ3t+RjdY20EiUQzP85YU0q3AgCuwr410W27pazoBoL73cCPbg==", - "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4385,7 +4394,6 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.11.2.tgz", "integrity": "sha512-AqC4AI3pR4vSsEcFyW/6rI1q16wEjIRYIR25IJO/EdBmXdsuVZgxsf/kMUCWQhhTuy89RTgIGTbMAQA0+DfSvA==", - "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4395,7 +4403,6 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.11.2.tgz", "integrity": "sha512-vz1uiof1ZIi6RnXfHZiAXRgkloLciuYGD1rNDrqm1Pp7Nf0pbxw+e4TBQLoMYKzZn0MYS4u4Fa0AV2S7NjfptQ==", - "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4405,7 +4412,6 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.11.2.tgz", "integrity": "sha512-ArAbcrWwn+8Ze8JAaA9349N2E7hfs9PYvxDgfhujEH9iVC9XI6L+OhMATPsS3wkOST/+ykxELAF1KT4YjSxcrA==", - "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4415,7 +4421,6 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.11.2.tgz", "integrity": "sha512-GDXBhxy5wlmZYQrTXu9Oh9OPTsi4tCdmHy1z8O9XqdH9wsP674Frh6Fb43yjVoS2Ek1F9yX11nexIrFXSuNyJQ==", - "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4737,7 +4742,6 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.1.tgz", "integrity": "sha512-1LMtXj1puAxyFusBgUIy5pZk3073cNXYnXUpuNKFghHbIit/xZgbk0AokpUADbNm3gyD6bFWl3LRFh3dhVdREg==", - "dev": true, "engines": { "node": ">= 12" }, @@ -4761,7 +4765,6 @@ "cpu": [ "arm64" ], - "dev": true, "optional": true, "os": [ "darwin" @@ -4777,7 +4780,6 @@ "cpu": [ "x64" ], - "dev": true, "optional": true, "os": [ "darwin" @@ -4793,7 +4795,6 @@ "cpu": [ "x64" ], - "dev": true, "optional": true, "os": [ "freebsd" @@ -4809,7 +4810,6 @@ "cpu": [ "arm64" ], - "dev": true, "optional": true, "os": [ "linux" @@ -4825,7 +4825,6 @@ "cpu": [ "arm64" ], - "dev": true, "optional": true, "os": [ "linux" @@ -4841,7 +4840,6 @@ "cpu": [ "x64" ], - "dev": true, "optional": true, "os": [ "linux" @@ -4857,7 +4855,6 @@ "cpu": [ "x64" ], - "dev": true, "optional": true, "os": [ "linux" @@ -4873,7 +4870,6 @@ "cpu": [ "arm64" ], - "dev": true, "optional": true, "os": [ "win32" @@ -4889,7 +4885,6 @@ "cpu": [ "ia32" ], - "dev": true, "optional": true, "os": [ "win32" @@ -4905,7 +4900,6 @@ "cpu": [ "x64" ], - "dev": true, "optional": true, "os": [ "win32" @@ -4914,6 +4908,16 @@ "node": ">= 10" } }, + "node_modules/@nomiclabs/hardhat-ethers": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.0.6.tgz", + "integrity": "sha512-q2Cjp20IB48rEn2NPjR1qxsIQBvFVYW9rFRCFq+bC4RUrn1Ljz3g4wM8uSlgIBZYBi2JMXxmOzFqHraczxq4Ng==", + "license": "MIT", + "peerDependencies": { + "ethers": "^5.0.0", + "hardhat": "^2.0.0" + } + }, "node_modules/@npmcli/agent": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", @@ -5942,7 +5946,6 @@ "version": "1.1.5", "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz", "integrity": "sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==", - "dev": true, "funding": [ { "type": "individual", @@ -5959,7 +5962,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.1.tgz", "integrity": "sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==", - "dev": true, "funding": [ { "type": "individual", @@ -5975,7 +5977,6 @@ "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.30.0.tgz", "integrity": "sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==", - "dev": true, "dependencies": { "@sentry/hub": "5.30.0", "@sentry/minimal": "5.30.0", @@ -5991,7 +5992,6 @@ "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.30.0.tgz", "integrity": "sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==", - "dev": true, "dependencies": { "@sentry/types": "5.30.0", "@sentry/utils": "5.30.0", @@ -6005,7 +6005,6 @@ "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.30.0.tgz", "integrity": "sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==", - "dev": true, "dependencies": { "@sentry/hub": "5.30.0", "@sentry/types": "5.30.0", @@ -6019,7 +6018,6 @@ "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/node/-/node-5.30.0.tgz", "integrity": "sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==", - "dev": true, "dependencies": { "@sentry/core": "5.30.0", "@sentry/hub": "5.30.0", @@ -6039,7 +6037,6 @@ "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-5.30.0.tgz", "integrity": "sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==", - "dev": true, "dependencies": { "@sentry/hub": "5.30.0", "@sentry/minimal": "5.30.0", @@ -6055,7 +6052,6 @@ "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.30.0.tgz", "integrity": "sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw==", - "dev": true, "engines": { "node": ">=6" } @@ -6064,7 +6060,6 @@ "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.30.0.tgz", "integrity": "sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==", - "dev": true, "dependencies": { "@sentry/types": "5.30.0", "tslib": "^1.9.3" @@ -6235,25 +6230,25 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.10.tgz", "integrity": "sha512-PiaIWIoPvO6qm6t114ropMCagj6YAF24j9OkCA2mJDXFnlionEwhsBCJ8yek4aib575BI3OkART/90WsgHgLWw==", - "dev": true + "devOptional": true }, "node_modules/@tsconfig/node12": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true + "devOptional": true }, "node_modules/@tsconfig/node14": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true + "devOptional": true }, "node_modules/@tsconfig/node16": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true + "devOptional": true }, "node_modules/@tufjs/canonical-json": { "version": "2.0.0", @@ -6321,6 +6316,7 @@ "resolved": "https://registry.npmjs.org/@typechain/ethers-v5/-/ethers-v5-10.2.1.tgz", "integrity": "sha512-n3tQmCZjRE6IU4h6lqUGiQ1j866n5MTCBJreNEHHVWXa2u9GJTaeYyU1/k+1qLutkyw+sS6VAN+AbeiTqsxd/A==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "lodash": "^4.17.15", @@ -6411,7 +6407,6 @@ "version": "5.1.5", "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.5.tgz", "integrity": "sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==", - "dev": true, "dependencies": { "@types/node": "*" } @@ -6592,8 +6587,7 @@ "node_modules/@types/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==", - "dev": true + "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" }, "node_modules/@types/minimatch": { "version": "3.0.5", @@ -7136,7 +7130,7 @@ "version": "8.14.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", - "dev": true, + "devOptional": true, "bin": { "acorn": "bin/acorn" }, @@ -7157,7 +7151,7 @@ "version": "8.3.2", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", - "dev": true, + "devOptional": true, "engines": { "node": ">=0.4.0" } @@ -7172,7 +7166,6 @@ "version": "0.4.16", "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", - "dev": true, "engines": { "node": ">=0.3.0" } @@ -7186,7 +7179,6 @@ "version": "6.0.2", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, "dependencies": { "debug": "4" }, @@ -7198,7 +7190,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -7276,7 +7267,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dev": true, "dependencies": { "string-width": "^4.1.0" } @@ -7285,7 +7275,6 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, "engines": { "node": ">=6" } @@ -7294,7 +7283,6 @@ "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, "dependencies": { "type-fest": "^0.21.3" }, @@ -7344,7 +7332,6 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -7413,7 +7400,7 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true + "devOptional": true }, "node_modules/argparse": { "version": "2.0.1", @@ -7767,8 +7754,7 @@ "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "devOptional": true + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "node_modules/base-x": { "version": "3.0.9", @@ -7870,7 +7856,6 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, "engines": { "node": ">=8" }, @@ -7978,7 +7963,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "dev": true, "dependencies": { "ansi-align": "^3.0.0", "camelcase": "^6.2.0", @@ -8000,7 +7984,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -8015,7 +7998,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -8031,7 +8013,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -8042,14 +8023,12 @@ "node_modules/boxen/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/boxen/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, "engines": { "node": ">=8" } @@ -8058,7 +8037,6 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -8070,7 +8048,6 @@ "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, "engines": { "node": ">=10" }, @@ -8092,7 +8069,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, "dependencies": { "fill-range": "^7.1.1" }, @@ -8108,8 +8084,7 @@ "node_modules/browser-stdout": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==" }, "node_modules/browserify-aes": { "version": "1.2.0", @@ -8226,8 +8201,7 @@ "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, "node_modules/buffer-xor": { "version": "1.0.3", @@ -8249,7 +8223,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, "engines": { "node": ">= 0.8" } @@ -8401,7 +8374,6 @@ "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, "engines": { "node": ">=10" }, @@ -8570,7 +8542,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -8594,7 +8565,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -8614,8 +8584,7 @@ "node_modules/ci-info": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" }, "node_modules/cipher-base": { "version": "1.0.4", @@ -8636,7 +8605,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, "engines": { "node": ">=6" } @@ -8645,7 +8613,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true, "engines": { "node": ">=6" }, @@ -8749,7 +8716,6 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", @@ -8901,8 +8867,7 @@ "node_modules/command-exists": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true + "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==" }, "node_modules/command-line-args": { "version": "5.2.1", @@ -8956,7 +8921,6 @@ "version": "8.3.0", "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "dev": true, "engines": { "node": ">= 12" } @@ -9199,7 +9163,6 @@ "version": "0.4.2", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true, "engines": { "node": ">= 0.6" } @@ -9376,7 +9339,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true + "devOptional": true }, "node_modules/cross-spawn": { "version": "7.0.6", @@ -9689,7 +9652,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "devOptional": true, "engines": { "node": ">= 0.8" } @@ -9934,7 +9896,6 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", - "dev": true, "dependencies": { "ansi-colors": "^4.1.1", "strip-ansi": "^6.0.1" @@ -9947,7 +9908,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, "engines": { "node": ">=6" } @@ -10116,7 +10076,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", - "dev": true, "engines": { "node": ">=6" } @@ -10362,7 +10321,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz", "integrity": "sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==", - "dev": true, "dependencies": { "@noble/hashes": "1.2.0", "@noble/secp256k1": "1.7.1", @@ -10425,6 +10383,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/abi": "5.8.0", "@ethersproject/abstract-provider": "5.8.0", @@ -10720,7 +10679,6 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -10744,7 +10702,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -10760,7 +10717,6 @@ "version": "5.0.2", "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true, "bin": { "flat": "cli.js" } @@ -10848,8 +10804,7 @@ "node_modules/fp-ts": { "version": "1.19.3", "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-1.19.3.tgz", - "integrity": "sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==", - "dev": true + "integrity": "sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==" }, "node_modules/front-matter": { "version": "4.0.2", @@ -10946,14 +10901,12 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "devOptional": true + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, "hasInstallScript": true, "optional": true, "os": [ @@ -14873,7 +14826,6 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, "engines": { "node": "6.* || 8.* || >= 10.*" } @@ -15323,7 +15275,6 @@ "version": "2.25.0", "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.25.0.tgz", "integrity": "sha512-yBiA74Yj3VnTRj7lhnn8GalvBdvsMOqTKRrRATSy/2v0VIR2hR0Jcnmfn4aQBLtGAnr3Q2c8CxL0g3LYegUp+g==", - "dev": true, "license": "MIT", "dependencies": { "@ethereumjs/util": "^9.1.0", @@ -15402,7 +15353,6 @@ "version": "5.0.2", "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-5.0.2.tgz", "integrity": "sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA==", - "dev": true, "license": "MPL-2.0", "bin": { "rlp": "bin/rlp.cjs" @@ -15415,7 +15365,6 @@ "version": "9.1.0", "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-9.1.0.tgz", "integrity": "sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog==", - "dev": true, "license": "MPL-2.0", "dependencies": { "@ethereumjs/rlp": "^5.0.2", @@ -15429,7 +15378,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", - "dev": true, "license": "MIT", "dependencies": { "@noble/curves": "1.4.2", @@ -15442,7 +15390,6 @@ "version": "1.4.2", "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", - "dev": true, "license": "MIT", "dependencies": { "@noble/hashes": "1.4.0" @@ -15455,7 +15402,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "dev": true, "license": "MIT", "engines": { "node": ">= 16" @@ -15468,7 +15414,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", - "dev": true, "license": "MIT", "dependencies": { "@noble/curves": "~1.4.0", @@ -15483,7 +15428,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", - "dev": true, "license": "MIT", "dependencies": { "@noble/hashes": "~1.4.0", @@ -15497,7 +15441,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", - "dev": true, "dependencies": { "readdirp": "^4.0.1" }, @@ -15512,7 +15455,6 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "dev": true, "dependencies": { "graceful-fs": "^4.1.2", "jsonfile": "^4.0.0", @@ -15526,7 +15468,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, "optionalDependencies": { "graceful-fs": "^4.1.6" } @@ -15535,7 +15476,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", - "dev": true, "engines": { "node": ">= 14.18.0" }, @@ -15548,7 +15488,6 @@ "version": "1.17.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dev": true, "dependencies": { "path-parse": "^1.0.6" }, @@ -15560,7 +15499,6 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, "engines": { "node": ">= 4.0.0" } @@ -15693,7 +15631,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, "bin": { "he": "bin/he" } @@ -15903,7 +15840,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, "dependencies": { "agent-base": "6", "debug": "4" @@ -15925,7 +15861,6 @@ "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -16011,8 +15946,7 @@ "node_modules/immutable": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", - "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", - "dev": true + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -16062,7 +15996,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, "engines": { "node": ">=8" } @@ -16071,7 +16004,6 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "devOptional": true, "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -16356,7 +16288,6 @@ "version": "1.10.4", "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-1.10.4.tgz", "integrity": "sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==", - "dev": true, "dependencies": { "fp-ts": "^1.0.0" } @@ -16412,7 +16343,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -16536,7 +16466,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -16562,7 +16491,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -16611,7 +16539,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, "engines": { "node": ">=0.12.0" } @@ -16773,7 +16700,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, "engines": { "node": ">=10" }, @@ -16843,6 +16769,22 @@ "ws": "*" } }, + "node_modules/isows": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/isows/-/isows-1.0.7.tgz", + "integrity": "sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/wevm" + } + ], + "license": "MIT", + "peerDependencies": { + "ws": "*" + } + }, "node_modules/istanbul-lib-coverage": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", @@ -18697,7 +18639,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, "dependencies": { "argparse": "^2.0.1" }, @@ -18776,7 +18717,6 @@ "version": "3.1.6", "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz", "integrity": "sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==", - "dev": true, "engines": { "node": ">=7.10.1" } @@ -19767,7 +19707,6 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, "dependencies": { "p-locate": "^5.0.0" }, @@ -19836,7 +19775,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, "dependencies": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" @@ -19852,7 +19790,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -19867,7 +19804,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -19883,7 +19819,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -19894,14 +19829,12 @@ "node_modules/log-symbols/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/log-symbols/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, "engines": { "node": ">=8" } @@ -19910,7 +19843,6 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -19960,8 +19892,7 @@ "node_modules/lru_map": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", - "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==", - "dev": true + "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==" }, "node_modules/lru-cache": { "version": "5.1.1", @@ -20024,7 +19955,7 @@ "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true + "devOptional": true }, "node_modules/make-fetch-happen": { "version": "13.0.1", @@ -20090,7 +20021,6 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", - "dev": true, "engines": { "node": ">= 0.10.0" } @@ -20337,7 +20267,6 @@ "version": "0.14.0", "resolved": "https://registry.npmjs.org/micro-eth-signer/-/micro-eth-signer-0.14.0.tgz", "integrity": "sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==", - "dev": true, "license": "MIT", "dependencies": { "@noble/curves": "~1.8.1", @@ -20349,7 +20278,6 @@ "version": "1.8.2", "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz", "integrity": "sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==", - "dev": true, "license": "MIT", "dependencies": { "@noble/hashes": "1.7.2" @@ -20365,7 +20293,6 @@ "version": "1.7.2", "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz", "integrity": "sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==", - "dev": true, "license": "MIT", "engines": { "node": "^14.21.3 || >=16" @@ -20383,7 +20310,6 @@ "version": "0.7.3", "resolved": "https://registry.npmjs.org/micro-packed/-/micro-packed-0.7.3.tgz", "integrity": "sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg==", - "dev": true, "license": "MIT", "dependencies": { "@scure/base": "~1.2.5" @@ -20396,7 +20322,6 @@ "version": "1.2.6", "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz", "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==", - "dev": true, "license": "MIT", "funding": { "url": "https://paulmillr.com/funding/" @@ -20681,7 +20606,6 @@ "version": "0.38.5", "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", "integrity": "sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==", - "dev": true, "dependencies": { "obliterator": "^2.0.0" } @@ -20690,7 +20614,6 @@ "version": "10.8.2", "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", - "dev": true, "dependencies": { "ansi-colors": "^4.1.3", "browser-stdout": "^1.3.1", @@ -20725,7 +20648,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, "dependencies": { "balanced-match": "^1.0.0" } @@ -20734,7 +20656,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, "engines": { "node": ">=10" }, @@ -20746,7 +20667,6 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -20765,7 +20685,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, "engines": { "node": ">=8" } @@ -20774,7 +20693,6 @@ "version": "5.1.6", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -20786,7 +20704,6 @@ "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -20801,7 +20718,6 @@ "version": "16.2.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, "dependencies": { "cliui": "^7.0.2", "escalade": "^3.1.1", @@ -20819,7 +20735,6 @@ "version": "20.2.9", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, "engines": { "node": ">=10" } @@ -21362,7 +21277,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -21952,14 +21866,12 @@ "node_modules/obliterator": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz", - "integrity": "sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==", - "dev": true + "integrity": "sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==" }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "devOptional": true, "dependencies": { "wrappy": "1" } @@ -22125,7 +22037,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -22152,7 +22063,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, "dependencies": { "yocto-queue": "^0.1.0" }, @@ -22167,7 +22077,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, "dependencies": { "p-limit": "^3.0.2" }, @@ -22182,7 +22091,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, "dependencies": { "aggregate-error": "^3.0.0" }, @@ -22401,7 +22309,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, "engines": { "node": ">=8" } @@ -22427,8 +22334,7 @@ "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { "version": "1.11.1", @@ -22491,14 +22397,12 @@ "node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "dev": true + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, "engines": { "node": ">=8.6" }, @@ -23018,7 +22922,6 @@ "version": "2.5.2", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", - "dev": true, "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", @@ -23033,7 +22936,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, "dependencies": { "depd": "2.0.0", "inherits": "2.0.4", @@ -23049,7 +22951,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, "engines": { "node": ">= 0.8" } @@ -23299,7 +23200,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -23418,7 +23318,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -23672,8 +23571,7 @@ "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "devOptional": true + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sc-istanbul": { "version": "0.4.6", @@ -23874,7 +23772,6 @@ "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, "bin": { "semver": "bin/semver.js" } @@ -23889,7 +23786,6 @@ "version": "6.0.2", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", - "dev": true, "dependencies": { "randombytes": "^2.1.0" } @@ -23942,8 +23838,7 @@ "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "devOptional": true + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, "node_modules/sha.js": { "version": "2.4.11", @@ -24239,7 +24134,6 @@ "version": "0.8.26", "resolved": "https://registry.npmjs.org/solc/-/solc-0.8.26.tgz", "integrity": "sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==", - "dev": true, "dependencies": { "command-exists": "^1.2.8", "commander": "^8.1.0", @@ -24260,7 +24154,6 @@ "version": "5.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, "bin": { "semver": "bin/semver" } @@ -24269,7 +24162,6 @@ "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, "dependencies": { "os-tmpdir": "~1.0.2" }, @@ -24656,7 +24548,6 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -24665,7 +24556,6 @@ "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -24775,7 +24665,6 @@ "version": "0.1.10", "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", - "dev": true, "dependencies": { "type-fest": "^0.7.1" }, @@ -24787,7 +24676,6 @@ "version": "0.7.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", - "dev": true, "engines": { "node": ">=8" } @@ -25018,7 +24906,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, "engines": { "node": ">=8" }, @@ -25449,7 +25336,6 @@ "version": "0.2.12", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", - "dev": true, "dependencies": { "fdir": "^6.4.3", "picomatch": "^4.0.2" @@ -25465,7 +25351,6 @@ "version": "6.4.3", "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", - "dev": true, "peerDependencies": { "picomatch": "^3 || ^4" }, @@ -25479,7 +25364,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, "engines": { "node": ">=12" }, @@ -25505,7 +25389,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, "dependencies": { "is-number": "^7.0.0" }, @@ -25517,7 +25400,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "devOptional": true, "engines": { "node": ">=0.6" } @@ -25730,7 +25612,7 @@ "version": "10.9.2", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "dev": true, + "devOptional": true, "dependencies": { "@cspotcode/source-map-support": "^0.8.0", "@tsconfig/node10": "^1.0.7", @@ -25773,7 +25655,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true, + "devOptional": true, "engines": { "node": ">=0.3.1" } @@ -25781,14 +25663,12 @@ "node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/tsort": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/tsort/-/tsort-0.0.1.tgz", - "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==", - "dev": true + "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==" }, "node_modules/tsutils": { "version": "3.21.0", @@ -25848,7 +25728,6 @@ "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, "engines": { "node": ">=10" }, @@ -26015,7 +25894,7 @@ "version": "4.9.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "dev": true, + "devOptional": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -26126,7 +26005,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, "engines": { "node": ">= 0.8" } @@ -26202,7 +26080,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true + "devOptional": true }, "node_modules/v8-to-istanbul": { "version": "9.2.0", @@ -26413,7 +26291,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, "dependencies": { "string-width": "^4.0.0" }, @@ -26493,14 +26370,12 @@ "node_modules/workerpool": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", - "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", - "dev": true + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==" }, "node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -26568,7 +26443,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -26583,7 +26457,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -26594,14 +26467,12 @@ "node_modules/wrap-ansi/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "devOptional": true + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/write-file-atomic": { "version": "4.0.2", @@ -26740,7 +26611,6 @@ "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, "engines": { "node": ">=10" } @@ -26793,7 +26663,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, "dependencies": { "camelcase": "^6.0.0", "decamelize": "^4.0.0", @@ -26808,7 +26677,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true, "engines": { "node": ">=10" }, @@ -26820,7 +26688,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true, "engines": { "node": ">=8" } @@ -26852,7 +26719,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true, + "devOptional": true, "engines": { "node": ">=6" } @@ -26861,7 +26728,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, "engines": { "node": ">=10" }, @@ -26938,6 +26804,7 @@ "@cosmjs/cosmwasm-stargate": "^0.31.1", "@cosmjs/stargate": "^0.31.1", "@metamask/abi-utils": "^3.0.0", + "@nomiclabs/hardhat-ethers": "^2.0.6", "@types/sinon": "^17.0.2", "bech32": "^2.0.0", "docker-compose": "^0.24.3", @@ -26965,7 +26832,7 @@ "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "dotenv": "^16.5.0", - "ethers": "^6.1.0", + "ethers": "5", "hardhat": "^2.23.0", "hardhat-gas-reporter": "^1.0.8", "jest": "^29.7.0", @@ -26974,7 +26841,8 @@ "ts-jest": "^29.1.1", "ts-node": "^10.9.2", "typechain": "^8.3.0", - "typescript": "~5.8.2" + "typescript": "~5.8.2", + "viem": "^2.31.6" } }, "packages/axelar-local-dev-cosmos/node_modules/@noble/curves": { @@ -27078,6 +26946,87 @@ "typescript": ">=4.5.0" } }, + "packages/axelar-local-dev-cosmos/node_modules/@scure/base": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz", + "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@scure/bip32": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.7.0.tgz", + "integrity": "sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/curves": "~1.9.0", + "@noble/hashes": "~1.8.0", + "@scure/base": "~1.2.5" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@scure/bip32/node_modules/@noble/curves": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.2.tgz", + "integrity": "sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.8.0" + }, + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@scure/bip32/node_modules/@noble/hashes": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", + "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@scure/bip39": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.6.0.tgz", + "integrity": "sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "~1.8.0", + "@scure/base": "~1.2.5" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/@scure/bip39/node_modules/@noble/hashes": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", + "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "packages/axelar-local-dev-cosmos/node_modules/@typechain/ethers-v6": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/@typechain/ethers-v6/-/ethers-v6-0.5.1.tgz", @@ -27110,6 +27059,28 @@ "typechain": "^8.3.2" } }, + "packages/axelar-local-dev-cosmos/node_modules/abitype": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/abitype/-/abitype-1.0.8.tgz", + "integrity": "sha512-ZeiI6h3GnW06uYDLx0etQtX/p8E24UaHHBj57RSjK7YBFe7iuVn07EDpOeP451D06sF27VOz9JJPlIKJmXgkEg==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/wevm" + }, + "peerDependencies": { + "typescript": ">=5.0.4", + "zod": "^3 >=3.22.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + }, + "zod": { + "optional": true + } + } + }, "packages/axelar-local-dev-cosmos/node_modules/aes-js": { "version": "4.0.0-beta.5", "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-4.0.0-beta.5.tgz", @@ -27163,6 +27134,13 @@ "node": ">=14.0.0" } }, + "packages/axelar-local-dev-cosmos/node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", + "dev": true, + "license": "MIT" + }, "packages/axelar-local-dev-cosmos/node_modules/fs-extra": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", @@ -27197,6 +27175,73 @@ } } }, + "packages/axelar-local-dev-cosmos/node_modules/ox": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/ox/-/ox-0.8.1.tgz", + "integrity": "sha512-e+z5epnzV+Zuz91YYujecW8cF01mzmrUtWotJ0oEPym/G82uccs7q0WDHTYL3eiONbTUEvcZrptAKLgTBD3u2A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/wevm" + } + ], + "license": "MIT", + "dependencies": { + "@adraffy/ens-normalize": "^1.11.0", + "@noble/ciphers": "^1.3.0", + "@noble/curves": "^1.9.1", + "@noble/hashes": "^1.8.0", + "@scure/bip32": "^1.7.0", + "@scure/bip39": "^1.6.0", + "abitype": "^1.0.8", + "eventemitter3": "5.0.1" + }, + "peerDependencies": { + "typescript": ">=5.4.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "packages/axelar-local-dev-cosmos/node_modules/ox/node_modules/@adraffy/ens-normalize": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.11.0.tgz", + "integrity": "sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg==", + "dev": true, + "license": "MIT" + }, + "packages/axelar-local-dev-cosmos/node_modules/ox/node_modules/@noble/curves": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.2.tgz", + "integrity": "sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.8.0" + }, + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/ox/node_modules/@noble/hashes": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", + "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "packages/axelar-local-dev-cosmos/node_modules/tslib": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", @@ -27218,6 +27263,88 @@ "node": ">=14.17" } }, + "packages/axelar-local-dev-cosmos/node_modules/viem": { + "version": "2.31.6", + "resolved": "https://registry.npmjs.org/viem/-/viem-2.31.6.tgz", + "integrity": "sha512-2PPbXL/8bHQxUzaLFDk4R6WHifTcXxAqMC8/j6RBgXl/OexQ1HU8r9OukwfDTqrFoHtWWiYz5fktHATy7+U9nQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/wevm" + } + ], + "license": "MIT", + "dependencies": { + "@noble/curves": "1.9.2", + "@noble/hashes": "1.8.0", + "@scure/bip32": "1.7.0", + "@scure/bip39": "1.6.0", + "abitype": "1.0.8", + "isows": "1.0.7", + "ox": "0.8.1", + "ws": "8.18.2" + }, + "peerDependencies": { + "typescript": ">=5.0.4" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "packages/axelar-local-dev-cosmos/node_modules/viem/node_modules/@noble/curves": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.2.tgz", + "integrity": "sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.8.0" + }, + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/viem/node_modules/@noble/hashes": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", + "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "packages/axelar-local-dev-cosmos/node_modules/viem/node_modules/ws": { + "version": "8.18.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.2.tgz", + "integrity": "sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "packages/axelar-local-dev-cosmos/node_modules/ws": { "version": "8.17.1", "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index 1ebe40e7..8cbe03c5 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -6,27 +6,26 @@ envConfig(); const config: HardhatUserConfig = { solidity: { - version: "0.8.20", - settings: { - evmVersion: process.env.EVM_VERSION || "london", - optimizer: { - enabled: true, - runs: 1000, - details: { - peephole: true, - inliner: true, - jumpdestRemover: true, - orderLiterals: true, - deduplicate: true, - cse: true, - constantOptimizer: true, - yul: true, - yulDetails: { - stackAllocation: true, + compilers: [ + { + version: "0.8.20", + settings: { + optimizer: { + enabled: true, + runs: 200, }, }, }, - }, + { + version: "0.8.9", + settings: { + optimizer: { + enabled: true, + runs: 200, + }, + }, + }, + ], }, paths: { sources: "./src/__tests__/contracts", diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index 1a8df678..484e1542 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -32,6 +32,7 @@ "@cosmjs/cosmwasm-stargate": "^0.31.1", "@cosmjs/stargate": "^0.31.1", "@metamask/abi-utils": "^3.0.0", + "@nomiclabs/hardhat-ethers": "^2.0.6", "@types/sinon": "^17.0.2", "bech32": "^2.0.0", "docker-compose": "^0.24.3", @@ -46,10 +47,6 @@ "description": "", "devDependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "^5.6.2", - "@types/node-fetch": "^2.6.5", - "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", - "jest": "^29.7.0", - "ts-jest": "^29.1.1", "@nomicfoundation/hardhat-chai-matchers": "^2.0.8", "@nomicfoundation/hardhat-ethers": "^3.0.0", "@nomicfoundation/hardhat-ignition": "^0.15.11", @@ -63,15 +60,20 @@ "@typechain/hardhat": "^9.0.0", "@types/chai": "^4.2.0", "@types/mocha": "^10.0.10", + "@types/node-fetch": "^2.6.5", + "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "dotenv": "^16.5.0", - "ethers": "^6.1.0", + "ethers": "5", "hardhat": "^2.23.0", "hardhat-gas-reporter": "^1.0.8", + "jest": "^29.7.0", "solidity-coverage": "^0.8.1", "solmate": "^6.8.0", + "ts-jest": "^29.1.1", "ts-node": "^10.9.2", "typechain": "^8.3.0", - "typescript": "~5.8.2" + "typescript": "~5.8.2", + "viem": "^2.31.6" }, "gitHead": "39d77bf2128077a615e6d3a5a4caf55e79f53b70" } diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts index d35c30e3..98dbfaff 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts @@ -1,80 +1,267 @@ import { expect } from "chai"; import { ethers } from "hardhat"; +import { keccak256, stringToHex, toBytes } from "viem"; +import { + approveMessage, + approveMessageWithToken, + constructContractCall, + deployToken, + encodeMulticallPayload, + getPayloadHash, +} from "./lib/utils"; -describe("AgoricProxy", function () { - let agoricProxy: any; - let gateway: any; - let gasService: any; - let owner: any; - let chainName = "Ethereum"; - - before(async function () { - // Deploy mock AxelarExecutable and IAxelarGasService if needed - // For now, use signers' addresses as mocks - [gateway, gasService, owner] = await ethers.getSigners(); - - const contractFactory = await ethers.getContractFactory("AgoricProxy"); - agoricProxy = await contractFactory.deploy( - await gateway.getAddress(), - await gasService.getAddress(), - chainName +const createRemoteEVMAccount = async ( + axelarGatewayMock, + ownerAddress, + sourceAddress +) => { + const WalletFactory = await ethers.getContractFactory("Wallet"); + const wallet = await WalletFactory.deploy( + axelarGatewayMock.target, + ownerAddress, + sourceAddress + ); + await wallet.waitForDeployment(); + return wallet; +}; + +describe("AgoricProxy", () => { + let owner, addr1, agoricProxy, axelarGatewayMock; + + const abiCoder = new ethers.AbiCoder(); + const expectedWalletAddress = "0x856e4424f806D16E8CBC702B3c0F2ede5468eae5"; + + const sourceContract = "agoric"; + const sourceAddress = "0x1234567890123456789012345678901234567890"; + + let commandIdCounter = 1; + const getCommandId = () => { + const commandId = keccak256(stringToHex(String(commandIdCounter))); + commandIdCounter++; + return commandId; + }; + + before(async () => { + [owner, addr1] = await ethers.getSigners(); + + const GasServiceFactory = await ethers.getContractFactory( + "AxelarGasService" + ); + const axelarGasServiceMock = await GasServiceFactory.deploy(owner.address); + + const TokenDeployerFactory = await ethers.getContractFactory( + "TokenDeployer" + ); + const tokenDeployer = await TokenDeployerFactory.deploy(); + + const AuthFactory = await ethers.getContractFactory("AxelarAuthWeighted"); + const authContract = await AuthFactory.deploy([ + abiCoder.encode( + ["address[]", "uint256[]", "uint256"], + [[owner.address], [1], 1] + ), + ]); + + const AxelarGatewayFactory = await ethers.getContractFactory( + "AxelarGateway" + ); + axelarGatewayMock = await AxelarGatewayFactory.deploy( + authContract.target, + tokenDeployer.target ); - }); - it("should deploy AgoricProxy with correct parameters", async function () { - expect(await agoricProxy.chainName()).to.equal(chainName); - expect(await agoricProxy.gasService()).to.equal( - await gasService.getAddress() + const Contract = await ethers.getContractFactory("AgoricProxy"); + agoricProxy = await Contract.deploy( + axelarGatewayMock.target, + axelarGasServiceMock.target, + "Ethereum" ); - expect(await agoricProxy.gateway()).to.equal(await gateway.getAddress()); + await agoricProxy.waitForDeployment(); + + await deployToken({ + commandId: getCommandId(), + name: "Universal Stablecoin", + symbol: "USDC", + decimals: 18, + cap: 1000000, + tokenAddress: "0x0000000000000000000000000000000000000000", + mintLimit: 1000000, + owner, + AxelarGateway: axelarGatewayMock, + abiCoder, + }); + }); + + it("fund AgoricProxy with ETH to pay for gas", async () => { + const provider = ethers.provider; + + const agoricProxyAddress = await agoricProxy.getAddress(); + const balanceBefore = await provider.getBalance(agoricProxyAddress); + expect(balanceBefore).to.equal(ethers.parseEther("0")); + + const tx = await owner.sendTransaction({ + to: agoricProxyAddress, + value: ethers.parseEther("5.0"), + }); + await tx.wait(); + + const balanceAfter = await provider.getBalance(agoricProxyAddress); + expect(balanceAfter).to.equal(ethers.parseEther("5.0")); }); - it("should create a new Wallet and emit WalletCreated event", async function () { - const ownerString = "agoric1rwwley550k9mmk6uq6mm6z4udrg8kyuyvfszjk"; - const tx = await agoricProxy.createSmartWallet(ownerString); - const receipt = await tx.wait(); - - const parsedLogs = receipt.logs - .map((log: any) => { - try { - return agoricProxy.interface.parseLog(log); - } catch { - return null; - } - }) - .filter((parsed: any) => parsed && parsed.name === "WalletCreated"); - const event = parsedLogs[0]; - expect(event).to.not.be.undefined; - expect(event.args.label).to.equal("WalletCreatedSuccess"); - expect(event.args.ownerAddress).to.equal(ownerString); - - // Check that the created wallet is a contract - const walletAddress = event.args.target; - expect(await owner.provider.getCode(walletAddress)).to.not.equal("0x"); + it("should create a new remote wallet using AgoricProxy", async () => { + const commandId = getCommandId(); + + const abiCoder = ethers.AbiCoder.defaultAbiCoder(); + const payload = abiCoder.encode(["bytes"], ["0x"]); + const payloadHash = keccak256(toBytes(payload)); + + await approveMessage({ + commandId, + from: sourceContract, + sourceAddress, + targetAddress: agoricProxy.target, + payload: payloadHash, + owner, + AxelarGateway: axelarGatewayMock, + abiCoder, + }); + + const tx = await agoricProxy.execute( + commandId, + sourceContract, + sourceAddress, + payload + ); + + const encodedAddress = abiCoder.encode( + ["address"], + [expectedWalletAddress] + ); + + const agoricResponseEncoded = abiCoder.encode( + ["tuple(bool processed, tuple(bool success, bytes data)[] results)"], + [ + { + processed: false, + results: [ + { + success: true, + data: encodedAddress, + }, + ], + }, + ] + ); + + const expectedPayload = ethers.solidityPacked( + ["bytes4", "bytes"], + ["0x00000000", agoricResponseEncoded] + ); + + const expectedPayloadHash = keccak256(toBytes(expectedPayload)); + + await expect(tx) + .to.emit(agoricProxy, "WalletCreated") + .withArgs("WalletCreatedSuccess", expectedWalletAddress, sourceAddress); + + await expect(tx) + .to.emit(axelarGatewayMock, "ContractCall") + .withArgs( + agoricProxy.target, + sourceContract, + sourceAddress, + expectedPayloadHash, + expectedPayload + ); }); - it("should allow the created Wallet to receive ETH", async function () { - const ownerString = "agoric1rwwley550k9mmk6uq6mm6z4udrg8kyuyvfszjk"; - const tx = await agoricProxy.createSmartWallet(ownerString); - const receipt = await tx.wait(); - const parsedLogs = receipt.logs - .map((log: any) => { - try { - return agoricProxy.interface.parseLog(log); - } catch { - return null; - } - }) - .filter((parsed: any) => parsed && parsed.name === "WalletCreated"); - const event = parsedLogs[0]; - const walletAddress = event.args.target; - - const sendTx = await owner.sendTransaction({ - to: walletAddress, - value: ethers.parseEther("1.0"), + it("should use the remote wallet to call other contracts", async () => { + // Deploy Multicall.sol + const MulticallFactory = await ethers.getContractFactory("Multicall"); + const multicall = await MulticallFactory.deploy(); + await multicall.waitForDeployment(); + + const wallet = await createRemoteEVMAccount( + axelarGatewayMock, + owner.address, + sourceAddress + ); + + // Test ContractCall + const multicallAddress = await multicall.getAddress(); + const abiEncodedContractCalls = [ + constructContractCall({ + target: multicallAddress, + functionSignature: "setValue(uint256)", + args: [10], + }), + constructContractCall({ + target: multicallAddress, + functionSignature: "addToValue(uint256)", + args: [17], + }), + ]; + const multicallPayload = encodeMulticallPayload(abiEncodedContractCalls); + const payloadHash = getPayloadHash(multicallPayload); + + const commandId1 = getCommandId(); + await approveMessage({ + commandId: commandId1, + from: sourceContract, + sourceAddress, + targetAddress: wallet.target, + payload: payloadHash, + owner, + AxelarGateway: axelarGatewayMock, + abiCoder, + }); + + await wallet.execute( + commandId1, + sourceContract, + sourceAddress, + multicallPayload + ); + + const value = await multicall.getValue(); + expect(value).to.equal(27); + + // Test ContractCallWithToken + const abiEncodedCallsWithTokens = [ + constructContractCall({ + target: multicallAddress, + functionSignature: "addToValue(uint256)", + args: [17], + }), + ]; + const multicallPayload2 = encodeMulticallPayload(abiEncodedCallsWithTokens); + const payloadHash2 = getPayloadHash(multicallPayload2); + + const commandId2 = getCommandId(); + await approveMessageWithToken({ + commandId: commandId2, + from: sourceContract, + sourceAddress, + targetAddress: wallet.target, + payload: payloadHash2, + owner, + AxelarGateway: axelarGatewayMock, + abiCoder, + destinationTokenSymbol: "USDC", + amount: 5000, }); - await sendTx.wait(); - const balance = await owner.provider.getBalance(walletAddress); - expect(balance).to.equal(ethers.parseEther("1.0")); + + await wallet.executeWithToken( + commandId2, + sourceContract, + sourceAddress, + multicallPayload2, + "USDC", + 5000 + ); + + const value2 = await multicall.getValue(); + expect(value2).to.equal(44); }); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/importer/axelar-contracts.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/importer/axelar-contracts.sol new file mode 100644 index 00000000..5282b7c4 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/importer/axelar-contracts.sol @@ -0,0 +1,19 @@ +// SPDX-License-Identifier: MIT + +pragma solidity ^0.8.0; + +// File required for tests +// It imports the Axelar contracts from the node_modules directory +// and uses them in the test cases. + +// Axelar CGP SDK +import {TokenDeployer} from "@axelar-network/axelar-cgp-solidity/contracts/TokenDeployer.sol"; +import {AxelarGateway} from "@axelar-network/axelar-cgp-solidity/contracts/AxelarGateway.sol"; +import {AxelarAuthWeighted} from "@axelar-network/axelar-cgp-solidity/contracts/auth/AxelarAuthWeighted.sol"; +import {AxelarGatewayProxy} from "@axelar-network/axelar-cgp-solidity/contracts/AxelarGatewayProxy.sol"; +import {AxelarGasService} from "@axelar-network/axelar-cgp-solidity/contracts/gas-service/AxelarGasService.sol"; +import {AxelarGasServiceProxy} from "@axelar-network/axelar-cgp-solidity/contracts/gas-service/AxelarGasServiceProxy.sol"; + +// Axelar GMP SDK +import {IAxelarExecutable} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol"; +import {AxelarExpressExecutable} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/express/AxelarExpressExecutable.sol"; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts b/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts new file mode 100644 index 00000000..df98df15 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts @@ -0,0 +1,162 @@ +import { encodeFunctionData, keccak256, toBytes, encodeAbiParameters } from 'viem'; +import { network } from 'hardhat'; + +export const constructContractCall = ({ target, functionSignature, args }) => { + const [name, paramsRaw] = functionSignature.split('('); + const params = paramsRaw.replace(')', '').split(',').filter(Boolean); + + return { + target, + data: encodeFunctionData({ + abi: [ + { + type: 'function', + name, + inputs: params.map((type, i) => ({ type, name: `arg${i}` })), + }, + ], + functionName: name, + args, + }), + }; +}; + +export const approveMessage = async ({ + commandId, + from, + sourceAddress, + targetAddress, + payload, + owner, + AxelarGateway, + abiCoder, +}) => { + const params = abiCoder.encode( + ['string', 'string', 'address', 'bytes32'], + [from, sourceAddress, targetAddress, payload], + ); + const data = toBytes( + abiCoder.encode( + ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], + [network.config.chainId, [commandId], ['approveContractCall'], [params]], + ), + ); + + const hash = keccak256(data); + const signature = await owner.signMessage(toBytes(hash)); + const signatureBundle = abiCoder.encode( + ['address[]', 'uint256[]', 'uint256', 'bytes[]'], + [[owner.address], [1], 1, [signature]], + ); + + const input = abiCoder.encode(['bytes', 'bytes'], [data, signatureBundle]); + const response = await AxelarGateway.connect(owner).execute(input, { + gasLimit: BigInt(8e6), + }); + return response; +}; + +export const approveMessageWithToken = async ({ + commandId, + from, + sourceAddress, + targetAddress, + payload, + destinationTokenSymbol, + amount, + owner, + AxelarGateway, + abiCoder, +}) => { + const params = abiCoder.encode( + ['string', 'string', 'address', 'bytes32', 'string', 'uint256'], + [ + from, + sourceAddress, + targetAddress, + payload, + destinationTokenSymbol, + amount, + ], + ); + const data = toBytes( + abiCoder.encode( + ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], + [ + network.config.chainId, + [commandId], + ['approveContractCallWithMint'], + [params], + ], + ), + ); + + const hash = keccak256(data); + const signature = await owner.signMessage(toBytes(hash)); + const signatureBundle = abiCoder.encode( + ['address[]', 'uint256[]', 'uint256', 'bytes[]'], + [[owner.address], [1], 1, [signature]], + ); + + const input = abiCoder.encode(['bytes', 'bytes'], [data, signatureBundle]); + const response = await AxelarGateway.connect(owner).execute(input, { + gasLimit: BigInt(8e6), + }); + return response; +}; + +export const deployToken = async ({ + commandId, + name, + symbol, + decimals, + cap, + tokenAddress, + mintLimit, + owner, + AxelarGateway, + abiCoder, +}) => { + const params = abiCoder.encode( + ['string', 'string', 'uint8', 'uint256', 'address', 'uint256'], + [name, symbol, decimals, cap, tokenAddress, mintLimit], + ); + + const data = toBytes( + abiCoder.encode( + ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], + [network.config.chainId, [commandId], ['deployToken'], [params]], + ), + ); + + const hash = keccak256(data); + const signature = await owner.signMessage(toBytes(hash)); + const signatureBundle = abiCoder.encode( + ['address[]', 'uint256[]', 'uint256', 'bytes[]'], + [[owner.address], [1], 1, [signature]], + ); + + const input = abiCoder.encode(['bytes', 'bytes'], [data, signatureBundle]); + const response = await AxelarGateway.connect(owner).execute(input, { + gasLimit: BigInt(8e6), + }); + return response; +}; + +export const encodeMulticallPayload = (calls) => { + return encodeAbiParameters( + [ + { + type: "tuple[]", + name: "calls", + components: [ + { name: "target", type: "address" }, + { name: "data", type: "bytes" }, + ], + }, + ], + [calls] + ); +}; + +export const getPayloadHash = (payload) => keccak256(toBytes(payload)); From 2f47d983be947f5e4dba5b531b3a3f59381e92fd Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 2 Jul 2025 15:23:33 +0500 Subject: [PATCH 50/93] test: add and update event emission assertions for AgoricProxy and Wallet --- .../src/__tests__/AgoricProxy.spec.ts | 64 +++++++------------ .../src/__tests__/contracts/AgoricProxy.sol | 47 ++++++++++---- 2 files changed, 59 insertions(+), 52 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts index 98dbfaff..563e069e 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts @@ -105,6 +105,22 @@ describe("AgoricProxy", () => { }); await tx.wait(); + const receipt = await provider.getTransactionReceipt(tx.hash); + const iface = (await ethers.getContractFactory("AgoricProxy")).interface; + const receivedEvent = receipt.logs + .map((log) => { + try { + return iface.parseLog(log); + } catch { + return null; + } + }) + .find((parsed) => parsed && parsed.name === "Received"); + + expect(receivedEvent).to.not.be.undefined; + expect(receivedEvent.args.sender).to.equal(owner.address); + expect(receivedEvent.args.amount).to.equal(ethers.parseEther("5.0")); + const balanceAfter = await provider.getBalance(agoricProxyAddress); expect(balanceAfter).to.equal(ethers.parseEther("5.0")); }); @@ -134,46 +150,10 @@ describe("AgoricProxy", () => { payload ); - const encodedAddress = abiCoder.encode( - ["address"], - [expectedWalletAddress] - ); - - const agoricResponseEncoded = abiCoder.encode( - ["tuple(bool processed, tuple(bool success, bytes data)[] results)"], - [ - { - processed: false, - results: [ - { - success: true, - data: encodedAddress, - }, - ], - }, - ] - ); - - const expectedPayload = ethers.solidityPacked( - ["bytes4", "bytes"], - ["0x00000000", agoricResponseEncoded] - ); - - const expectedPayloadHash = keccak256(toBytes(expectedPayload)); - - await expect(tx) - .to.emit(agoricProxy, "WalletCreated") - .withArgs("WalletCreatedSuccess", expectedWalletAddress, sourceAddress); - await expect(tx) - .to.emit(axelarGatewayMock, "ContractCall") - .withArgs( - agoricProxy.target, - sourceContract, - sourceAddress, - expectedPayloadHash, - expectedPayload - ); + .to.emit(agoricProxy, "SmartWalletCreated") + .withArgs(expectedWalletAddress, sourceAddress, "agoric", sourceAddress); + await expect(tx).to.emit(agoricProxy, "CrossChainCallSent"); }); it("should use the remote wallet to call other contracts", async () => { @@ -217,13 +197,14 @@ describe("AgoricProxy", () => { abiCoder, }); - await wallet.execute( + const execTx = await wallet.execute( commandId1, sourceContract, sourceAddress, multicallPayload ); + expect(execTx).to.emit(wallet, "MulticallExecuted"); const value = await multicall.getValue(); expect(value).to.equal(27); @@ -252,7 +233,7 @@ describe("AgoricProxy", () => { amount: 5000, }); - await wallet.executeWithToken( + const execWithTokenTx = await wallet.executeWithToken( commandId2, sourceContract, sourceAddress, @@ -261,6 +242,7 @@ describe("AgoricProxy", () => { 5000 ); + expect(execWithTokenTx).to.emit(wallet, "MulticallExecuted"); const value2 = await multicall.getValue(); expect(value2).to.equal(44); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol index 9dc5e667..c7884181 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol @@ -26,6 +26,9 @@ struct CallParams { contract Wallet is AxelarExecutable, Ownable { IAxelarGasService public gasService; + event MulticallExecuted(address indexed executor, CallResult[] results); + event Received(address indexed sender, uint256 amount); + constructor( address gateway_, address gasReceiver_, @@ -49,6 +52,7 @@ contract Wallet is AxelarExecutable, Ownable { results[i] = CallResult(success, result); } + emit MulticallExecuted(msg.sender, results); return results; } @@ -70,9 +74,13 @@ contract Wallet is AxelarExecutable, Ownable { _multicall(payload); } - receive() external payable {} + receive() external payable { + emit Received(msg.sender, msg.value); + } - fallback() external payable {} + fallback() external payable { + emit Received(msg.sender, msg.value); + } } contract AgoricProxy is AxelarExecutable { @@ -83,11 +91,18 @@ contract AgoricProxy is AxelarExecutable { IAxelarGasService public immutable gasService; string public chainName; - event WalletCreated( - string label, - address indexed target, - string ownerAddress + event SmartWalletCreated( + address indexed wallet, + string owner, + string sourceChain, + string sourceAddress + ); + event CrossChainCallSent( + string destinationChain, + string destinationAddress, + bytes payload ); + event Received(address indexed sender, uint256 amount); constructor( address gateway_, @@ -103,7 +118,6 @@ contract AgoricProxy is AxelarExecutable { address newWallet = address( new Wallet(_gateway, address(gasService), owner) ); - emit WalletCreated("WalletCreatedSuccess", newWallet, owner); return newWallet; } @@ -112,10 +126,16 @@ contract AgoricProxy is AxelarExecutable { string calldata sourceAddress, bytes calldata /*payload*/ ) internal override { - address vendorAddress = createSmartWallet(sourceAddress); + address smartWalletAddress = createSmartWallet(sourceAddress); + emit SmartWalletCreated( + smartWalletAddress, + sourceAddress, + sourceChain, + sourceAddress + ); CallResult[] memory results = new CallResult[](1); - results[0] = CallResult(true, abi.encode(vendorAddress)); + results[0] = CallResult(true, abi.encode(smartWalletAddress)); bytes memory msgPayload = abi.encodePacked( bytes4(0x00000000), @@ -138,9 +158,14 @@ contract AgoricProxy is AxelarExecutable { ); gateway.callContract(destinationChain, destinationAddress, payload); + emit CrossChainCallSent(destinationChain, destinationAddress, payload); } - receive() external payable {} + receive() external payable { + emit Received(msg.sender, msg.value); + } - fallback() external payable {} + fallback() external payable { + emit Received(msg.sender, msg.value); + } } From 1085a95b98a3d888e83307d36be6964856b22d8d Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 2 Jul 2025 15:36:00 +0500 Subject: [PATCH 51/93] chore: add concise coverage scripts and optimize Solidity compiler settings --- package.json | 3 ++- packages/axelar-local-dev-cosmos/.solcover.js | 10 ++++++++++ packages/axelar-local-dev-cosmos/hardhat.config.ts | 10 ++++++++-- packages/axelar-local-dev-cosmos/package.json | 3 ++- 4 files changed, 22 insertions(+), 4 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/.solcover.js diff --git a/package.json b/package.json index 07a47a71..69cabfe6 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,8 @@ "build:multiversx": "lerna exec --scope=@axelar-network/axelar-local-dev-multiversx npm run build", "lint": "prettier --check .", "lint:fix": "prettier --write .", - "test:proxy": "yarn --cwd packages/axelar-local-dev-cosmos test:proxy" + "test:proxy": "yarn --cwd packages/axelar-local-dev-cosmos test:proxy", + "coverage:proxy": "lerna exec --scope=@axelar-network/axelar-local-dev-cosmos npm run coverage:proxy" }, "devDependencies": { "lerna": "^8.2.1", diff --git a/packages/axelar-local-dev-cosmos/.solcover.js b/packages/axelar-local-dev-cosmos/.solcover.js new file mode 100644 index 00000000..df494a9c --- /dev/null +++ b/packages/axelar-local-dev-cosmos/.solcover.js @@ -0,0 +1,10 @@ +module.exports = { + skipFiles: [ + "ContractCallWithToken.sol", + "importer/axelar-contracts.sol", + "Multicall.sol", + "Ownable.sol", + "SendReceive.sol", + "StakingContract.sol", + ], +}; diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index 8cbe03c5..52a3e135 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -12,7 +12,10 @@ const config: HardhatUserConfig = { settings: { optimizer: { enabled: true, - runs: 200, + runs: 10000, + details: { + yul: true, + }, }, }, }, @@ -21,7 +24,10 @@ const config: HardhatUserConfig = { settings: { optimizer: { enabled: true, - runs: 200, + runs: 10000, + details: { + yul: true, + }, }, }, }, diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index 484e1542..93a5769b 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -23,7 +23,8 @@ "relayToEth": "ts-node scripts/relayToEth.ts", "relayWithTokens": "ts-node scripts/relayWithTokens.ts", "relayFromEth": "ts-node scripts/relayFromEth.ts", - "test:proxy": "hardhat test src/__tests__/AgoricProxy.spec.ts" + "test:proxy": "hardhat test src/__tests__/AgoricProxy.spec.ts", + "coverage:proxy": "npx hardhat coverage --testfiles src/__tests__/AgoricProxy.spec.ts" }, "dependencies": { "@axelar-network/axelar-local-dev": "^2.3.2", From 92fea45a966d13a691cc683959e8d7cc05ad95d9 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 2 Jul 2025 15:43:15 +0500 Subject: [PATCH 52/93] ci: fix fsevents os error --- package-lock.json | 13009 ++++++++-------- package.json | 3 +- packages/axelar-local-dev-cosmos/package.json | 3 +- .../src/__tests__/AgoricProxy.spec.ts | 6 +- .../axelar-local-dev-cosmos/tsconfig.json | 2 +- packages/axelar-local-dev/package.json | 2 +- 6 files changed, 6201 insertions(+), 6824 deletions(-) diff --git a/package-lock.json b/package-lock.json index 19667716..7773cf61 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,19 +9,11 @@ "packages/*" ], "devDependencies": { + "eslint": "^8.57.0", "lerna": "^8.2.1", "lerna-update-wizard": "^1.1.2" } }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@adraffy/ens-normalize": { "version": "1.10.1", "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz", @@ -34,6 +26,7 @@ "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dev": true, + "license": "Apache-2.0", "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" @@ -45,12 +38,14 @@ "node_modules/@axelar-network/axelar-cgp-aptos": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/@axelar-network/axelar-cgp-aptos/-/axelar-cgp-aptos-1.0.5.tgz", - "integrity": "sha512-C6ItxuSaADE7dDfEFOaijnc/Dx3JxfGhE5eXw2SrMx7N0MYG2NB0S4H4aQ+U5P9CVBh6AQet6c8prE/dTUu0ow==" + "integrity": "sha512-C6ItxuSaADE7dDfEFOaijnc/Dx3JxfGhE5eXw2SrMx7N0MYG2NB0S4H4aQ+U5P9CVBh6AQet6c8prE/dTUu0ow==", + "license": "ISC" }, "node_modules/@axelar-network/axelar-cgp-near": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@axelar-network/axelar-cgp-near/-/axelar-cgp-near-1.0.0.tgz", "integrity": "sha512-FzExtfKWzw5OLSMr/kpbm+fcCt94fb0JmypRtIWHs1trYZoNhTFlqNF9fIDLR30rcITixTV46DWSg3R5okiq1g==", + "license": "MIT", "engines": { "node": "^16.0.0 || ^18.0.0" } @@ -59,6 +54,7 @@ "version": "6.2.1", "resolved": "https://registry.npmjs.org/@axelar-network/axelar-cgp-solidity/-/axelar-cgp-solidity-6.2.1.tgz", "integrity": "sha512-0RaxLYmsp3elXBytn7+eZUil1KFS6jjHR/ECrN/3IC7TeTDPUYunyy6JDxCdNYNtiD6EKgUAfQ7G4DrBb6hRxg==", + "license": "MIT", "dependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "5.6.4" }, @@ -70,6 +66,7 @@ "version": "5.6.4", "resolved": "https://registry.npmjs.org/@axelar-network/axelar-gmp-sdk-solidity/-/axelar-gmp-sdk-solidity-5.6.4.tgz", "integrity": "sha512-PQjV+HeJynmSRMhyM3SexwnbFNruSaiRUeNCWjV8/7CkdPsDqypoqIXVRVU8Zk92DUUHeqZZzL/3qP2LYuvlnA==", + "license": "MIT", "engines": { "node": ">=16" } @@ -77,6 +74,7 @@ "node_modules/@axelar-network/axelar-cgp-sui": { "version": "0.0.0", "resolved": "git+ssh://git@github.com/axelarnetwork/axelar-cgp-sui.git#a27769db651ab1c40c707ad95ea92bffc89fb75e", + "integrity": "sha512-k0NJ2ZU3AVQ+NKNhiNoTjBmDlL1Zeg4GI32uSz54SoxcJXsDji0ABqEUFw+fvNd525uiOdaoTkzsYllTVy2xOQ==", "license": "MIT", "dependencies": { "@cosmjs/cosmwasm-stargate": "^0.32.2", @@ -93,41 +91,44 @@ } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/amino": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/amino/-/amino-0.32.3.tgz", - "integrity": "sha512-G4zXl+dJbqrz1sSJ56H/25l5NJEk/pAPIr8piAHgbXYw88OdAOlpA26PQvk2IbSN/rRgVbvlLTNgX2tzz1dyUA==", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/amino/-/amino-0.32.4.tgz", + "integrity": "sha512-zKYOt6hPy8obIFtLie/xtygCkH9ZROiQ12UHfKsOkWaZfPQUvVbtgmu6R4Kn1tFLI/SRkw7eqhaogmW/3NYu/Q==", + "license": "Apache-2.0", "dependencies": { - "@cosmjs/crypto": "^0.32.3", - "@cosmjs/encoding": "^0.32.3", - "@cosmjs/math": "^0.32.3", - "@cosmjs/utils": "^0.32.3" + "@cosmjs/crypto": "^0.32.4", + "@cosmjs/encoding": "^0.32.4", + "@cosmjs/math": "^0.32.4", + "@cosmjs/utils": "^0.32.4" } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/cosmwasm-stargate": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/cosmwasm-stargate/-/cosmwasm-stargate-0.32.3.tgz", - "integrity": "sha512-pqkt+QsLIPNMTRh9m+igJgIpzXXgn1BxmxfAb9zlC23kvsuzY/12un9M7iAdim1NwKXDFeYw46xC2YkprwQp+g==", - "dependencies": { - "@cosmjs/amino": "^0.32.3", - "@cosmjs/crypto": "^0.32.3", - "@cosmjs/encoding": "^0.32.3", - "@cosmjs/math": "^0.32.3", - "@cosmjs/proto-signing": "^0.32.3", - "@cosmjs/stargate": "^0.32.3", - "@cosmjs/tendermint-rpc": "^0.32.3", - "@cosmjs/utils": "^0.32.3", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/cosmwasm-stargate/-/cosmwasm-stargate-0.32.4.tgz", + "integrity": "sha512-Fuo9BGEiB+POJ5WeRyBGuhyKR1ordvxZGLPuPosFJOH9U0gKMgcjwKMCgAlWFkMlHaTB+tNdA8AifWiHrI7VgA==", + "license": "Apache-2.0", + "dependencies": { + "@cosmjs/amino": "^0.32.4", + "@cosmjs/crypto": "^0.32.4", + "@cosmjs/encoding": "^0.32.4", + "@cosmjs/math": "^0.32.4", + "@cosmjs/proto-signing": "^0.32.4", + "@cosmjs/stargate": "^0.32.4", + "@cosmjs/tendermint-rpc": "^0.32.4", + "@cosmjs/utils": "^0.32.4", "cosmjs-types": "^0.9.0", "pako": "^2.0.2" } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/crypto": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/crypto/-/crypto-0.32.3.tgz", - "integrity": "sha512-niQOWJHUtlJm2GG4F00yGT7sGPKxfUwz+2qQ30uO/E3p58gOusTcH2qjiJNVxb8vScYJhFYFqpm/OA/mVqoUGQ==", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/crypto/-/crypto-0.32.4.tgz", + "integrity": "sha512-zicjGU051LF1V9v7bp8p7ovq+VyC91xlaHdsFOTo2oVry3KQikp8L/81RkXmUIT8FxMwdx1T7DmFwVQikcSDIw==", + "license": "Apache-2.0", "dependencies": { - "@cosmjs/encoding": "^0.32.3", - "@cosmjs/math": "^0.32.3", - "@cosmjs/utils": "^0.32.3", + "@cosmjs/encoding": "^0.32.4", + "@cosmjs/math": "^0.32.4", + "@cosmjs/utils": "^0.32.4", "@noble/hashes": "^1", "bn.js": "^5.2.0", "elliptic": "^6.5.4", @@ -135,9 +136,10 @@ } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/encoding": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/encoding/-/encoding-0.32.3.tgz", - "integrity": "sha512-p4KF7hhv8jBQX3MkB3Defuhz/W0l3PwWVYU2vkVuBJ13bJcXyhU9nJjiMkaIv+XP+W2QgRceqNNgFUC5chNR7w==", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/encoding/-/encoding-0.32.4.tgz", + "integrity": "sha512-tjvaEy6ZGxJchiizzTn7HVRiyTg1i4CObRRaTRPknm5EalE13SV+TCHq38gIDfyUeden4fCuaBVEdBR5+ti7Hw==", + "license": "Apache-2.0", "dependencies": { "base64-js": "^1.3.0", "bech32": "^1.1.4", @@ -145,97 +147,106 @@ } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/json-rpc": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/json-rpc/-/json-rpc-0.32.3.tgz", - "integrity": "sha512-JwFRWZa+Y95KrAG8CuEbPVOSnXO2uMSEBcaAB/FBU3Mo4jQnDoUjXvt3vwtFWxfAytrWCn1I4YDFaOAinnEG/Q==", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/json-rpc/-/json-rpc-0.32.4.tgz", + "integrity": "sha512-/jt4mBl7nYzfJ2J/VJ+r19c92mUKF0Lt0JxM3MXEJl7wlwW5haHAWtzRujHkyYMXOwIR+gBqT2S0vntXVBRyhQ==", + "license": "Apache-2.0", "dependencies": { - "@cosmjs/stream": "^0.32.3", + "@cosmjs/stream": "^0.32.4", "xstream": "^11.14.0" } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/math": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/math/-/math-0.32.3.tgz", - "integrity": "sha512-amumUtZs8hCCnV+lSBaJIiZkGabQm22QGg/IotYrhcmoOEOjt82n7hMNlNXRs7V6WLMidGrGYcswB5zcmp0Meg==", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/math/-/math-0.32.4.tgz", + "integrity": "sha512-++dqq2TJkoB8zsPVYCvrt88oJWsy1vMOuSOKcdlnXuOA/ASheTJuYy4+oZlTQ3Fr8eALDLGGPhJI02W2HyAQaw==", + "license": "Apache-2.0", "dependencies": { "bn.js": "^5.2.0" } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/proto-signing": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/proto-signing/-/proto-signing-0.32.3.tgz", - "integrity": "sha512-kSZ0ZUY0DwcRT0NcIn2HkadH4NKlwjfZgbLj1ABwh/4l0RgeT84QCscZCu63tJYq3K6auwqTiZSZERwlO4/nbg==", - "dependencies": { - "@cosmjs/amino": "^0.32.3", - "@cosmjs/crypto": "^0.32.3", - "@cosmjs/encoding": "^0.32.3", - "@cosmjs/math": "^0.32.3", - "@cosmjs/utils": "^0.32.3", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/proto-signing/-/proto-signing-0.32.4.tgz", + "integrity": "sha512-QdyQDbezvdRI4xxSlyM1rSVBO2st5sqtbEIl3IX03uJ7YiZIQHyv6vaHVf1V4mapusCqguiHJzm4N4gsFdLBbQ==", + "license": "Apache-2.0", + "dependencies": { + "@cosmjs/amino": "^0.32.4", + "@cosmjs/crypto": "^0.32.4", + "@cosmjs/encoding": "^0.32.4", + "@cosmjs/math": "^0.32.4", + "@cosmjs/utils": "^0.32.4", "cosmjs-types": "^0.9.0" } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/socket": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/socket/-/socket-0.32.3.tgz", - "integrity": "sha512-F2WwNmaUPdZ4SsH6Uyreq3wQk7jpaEkb3wfOP951f5Jt6HCW/PxbxhKzHkAAf6+Sqks6SPhkbWoE8XaZpjL2KA==", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/socket/-/socket-0.32.4.tgz", + "integrity": "sha512-davcyYziBhkzfXQTu1l5NrpDYv0K9GekZCC9apBRvL1dvMc9F/ygM7iemHjUA+z8tJkxKxrt/YPjJ6XNHzLrkw==", + "license": "Apache-2.0", "dependencies": { - "@cosmjs/stream": "^0.32.3", + "@cosmjs/stream": "^0.32.4", "isomorphic-ws": "^4.0.1", "ws": "^7", "xstream": "^11.14.0" } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/stargate": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/stargate/-/stargate-0.32.3.tgz", - "integrity": "sha512-OQWzO9YWKerUinPIxrO1MARbe84XkeXJAW0lyMIjXIEikajuXZ+PwftiKA5yA+8OyditVmHVLtPud6Pjna2s5w==", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/stargate/-/stargate-0.32.4.tgz", + "integrity": "sha512-usj08LxBSsPRq9sbpCeVdyLx2guEcOHfJS9mHGCLCXpdAPEIEQEtWLDpEUc0LEhWOx6+k/ChXTc5NpFkdrtGUQ==", + "license": "Apache-2.0", "dependencies": { "@confio/ics23": "^0.6.8", - "@cosmjs/amino": "^0.32.3", - "@cosmjs/encoding": "^0.32.3", - "@cosmjs/math": "^0.32.3", - "@cosmjs/proto-signing": "^0.32.3", - "@cosmjs/stream": "^0.32.3", - "@cosmjs/tendermint-rpc": "^0.32.3", - "@cosmjs/utils": "^0.32.3", + "@cosmjs/amino": "^0.32.4", + "@cosmjs/encoding": "^0.32.4", + "@cosmjs/math": "^0.32.4", + "@cosmjs/proto-signing": "^0.32.4", + "@cosmjs/stream": "^0.32.4", + "@cosmjs/tendermint-rpc": "^0.32.4", + "@cosmjs/utils": "^0.32.4", "cosmjs-types": "^0.9.0", "xstream": "^11.14.0" } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/stream": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/stream/-/stream-0.32.3.tgz", - "integrity": "sha512-J2zVWDojkynYifAUcRmVczzmp6STEpyiAARq0rSsviqjreGIfspfuws/8rmkPa6qQBZvpQOBQCm2HyZZwYplIw==", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/stream/-/stream-0.32.4.tgz", + "integrity": "sha512-Gih++NYHEiP+oyD4jNEUxU9antoC0pFSg+33Hpp0JlHwH0wXhtD3OOKnzSfDB7OIoEbrzLJUpEjOgpCp5Z+W3A==", + "license": "Apache-2.0", "dependencies": { "xstream": "^11.14.0" } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/tendermint-rpc": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/tendermint-rpc/-/tendermint-rpc-0.32.3.tgz", - "integrity": "sha512-xeprW+VR9xKGstqZg0H/KBZoUp8/FfFyS9ljIUTLM/UINjP2MhiwncANPS2KScfJVepGufUKk0/phHUeIBSEkw==", - "dependencies": { - "@cosmjs/crypto": "^0.32.3", - "@cosmjs/encoding": "^0.32.3", - "@cosmjs/json-rpc": "^0.32.3", - "@cosmjs/math": "^0.32.3", - "@cosmjs/socket": "^0.32.3", - "@cosmjs/stream": "^0.32.3", - "@cosmjs/utils": "^0.32.3", + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/tendermint-rpc/-/tendermint-rpc-0.32.4.tgz", + "integrity": "sha512-MWvUUno+4bCb/LmlMIErLypXxy7ckUuzEmpufYYYd9wgbdCXaTaO08SZzyFM5PI8UJ/0S2AmUrgWhldlbxO8mw==", + "license": "Apache-2.0", + "dependencies": { + "@cosmjs/crypto": "^0.32.4", + "@cosmjs/encoding": "^0.32.4", + "@cosmjs/json-rpc": "^0.32.4", + "@cosmjs/math": "^0.32.4", + "@cosmjs/socket": "^0.32.4", + "@cosmjs/stream": "^0.32.4", + "@cosmjs/utils": "^0.32.4", "axios": "^1.6.0", "readonly-date": "^1.0.0", "xstream": "^11.14.0" } }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@cosmjs/utils": { - "version": "0.32.3", - "resolved": "https://registry.npmjs.org/@cosmjs/utils/-/utils-0.32.3.tgz", - "integrity": "sha512-WCZK4yksj2hBDz4w7xFZQTRZQ/RJhBX26uFHmmQFIcNUUVAihrLO+RerqJgk0dZqC42wstM9pEUQGtPmLcIYvg==" + "version": "0.32.4", + "resolved": "https://registry.npmjs.org/@cosmjs/utils/-/utils-0.32.4.tgz", + "integrity": "sha512-D1Yc+Zy8oL/hkUkFUL/bwxvuDBzRGpc4cF7/SkdhxX4iHpSLgdOuTt1mhCh9+kl6NQREy9t7SYZ6xeW5gFe60w==", + "license": "Apache-2.0" }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@mysten/bcs": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/@mysten/bcs/-/bcs-0.8.1.tgz", "integrity": "sha512-wSEdP7QEfGQdb34g+7R0f3OdRqrv88iIABfJVDVJ6IsGLYVILreh8dZfNpZNUUyzctiyhX7zB9e/lR5qkddFPA==", + "license": "Apache-2.0", "dependencies": { "bs58": "^5.0.0" } @@ -244,6 +255,8 @@ "version": "0.47.0", "resolved": "https://registry.npmjs.org/@mysten/sui.js/-/sui.js-0.47.0.tgz", "integrity": "sha512-WBHNX5eMirpwd7v6im25r+I8a/GfYUX03jS9bIr7hei3NnUMcfOENOn9+Tv3+MURQ1MzdS0PzeZkuYrvQlVBCw==", + "deprecated": "This package has been renamed to @mysten/sui, please update to use the renamed package.", + "license": "Apache-2.0", "dependencies": { "@mysten/bcs": "0.8.1", "@noble/curves": "^1.1.0", @@ -258,103 +271,28 @@ "node": ">=16" } }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@noble/curves": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.0.tgz", - "integrity": "sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg==", - "dependencies": { - "@noble/hashes": "1.4.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@scure/bip32": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", - "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", - "dependencies": { - "@noble/curves": "~1.4.0", - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/@scure/bip39": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", - "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", - "dependencies": { - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/base-x": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-4.0.0.tgz", - "integrity": "sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==" - }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/bs58": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-5.0.0.tgz", - "integrity": "sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==", - "dependencies": { - "base-x": "^4.0.0" - } - }, "node_modules/@axelar-network/axelar-cgp-sui/node_modules/cosmjs-types": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/cosmjs-types/-/cosmjs-types-0.9.0.tgz", - "integrity": "sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ==" - }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/node-addon-api": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", - "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" - }, - "node_modules/@axelar-network/axelar-cgp-sui/node_modules/secp256k1": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.1.tgz", - "integrity": "sha512-lDFs9AAIaWP9UCdtWrotXWWF9t8PWgQDcxqgAnpM9rMqxb3Oaq2J0thzPVSxBwdJgyQtkU/sYtFtbM1RSt/iYA==", - "hasInstallScript": true, - "dependencies": { - "elliptic": "^6.5.7", - "node-addon-api": "^5.0.0", - "node-gyp-build": "^4.2.0" - }, - "engines": { - "node": ">=18.0.0" - } + "integrity": "sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ==", + "license": "Apache-2.0" }, "node_modules/@axelar-network/axelar-chains-config": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@axelar-network/axelar-chains-config/-/axelar-chains-config-1.3.0.tgz", "integrity": "sha512-k633v2pJF8qPM3pDSawSqm7K4AgqmGicj2fUk0O0HwWB1jS2l/oFm+x5jB58HT64xhf8x7VB4BhdJQtMdKcOPA==", + "license": "MIT", "dependencies": { "@ethersproject/keccak256": "^5.7.0", "fs-extra": "^11.1.1" } }, "node_modules/@axelar-network/axelar-gmp-sdk-solidity": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@axelar-network/axelar-gmp-sdk-solidity/-/axelar-gmp-sdk-solidity-5.7.0.tgz", - "integrity": "sha512-JlokiWFxvR6bFQtDjdErtk0mZrr3GH1A8bKps1zVP/Bu4XOHR0WsrWGPVhWIbvT8a8Ag3dva4hskBYgdq+pLig==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/@axelar-network/axelar-gmp-sdk-solidity/-/axelar-gmp-sdk-solidity-5.10.0.tgz", + "integrity": "sha512-s8SImALvYB+5AeiT3tbfWNBI2Mhqw1x91i/zM3DNpVUCnAR2HKtsB9T84KnUn/OJjOVgb4h0lv7q9smeYniRPw==", + "dev": true, + "license": "MIT", "engines": { "node": ">=18" } @@ -387,6 +325,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/@axelar-network/axelarjs-types/-/axelarjs-types-1.2.1.tgz", "integrity": "sha512-GHFsdg8MNYXOyN7/muA9FGWpI/fFBDjlE8WaKCuHlANaf+R95oelPY9gCmF3qq3qJdOakD62t2PUKLVDWYbFYA==", + "license": "Apache-2.0", "dependencies": { "long": "^4.0.0", "protobufjs": "~6.11.2" @@ -396,6 +335,7 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/@axelar-network/interchain-token-service/-/interchain-token-service-1.2.4.tgz", "integrity": "sha512-Sgw2M4VzW5hjL9TBe2ljL5wo+paYqlL2XNQlq1dyaDAD6E7PG1MQ+0U44QnfJfhhAwcqZtKQmb92ZNwV+BEdVw==", + "license": "MIT", "dependencies": { "@axelar-network/axelar-cgp-solidity": "6.2.1", "@axelar-network/axelar-gmp-sdk-solidity": "5.6.4" @@ -408,49 +348,53 @@ "version": "5.6.4", "resolved": "https://registry.npmjs.org/@axelar-network/axelar-gmp-sdk-solidity/-/axelar-gmp-sdk-solidity-5.6.4.tgz", "integrity": "sha512-PQjV+HeJynmSRMhyM3SexwnbFNruSaiRUeNCWjV8/7CkdPsDqypoqIXVRVU8Zk92DUUHeqZZzL/3qP2LYuvlnA==", + "license": "MIT", "engines": { "node": ">=16" } }, "node_modules/@babel/code-frame": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", - "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.25.9", + "@babel/helper-validator-identifier": "^7.27.1", "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" + "picocolors": "^1.1.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.1.tgz", - "integrity": "sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz", + "integrity": "sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.3.tgz", - "integrity": "sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz", + "integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==", "dev": true, + "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.1", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.1", - "@babel/parser": "^7.24.1", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.0", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.27.3", + "@babel/helpers": "^7.27.6", + "@babel/parser": "^7.28.0", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.28.0", + "@babel/types": "^7.28.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -465,11 +409,22 @@ "url": "https://opencollective.com/babel" } }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/eslint-parser": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.27.0.tgz", - "integrity": "sha512-dtnzmSjXfgL/HDgMcmsLSzyGbEosi4DrGWoCNfuI+W4IkVJw6izpTe7LtOdwAXnkDqw5yweboYCTkM2rQizCng==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.28.0.tgz", + "integrity": "sha512-N4ntErOlKvcbTt01rr5wj3y55xnIdx1ymrfIr8C2WnM1Y9glFgWaGDEULJIazOX3XM9NRzhfJ6zZnQ1sBNWU+w==", "dev": true, + "license": "MIT", "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", "eslint-visitor-keys": "^2.1.0", @@ -483,16 +438,37 @@ "eslint": "^7.5.0 || ^8.0.0 || ^9.0.0" } }, + "node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10" + } + }, + "node_modules/@babel/eslint-parser/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/generator": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", - "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.0.tgz", + "integrity": "sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/parser": "^7.27.0", - "@babel/types": "^7.27.0", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", + "@babel/parser": "^7.28.0", + "@babel/types": "^7.28.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", "jsesc": "^3.0.2" }, "engines": { @@ -500,26 +476,28 @@ } }, "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", - "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.25.9" + "@babel/types": "^7.27.3" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -527,18 +505,46 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.0.tgz", - "integrity": "sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz", + "integrity": "sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.25.9", - "@babel/helper-member-expression-to-functions": "^7.25.9", - "@babel/helper-optimise-call-expression": "^7.25.9", - "@babel/helper-replace-supers": "^7.26.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", - "@babel/traverse": "^7.27.0", + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/traverse": "^7.27.1", "semver": "^6.3.1" }, "engines": { @@ -548,41 +554,64 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz", - "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz", + "integrity": "sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.25.9" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", - "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.25.9" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", - "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz", + "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.25.9", - "@babel/helper-validator-identifier": "^7.25.9", - "@babel/traverse": "^7.25.9" + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.3" }, "engines": { "node": ">=6.9.0" @@ -592,35 +621,38 @@ } }, "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz", - "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", + "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.25.9" + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", - "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.26.5", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz", - "integrity": "sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", + "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.25.9", - "@babel/helper-optimise-call-expression": "^7.25.9", - "@babel/traverse": "^7.26.5" + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/traverse": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -630,65 +662,71 @@ } }, "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz", - "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", + "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/traverse": "^7.25.9", - "@babel/types": "^7.25.9" + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", - "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", - "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", - "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", - "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.6.tgz", + "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/template": "^7.27.0", - "@babel/types": "^7.27.0" + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", - "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.0.tgz", + "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.27.0" + "@babel/types": "^7.28.0" }, "bin": { "parser": "bin/babel-parser.js" @@ -702,6 +740,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -714,6 +753,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -726,6 +766,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.12.13" }, @@ -733,11 +774,44 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", + "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-import-meta": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" }, @@ -750,6 +824,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -758,12 +833,13 @@ } }, "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz", - "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", + "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.9" + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -777,6 +853,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" }, @@ -789,6 +866,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -801,6 +879,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" }, @@ -813,6 +892,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -825,6 +905,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -837,6 +918,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -844,11 +926,28 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-top-level-await": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.14.5" }, @@ -860,12 +959,13 @@ } }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz", - "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz", + "integrity": "sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.25.9" + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -875,13 +975,14 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.26.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz", - "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz", + "integrity": "sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.26.0", - "@babel/helper-plugin-utils": "^7.25.9" + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -891,16 +992,17 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.27.0.tgz", - "integrity": "sha512-fRGGjO2UEGPjvEcyAZXRXAS8AfdaQoq7HnxAbJoAoW10B9xOKesmmndJv+Sym2a+9FHWZ9KbyyLCe9s0Sn5jtg==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.0.tgz", + "integrity": "sha512-4AEiDEBPIZvLQaWlc9liCavE0xRM0dNca41WtBeM3jgFptfUOSG9z0uteLhq6+3rq+WB6jIvUwKDTpXEHPJ2Vg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.25.9", - "@babel/helper-create-class-features-plugin": "^7.27.0", - "@babel/helper-plugin-utils": "^7.26.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", - "@babel/plugin-syntax-typescript": "^7.25.9" + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-syntax-typescript": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -910,16 +1012,17 @@ } }, "node_modules/@babel/preset-typescript": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.27.0.tgz", - "integrity": "sha512-vxaPFfJtHhgeOVXRKuHpHPAOgymmy8V8I65T1q53R7GCZlefKeCaTyDs3zOPHTTbmquvNlQYC5klEvWsBAtrBQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.27.1.tgz", + "integrity": "sha512-l7WfQfX0WK4M0v2RudjuQK4u99BS6yLHYEmdtVPP7lKV013zr9DygFuWNlnbvQ9LR+LS0Egz/XAvGx5U9MX0fQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.26.5", - "@babel/helper-validator-option": "^7.25.9", - "@babel/plugin-syntax-jsx": "^7.25.9", - "@babel/plugin-transform-modules-commonjs": "^7.26.3", - "@babel/plugin-transform-typescript": "^7.27.0" + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-syntax-jsx": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.27.1", + "@babel/plugin-transform-typescript": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -929,45 +1032,48 @@ } }, "node_modules/@babel/template": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", - "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.26.2", - "@babel/parser": "^7.27.0", - "@babel/types": "^7.27.0" + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", - "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.0.tgz", + "integrity": "sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.26.2", - "@babel/generator": "^7.27.0", - "@babel/parser": "^7.27.0", - "@babel/template": "^7.27.0", - "@babel/types": "^7.27.0", - "debug": "^4.3.1", - "globals": "^11.1.0" + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.0", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.0", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/types": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", - "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.0.tgz", + "integrity": "sha512-jYnje+JyZG5YThjHiF28oT4SIZLnYOcSBb6+SDaFIyzDVSkXQmQQYclJ2R+YxcdmK0AX6x1E5OQNtuh3jHDrUg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.25.9", - "@babel/helper-validator-identifier": "^7.25.9" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -977,12 +1083,14 @@ "version": "0.2.3", "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@colors/colors": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", + "license": "MIT", "engines": { "node": ">=0.1.90" } @@ -991,6 +1099,8 @@ "version": "0.6.8", "resolved": "https://registry.npmjs.org/@confio/ics23/-/ics23-0.6.8.tgz", "integrity": "sha512-wB6uo+3A50m0sW/EWcU64xpV/8wShZ6bMTa7pF8eYsTrSkQA7oLUIJcs/wb8g4y2Oyq701BaGiO6n/ak5WXO1w==", + "deprecated": "Unmaintained. The codebase for this package was moved to https://github.com/cosmos/ics23 but then the JS implementation was removed in https://github.com/cosmos/ics23/pull/353. Please consult the maintainers of https://github.com/cosmos for further assistance.", + "license": "Apache-2.0", "dependencies": { "@noble/hashes": "^1.0.0", "protobufjs": "^6.8.8" @@ -1000,6 +1110,7 @@ "version": "0.10.0", "resolved": "https://registry.npmjs.org/@confio/relayer/-/relayer-0.10.0.tgz", "integrity": "sha512-/WW5Eyfgylby9u0wz6XakA7yo5hamdWh6pxkOYHPz0ls7ikd7Ld+c2fpRbL0Qg5wZn9+9P+Uhfj4l0pVl3WPgw==", + "license": "MIT", "dependencies": { "@cosmjs/cosmwasm-stargate": "^0.31.0", "@cosmjs/crypto": "^0.31.0", @@ -1036,6 +1147,7 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.1.tgz", "integrity": "sha512-ga/aqDYnUy/o7vbsRTFhhTsNeXiYb5JWDIcRIeZfwRNCefwjNTVYCGdGSUrEmiu3yDK3vFvNbgJxvrQW4JXrYQ==", + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -1051,22 +1163,16 @@ "version": "0.21.4", "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "license": "MIT", "dependencies": { "follow-redirects": "^1.14.0" } }, - "node_modules/@confio/relayer/node_modules/commander": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz", - "integrity": "sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==", - "engines": { - "node": ">= 10" - } - }, "node_modules/@confio/relayer/node_modules/js-yaml": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", + "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -1077,12 +1183,14 @@ "node_modules/@confio/relayer/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" }, "node_modules/@cosmjs/amino": { "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/amino/-/amino-0.31.3.tgz", "integrity": "sha512-36emtUq895sPRX8PTSOnG+lhJDCVyIcE0Tr5ct59sUbgQiI14y43vj/4WAlJ/utSOxy+Zhj9wxcs4AZfu0BHsw==", + "license": "Apache-2.0", "dependencies": { "@cosmjs/crypto": "^0.31.3", "@cosmjs/encoding": "^0.31.3", @@ -1094,6 +1202,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/cosmwasm-stargate/-/cosmwasm-stargate-0.31.3.tgz", "integrity": "sha512-Uv9TmCn3650gdFeZm7SEfUZF3uX3lfJfFhXOk6I2ZLr/FrKximnlb+vwAfZaZnWYvlA7qrKtHIjeRNHvT23zcw==", + "license": "Apache-2.0", "dependencies": { "@cosmjs/amino": "^0.31.3", "@cosmjs/crypto": "^0.31.3", @@ -1112,6 +1221,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/crypto/-/crypto-0.31.3.tgz", "integrity": "sha512-vRbvM9ZKR2017TO73dtJ50KxoGcFzKtKI7C8iO302BQ5p+DuB+AirUg1952UpSoLfv5ki9O416MFANNg8UN/EQ==", + "license": "Apache-2.0", "dependencies": { "@cosmjs/encoding": "^0.31.3", "@cosmjs/math": "^0.31.3", @@ -1126,6 +1236,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/encoding/-/encoding-0.31.3.tgz", "integrity": "sha512-6IRtG0fiVYwyP7n+8e54uTx2pLYijO48V3t9TLiROERm5aUAIzIlz6Wp0NYaI5he9nh1lcEGJ1lkquVKFw3sUg==", + "license": "Apache-2.0", "dependencies": { "base64-js": "^1.3.0", "bech32": "^1.1.4", @@ -1136,6 +1247,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/faucet-client/-/faucet-client-0.31.3.tgz", "integrity": "sha512-gsVD/UD1R2k00iRVcBwXRgTkwzsnapfw8n1eWfc7o44xg0aVG8YL84ntj2YmjC9+NHCp2rmK9xndQeUOFIszOA==", + "license": "Apache-2.0", "dependencies": { "axios": "^0.21.2" } @@ -1144,6 +1256,7 @@ "version": "0.21.4", "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "license": "MIT", "dependencies": { "follow-redirects": "^1.14.0" } @@ -1152,6 +1265,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/json-rpc/-/json-rpc-0.31.3.tgz", "integrity": "sha512-7LVYerXjnm69qqYR3uA6LGCrBW2EO5/F7lfJxAmY+iII2C7xO3a0vAjMSt5zBBh29PXrJVS6c2qRP22W1Le2Wg==", + "license": "Apache-2.0", "dependencies": { "@cosmjs/stream": "^0.31.3", "xstream": "^11.14.0" @@ -1161,6 +1275,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/math/-/math-0.31.3.tgz", "integrity": "sha512-kZ2C6glA5HDb9hLz1WrftAjqdTBb3fWQsRR+Us2HsjAYdeE6M3VdXMsYCP5M3yiihal1WDwAY2U7HmfJw7Uh4A==", + "license": "Apache-2.0", "dependencies": { "bn.js": "^5.2.0" } @@ -1169,6 +1284,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/proto-signing/-/proto-signing-0.31.3.tgz", "integrity": "sha512-24+10/cGl6lLS4VCrGTCJeDRPQTn1K5JfknzXzDIHOx8THR31JxA7/HV5eWGHqWgAbudA7ccdSvEK08lEHHtLA==", + "license": "Apache-2.0", "dependencies": { "@cosmjs/amino": "^0.31.3", "@cosmjs/crypto": "^0.31.3", @@ -1183,6 +1299,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/socket/-/socket-0.31.3.tgz", "integrity": "sha512-aqrDGGi7os/hsz5p++avI4L0ZushJ+ItnzbqA7C6hamFSCJwgOkXaOUs+K9hXZdX4rhY7rXO4PH9IH8q09JkTw==", + "license": "Apache-2.0", "dependencies": { "@cosmjs/stream": "^0.31.3", "isomorphic-ws": "^4.0.1", @@ -1194,6 +1311,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/stargate/-/stargate-0.31.3.tgz", "integrity": "sha512-53NxnzmB9FfXpG4KjOUAYAvWLYKdEmZKsutcat/u2BrDXNZ7BN8jim/ENcpwXfs9/Og0K24lEIdvA4gsq3JDQw==", + "license": "Apache-2.0", "dependencies": { "@confio/ics23": "^0.6.8", "@cosmjs/amino": "^0.31.3", @@ -1213,6 +1331,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/stream/-/stream-0.31.3.tgz", "integrity": "sha512-8keYyI7X0RjsLyVcZuBeNjSv5FA4IHwbFKx7H60NHFXszN8/MvXL6aZbNIvxtcIHHsW7K9QSQos26eoEWlAd+w==", + "license": "Apache-2.0", "dependencies": { "xstream": "^11.14.0" } @@ -1221,6 +1340,7 @@ "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/tendermint-rpc/-/tendermint-rpc-0.31.3.tgz", "integrity": "sha512-s3TiWkPCW4QceTQjpYqn4xttUJH36mTPqplMl+qyocdqk5+X5mergzExU/pHZRWQ4pbby8bnR7kMvG4OC1aZ8g==", + "license": "Apache-2.0", "dependencies": { "@cosmjs/crypto": "^0.31.3", "@cosmjs/encoding": "^0.31.3", @@ -1238,6 +1358,7 @@ "version": "0.21.4", "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "license": "MIT", "dependencies": { "follow-redirects": "^1.14.0" } @@ -1245,13 +1366,15 @@ "node_modules/@cosmjs/utils": { "version": "0.31.3", "resolved": "https://registry.npmjs.org/@cosmjs/utils/-/utils-0.31.3.tgz", - "integrity": "sha512-VBhAgzrrYdIe0O5IbKRqwszbQa7ZyQLx9nEQuHQ3HUplQW7P44COG/ye2n6AzCudtqxmwdX7nyX8ta1J07GoqA==" + "integrity": "sha512-VBhAgzrrYdIe0O5IbKRqwszbQa7ZyQLx9nEQuHQ3HUplQW7P44COG/ye2n6AzCudtqxmwdX7nyX8ta1J07GoqA==", + "license": "Apache-2.0" }, "node_modules/@cspotcode/source-map-support": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "devOptional": true, + "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/trace-mapping": "0.3.9" }, @@ -1263,7 +1386,8 @@ "version": "0.3.9", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "devOptional": true, + "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -1273,6 +1397,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", + "license": "MIT", "dependencies": { "colorspace": "1.1.x", "enabled": "2.0.x", @@ -1280,114 +1405,86 @@ } }, "node_modules/@elastic/elasticsearch": { - "version": "8.12.2", - "resolved": "https://registry.npmjs.org/@elastic/elasticsearch/-/elasticsearch-8.12.2.tgz", - "integrity": "sha512-04NvH3LIgcv1Uwguorfw2WwzC9Lhfsqs9f0L6uq6MrCw0lqe/HOQ6E8vJ6EkHAA15iEfbhtxOtenbZVVcE+mAQ==", + "version": "8.18.2", + "resolved": "https://registry.npmjs.org/@elastic/elasticsearch/-/elasticsearch-8.18.2.tgz", + "integrity": "sha512-2pOc/hGdxkbaDavfAlnUfjJdVsFRCGqg7fpsWJfJ2UzpgViIyojdViHg8zOCT1J14lAwvDgb9CNETWa3SBZRfw==", + "license": "Apache-2.0", "dependencies": { - "@elastic/transport": "^8.4.1", + "@elastic/transport": "^8.9.6", + "apache-arrow": "18.x - 19.x", "tslib": "^2.4.0" }, "engines": { "node": ">=18" } }, - "node_modules/@elastic/elasticsearch/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" - }, "node_modules/@elastic/transport": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/@elastic/transport/-/transport-8.4.1.tgz", - "integrity": "sha512-/SXVuVnuU5b4dq8OFY4izG+dmGla185PcoqgK6+AJMpmOeY1QYVNbWtCwvSvoAANN5D/wV+EBU8+x7Vf9EphbA==", + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/@elastic/transport/-/transport-8.10.0.tgz", + "integrity": "sha512-Xd62ZtgdrJuaunTLk0LqYtkUtJ3D2/NQ4QyLWPYj0c2h97SNUaNkrQH9lzb6r2P0Bdjx/HwKtW3X8kO5LJ7qEQ==", + "license": "Apache-2.0", "dependencies": { - "debug": "^4.3.4", - "hpagent": "^1.0.0", + "@opentelemetry/api": "1.x", + "@opentelemetry/core": "2.x", + "debug": "^4.4.1", + "hpagent": "^1.2.0", "ms": "^2.1.3", - "secure-json-parse": "^2.4.0", - "tslib": "^2.4.0", - "undici": "^5.22.1" + "secure-json-parse": "^3.0.1", + "tslib": "^2.8.1", + "undici": "^6.21.1" }, "engines": { - "node": ">=16" + "node": ">=18" } }, - "node_modules/@elastic/transport/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" - }, "node_modules/@emnapi/core": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.4.0.tgz", - "integrity": "sha512-H+N/FqT07NmLmt6OFFtDfwe8PNygprzBikrEMyQfgqSmT0vzE515Pz7R8izwB9q/zsH/MA64AKoul3sA6/CzVg==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.4.3.tgz", + "integrity": "sha512-4m62DuCE07lw01soJwPiBGC0nAww0Q+RY70VZ+n49yDIO13yyinhbWCeNnaob0lakDtWQzSdtNWzJeOJt2ma+g==", "dev": true, + "license": "MIT", "dependencies": { - "@emnapi/wasi-threads": "1.0.1", + "@emnapi/wasi-threads": "1.0.2", "tslib": "^2.4.0" } }, - "node_modules/@emnapi/core/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, "node_modules/@emnapi/runtime": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.0.tgz", - "integrity": "sha512-64WYIf4UYcdLnbKn/umDlNjQDSS8AgZrI/R9+x5ilkUVFxXcA1Ebl+gQLc/6mERA4407Xof0R7wEyEuj091CVw==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.3.tgz", + "integrity": "sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==", "dev": true, + "license": "MIT", "dependencies": { "tslib": "^2.4.0" } }, - "node_modules/@emnapi/runtime/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, "node_modules/@emnapi/wasi-threads": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz", - "integrity": "sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.2.tgz", + "integrity": "sha512-5n3nTJblwRi8LlXkJ9eBzu+kZR8Yxcc7ubakyQTFzPMtIhFpUBRbsnc2Dv88IZDIbCDlBiWrknhB4Lsz7mg6BA==", "dev": true, + "license": "MIT", "dependencies": { "tslib": "^2.4.0" } }, - "node_modules/@emnapi/wasi-threads/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", "dev": true, + "license": "MIT", "dependencies": { - "eslint-visitor-keys": "^3.3.0" + "eslint-visitor-keys": "^3.4.3" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, "funding": { "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, "node_modules/@eslint-community/regexpp": { @@ -1395,83 +1492,60 @@ "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", "dev": true, + "license": "MIT", "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@eslint/config-array": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", - "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, + "license": "MIT", "dependencies": { - "@eslint/object-schema": "^2.1.6", - "debug": "^4.3.1", - "minimatch": "^3.1.2" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/config-helpers": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.1.tgz", - "integrity": "sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/core": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", - "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.15" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/object-schema": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", - "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@eslint/plugin-kit": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz", - "integrity": "sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==", + "node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", "dev": true, - "dependencies": { - "@eslint/core": "^0.13.0", - "levn": "^0.4.1" - }, + "license": "MIT", "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", - "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", - "dev": true, + "node_modules/@ethereumjs/common": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-3.2.0.tgz", + "integrity": "sha512-pksvzI0VyLgmuEF2FA/JR/4/y6hcPq8OUail3/AvycBaW1d5VSauOZzqGvJ3RTmR4MU35lWE8KseKOsEhrFRBA==", + "license": "MIT", "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + "@ethereumjs/util": "^8.1.0", + "crc-32": "^1.2.0" } }, "node_modules/@ethereumjs/rlp": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-4.0.1.tgz", "integrity": "sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==", + "license": "MPL-2.0", "bin": { "rlp": "bin/rlp" }, @@ -1479,10 +1553,26 @@ "node": ">=14" } }, + "node_modules/@ethereumjs/tx": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-4.2.0.tgz", + "integrity": "sha512-1nc6VO4jtFd172BbSnTnDQVr9IYBFl1y4xPzZdtkrkKIncBCkdbgfdRV+MiTkJYAtTxvV12GRZLqBFT1PNK6Yw==", + "license": "MPL-2.0", + "dependencies": { + "@ethereumjs/common": "^3.2.0", + "@ethereumjs/rlp": "^4.0.1", + "@ethereumjs/util": "^8.1.0", + "ethereum-cryptography": "^2.0.0" + }, + "engines": { + "node": ">=14" + } + }, "node_modules/@ethereumjs/util": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-8.1.0.tgz", "integrity": "sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==", + "license": "MPL-2.0", "dependencies": { "@ethereumjs/rlp": "^4.0.1", "ethereum-cryptography": "^2.0.0", @@ -1492,53 +1582,6 @@ "node": ">=14" } }, - "node_modules/@ethereumjs/util/node_modules/@noble/hashes": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz", - "integrity": "sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@ethereumjs/util/node_modules/@scure/bip32": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.3.3.tgz", - "integrity": "sha512-LJaN3HwRbfQK0X1xFSi0Q9amqOgzQnnDngIt+ZlsBC3Bm7/nE7K0kwshZHyaru79yIVRv/e1mQAjZyuZG6jOFQ==", - "dependencies": { - "@noble/curves": "~1.3.0", - "@noble/hashes": "~1.3.2", - "@scure/base": "~1.1.4" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@ethereumjs/util/node_modules/@scure/bip39": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.2.2.tgz", - "integrity": "sha512-HYf9TUXG80beW+hGAt3TRM8wU6pQoYur9iNypTROm42dorCGmLnFe3eWjz3gOq6G62H2WRh0FCzAR1PI+29zIA==", - "dependencies": { - "@noble/hashes": "~1.3.2", - "@scure/base": "~1.1.4" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@ethereumjs/util/node_modules/ethereum-cryptography": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.1.3.tgz", - "integrity": "sha512-BlwbIL7/P45W8FGW2r7LGuvoEZ+7PWsniMvQ4p5s2xCyw9tmaDlpfsN9HjAucbF+t/qpVHwZUisgfK24TCW8aA==", - "dependencies": { - "@noble/curves": "1.3.0", - "@noble/hashes": "1.3.3", - "@scure/bip32": "1.3.3", - "@scure/bip39": "1.2.2" - } - }, "node_modules/@ethersproject/abi": { "version": "5.8.0", "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.8.0.tgz", @@ -1553,6 +1596,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/address": "^5.8.0", "@ethersproject/bignumber": "^5.8.0", @@ -1579,6 +1623,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bignumber": "^5.8.0", "@ethersproject/bytes": "^5.8.0", @@ -1603,6 +1648,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/abstract-provider": "^5.8.0", "@ethersproject/bignumber": "^5.8.0", @@ -1625,6 +1671,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bignumber": "^5.8.0", "@ethersproject/bytes": "^5.8.0", @@ -1647,6 +1694,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0" } @@ -1665,6 +1713,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "@ethersproject/properties": "^5.8.0" @@ -1684,6 +1733,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "@ethersproject/logger": "^5.8.0", @@ -1704,6 +1754,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/logger": "^5.8.0" } @@ -1722,6 +1773,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bignumber": "^5.8.0" } @@ -1740,6 +1792,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/abi": "^5.8.0", "@ethersproject/abstract-provider": "^5.8.0", @@ -1767,6 +1820,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/abstract-signer": "^5.8.0", "@ethersproject/address": "^5.8.0", @@ -1793,6 +1847,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/abstract-signer": "^5.8.0", "@ethersproject/basex": "^5.8.0", @@ -1822,6 +1877,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/abstract-signer": "^5.8.0", "@ethersproject/address": "^5.8.0", @@ -1852,6 +1908,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "js-sha3": "0.8.0" @@ -1870,7 +1927,8 @@ "type": "individual", "url": "https://www.buymeacoffee.com/ricmoo" } - ] + ], + "license": "MIT" }, "node_modules/@ethersproject/networks": { "version": "5.8.0", @@ -1886,6 +1944,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/logger": "^5.8.0" } @@ -1904,6 +1963,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "@ethersproject/sha2": "^5.8.0" @@ -1923,6 +1983,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/logger": "^5.8.0" } @@ -1941,6 +2002,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/abstract-provider": "^5.8.0", "@ethersproject/abstract-signer": "^5.8.0", @@ -1968,6 +2030,7 @@ "version": "8.18.0", "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "license": "MIT", "engines": { "node": ">=10.0.0" }, @@ -1998,6 +2061,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "@ethersproject/logger": "^5.8.0" @@ -2017,6 +2081,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "@ethersproject/logger": "^5.8.0" @@ -2036,6 +2101,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "@ethersproject/logger": "^5.8.0", @@ -2056,6 +2122,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "@ethersproject/logger": "^5.8.0", @@ -2079,6 +2146,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bignumber": "^5.8.0", "@ethersproject/bytes": "^5.8.0", @@ -2102,6 +2170,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "@ethersproject/constants": "^5.8.0", @@ -2122,6 +2191,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/address": "^5.8.0", "@ethersproject/bignumber": "^5.8.0", @@ -2148,6 +2218,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bignumber": "^5.8.0", "@ethersproject/constants": "^5.8.0", @@ -2168,6 +2239,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/abstract-provider": "^5.8.0", "@ethersproject/abstract-signer": "^5.8.0", @@ -2200,6 +2272,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/base64": "^5.8.0", "@ethersproject/bytes": "^5.8.0", @@ -2222,6 +2295,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { "@ethersproject/bytes": "^5.8.0", "@ethersproject/hash": "^5.8.0", @@ -2234,43 +2308,26 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", - "engines": { - "node": ">=14" - } - }, - "node_modules/@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", "dev": true, + "license": "MIT", "engines": { - "node": ">=18.18.0" + "node": ">=14" } }, - "node_modules/@humanfs/node": { - "version": "0.16.6", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", - "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", "dev": true, + "license": "Apache-2.0", "dependencies": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.3.0" + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" }, "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", - "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", - "dev": true, - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "node": ">=10.10.0" } }, "node_modules/@humanwhocodes/module-importer": { @@ -2278,6 +2335,7 @@ "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=12.22" }, @@ -2286,24 +2344,20 @@ "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@humanwhocodes/retry": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz", - "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==", + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", "dev": true, - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } + "license": "BSD-3-Clause" }, "node_modules/@hutson/parse-repository-url": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz", "integrity": "sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=6.9.0" } @@ -2313,6 +2367,7 @@ "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", "dev": true, + "license": "ISC", "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", @@ -2330,6 +2385,7 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -2342,6 +2398,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -2353,13 +2410,15 @@ "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@isaacs/cliui/node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dev": true, + "license": "MIT", "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", @@ -2377,6 +2436,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^6.0.1" }, @@ -2392,6 +2452,7 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", @@ -2408,13 +2469,15 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz", "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", "dev": true, + "license": "ISC", "dependencies": { "camelcase": "^5.3.1", "find-up": "^4.1.0", @@ -2431,37 +2494,17 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, + "license": "MIT", "dependencies": { "sprintf-js": "~1.0.2" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -2475,6 +2518,7 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -2488,6 +2532,7 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^4.1.0" }, @@ -2500,6 +2545,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -2515,6 +2561,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^2.2.0" }, @@ -2527,6 +2574,7 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -2535,13 +2583,15 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -2551,6 +2601,7 @@ "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", "dev": true, + "license": "MIT", "dependencies": { "@jest/types": "^29.6.3", "@types/node": "*", @@ -2563,81 +2614,12 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/console/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/console/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/console/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/console/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/core": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", "dev": true, + "license": "MIT", "dependencies": { "@jest/console": "^29.7.0", "@jest/reporters": "^29.7.0", @@ -2680,96 +2662,12 @@ } } }, - "node_modules/@jest/core/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/core/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/core/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/environment": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", "dev": true, + "license": "MIT", "dependencies": { "@jest/fake-timers": "^29.7.0", "@jest/types": "^29.6.3", @@ -2785,6 +2683,7 @@ "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", "dev": true, + "license": "MIT", "dependencies": { "expect": "^29.7.0", "jest-snapshot": "^29.7.0" @@ -2798,6 +2697,7 @@ "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", "dev": true, + "license": "MIT", "dependencies": { "jest-get-type": "^29.6.3" }, @@ -2810,6 +2710,7 @@ "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", "dev": true, + "license": "MIT", "dependencies": { "@jest/types": "^29.6.3", "@sinonjs/fake-timers": "^10.0.2", @@ -2827,6 +2728,7 @@ "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", "dev": true, + "license": "MIT", "dependencies": { "@jest/environment": "^29.7.0", "@jest/expect": "^29.7.0", @@ -2842,6 +2744,7 @@ "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", "dev": true, + "license": "MIT", "dependencies": { "@bcoe/v8-coverage": "^0.2.3", "@jest/console": "^29.7.0", @@ -2880,74 +2783,26 @@ } } }, - "node_modules/@jest/reporters/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/reporters/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/@jest/reporters/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=10" + "node": "*" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/reporters/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/reporters/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/reporters/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/reporters/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@jest/schemas": { @@ -2955,6 +2810,7 @@ "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dev": true, + "license": "MIT", "dependencies": { "@sinclair/typebox": "^0.27.8" }, @@ -2967,6 +2823,7 @@ "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/trace-mapping": "^0.3.18", "callsites": "^3.0.0", @@ -2981,6 +2838,7 @@ "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", "dev": true, + "license": "MIT", "dependencies": { "@jest/console": "^29.7.0", "@jest/types": "^29.6.3", @@ -2996,6 +2854,7 @@ "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", "dev": true, + "license": "MIT", "dependencies": { "@jest/test-result": "^29.7.0", "graceful-fs": "^4.2.9", @@ -3011,6 +2870,7 @@ "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/core": "^7.11.6", "@jest/types": "^29.6.3", @@ -3032,74 +2892,18 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/transform/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/@jest/transform/node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, + "license": "ISC", "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/transform/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/transform/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/transform/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/@jest/types": { @@ -3107,6 +2911,7 @@ "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", "dev": true, + "license": "MIT", "dependencies": { "@jest/schemas": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", @@ -3119,129 +2924,51 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/types/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/types/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@jest/types/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/types/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "version": "0.3.12", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz", + "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==", "dev": true, + "license": "MIT", "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/sourcemap-codec": "^1.5.0", "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "devOptional": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "devOptional": true + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", + "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==", + "dev": true, + "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "version": "0.3.29", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz", + "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==", "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "node_modules/@lerna/create": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/@lerna/create/-/create-8.2.1.tgz", - "integrity": "sha512-Cz2u/fwc03D1EE6VFZCLMmI8FIUtGmxHQ3ECeNblsxv9i0YSKWe4Xm18sjO1xltG/K5ByiH8/HMeY9dlyAv22A==", + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/@lerna/create/-/create-8.2.3.tgz", + "integrity": "sha512-f+68+iojcQ0tZRMfCgQyJdsdz+YPu3/d+0Zo1RJz92bgBxTCiEU+dHACVq1n3sEjm/YWPnFGdag8U5EYYmP3WA==", "dev": true, + "license": "MIT", "dependencies": { "@npmcli/arborist": "7.5.4", "@npmcli/package-json": "5.2.0", @@ -3266,7 +2993,6 @@ "get-stream": "6.0.0", "git-url-parse": "14.0.0", "glob-parent": "6.0.2", - "globby": "11.1.0", "graceful-fs": "4.2.11", "has-unicode": "2.0.1", "ini": "^1.3.8", @@ -3301,9 +3027,10 @@ "slash": "^3.0.0", "ssri": "^10.0.6", "string-width": "^4.2.3", - "strong-log-transformer": "2.1.0", "tar": "6.2.1", "temp-dir": "1.0.0", + "through": "2.3.8", + "tinyglobby": "0.2.12", "upath": "2.0.1", "uuid": "^10.0.0", "validate-npm-package-license": "^3.0.4", @@ -3318,26 +3045,12 @@ "node": ">=18.0.0" } }, - "node_modules/@lerna/create/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/@lerna/create/node_modules/chalk": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -3349,64 +3062,12 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@lerna/create/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@lerna/create/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@lerna/create/node_modules/execa": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", - "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/@lerna/create/node_modules/get-stream": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", - "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@lerna/create/node_modules/glob": { "version": "9.3.5", "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "minimatch": "^8.0.2", @@ -3421,10 +3082,11 @@ } }, "node_modules/@lerna/create/node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } @@ -3434,6 +3096,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -3444,29 +3107,12 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@lerna/create/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/create/node_modules/is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/@lerna/create/node_modules/minimatch": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -3479,6 +3125,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", "dev": true, + "license": "ISC", "engines": { "node": ">=8" } @@ -3488,6 +3135,7 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -3497,6 +3145,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", "dev": true, + "license": "ISC", "dependencies": { "glob": "^9.2.0" }, @@ -3510,102 +3159,33 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@lerna/create/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node_modules/@metamask/abi-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@metamask/abi-utils/-/abi-utils-3.0.0.tgz", + "integrity": "sha512-a/l0DiSIr7+CBYVpHygUa3ztSlYLFCQMsklLna+t6qmNY9+eIO5TedNxhyIyvaJ+4cN7TLy0NQFbp9FV3X2ktg==", + "license": "(Apache-2.0 AND MIT)", + "dependencies": { + "@metamask/superstruct": "^3.1.0", + "@metamask/utils": "^11.0.1" }, "engines": { - "node": ">=10" + "node": "^18.18 || ^20.14 || >=22" } }, - "node_modules/@lerna/create/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, + "node_modules/@metamask/superstruct": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@metamask/superstruct/-/superstruct-3.2.1.tgz", + "integrity": "sha512-fLgJnDOXFmuVlB38rUN5SmU7hAFQcCjrg3Vrxz67KTY7YHFnSNEKvX4avmEBdOI0yTCxZjwMCFEqsC8k2+Wd3g==", + "license": "MIT", "engines": { - "node": ">=8" - } - }, - "node_modules/@lerna/create/node_modules/uuid": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", - "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", - "dev": true, - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/@lerna/create/node_modules/write-file-atomic": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@lerna/create/node_modules/write-file-atomic/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@lerna/create/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/@metamask/abi-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@metamask/abi-utils/-/abi-utils-3.0.0.tgz", - "integrity": "sha512-a/l0DiSIr7+CBYVpHygUa3ztSlYLFCQMsklLna+t6qmNY9+eIO5TedNxhyIyvaJ+4cN7TLy0NQFbp9FV3X2ktg==", - "license": "(Apache-2.0 AND MIT)", - "dependencies": { - "@metamask/superstruct": "^3.1.0", - "@metamask/utils": "^11.0.1" - }, - "engines": { - "node": "^18.18 || ^20.14 || >=22" - } - }, - "node_modules/@metamask/superstruct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@metamask/superstruct/-/superstruct-3.1.0.tgz", - "integrity": "sha512-N08M56HdOgBfRKkrgCMZvQppkZGcArEop3kixNEtVbJKm6P9Cfg0YkI6X0s1g78sNrj2fWUwvJADdZuzJgFttA==", - "engines": { - "node": ">=16.0.0" + "node": ">=16.0.0" } }, "node_modules/@metamask/utils": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/@metamask/utils/-/utils-11.0.1.tgz", - "integrity": "sha512-tZlBvEJ6VhhfEiMV+Ad8rWRMjHKpbMogG01YU22JlsIeJptgIdZX1G8jJzhZH0Gxrixa2BeARh7m9lZWQo6rMg==", + "version": "11.4.2", + "resolved": "https://registry.npmjs.org/@metamask/utils/-/utils-11.4.2.tgz", + "integrity": "sha512-TygCcGmUbhmpxjYMm+mx68kRiJ80jYV54/Aa8gUFBv4cTX7ulX2XZKr8CJoJAw3K3FN5ZvCRmU0IzWZFaonwhA==", + "license": "ISC", "dependencies": { "@ethereumjs/tx": "^4.2.0", "@metamask/superstruct": "^3.1.0", @@ -3613,6 +3193,7 @@ "@scure/base": "^1.1.3", "@types/debug": "^4.1.7", "debug": "^4.3.4", + "lodash.memoize": "^4.1.2", "pony-cause": "^2.1.10", "semver": "^7.5.4", "uuid": "^9.0.1" @@ -3621,142 +3202,6 @@ "node": "^18.18 || ^20.14 || >=22" } }, - "node_modules/@metamask/utils/node_modules/@ethereumjs/common": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-3.2.0.tgz", - "integrity": "sha512-pksvzI0VyLgmuEF2FA/JR/4/y6hcPq8OUail3/AvycBaW1d5VSauOZzqGvJ3RTmR4MU35lWE8KseKOsEhrFRBA==", - "dependencies": { - "@ethereumjs/util": "^8.1.0", - "crc-32": "^1.2.0" - } - }, - "node_modules/@metamask/utils/node_modules/@ethereumjs/tx": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-4.2.0.tgz", - "integrity": "sha512-1nc6VO4jtFd172BbSnTnDQVr9IYBFl1y4xPzZdtkrkKIncBCkdbgfdRV+MiTkJYAtTxvV12GRZLqBFT1PNK6Yw==", - "dependencies": { - "@ethereumjs/common": "^3.2.0", - "@ethereumjs/rlp": "^4.0.1", - "@ethereumjs/util": "^8.1.0", - "ethereum-cryptography": "^2.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@metamask/utils/node_modules/@noble/curves": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", - "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", - "dependencies": { - "@noble/hashes": "1.4.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@metamask/utils/node_modules/@noble/curves/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@metamask/utils/node_modules/@noble/hashes": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.0.tgz", - "integrity": "sha512-HXydb0DgzTpDPwbVeDGCG1gIu7X6+AuU6Zl6av/E/KG8LMsvPntvq+w17CHRpKBmN6Ybdrt1eP3k4cj8DJa78w==", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@metamask/utils/node_modules/@scure/bip32": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", - "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", - "dependencies": { - "@noble/curves": "~1.4.0", - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@metamask/utils/node_modules/@scure/bip32/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@metamask/utils/node_modules/@scure/bip39": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", - "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", - "dependencies": { - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@metamask/utils/node_modules/@scure/bip39/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@metamask/utils/node_modules/ethereum-cryptography": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", - "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", - "dependencies": { - "@noble/curves": "1.4.2", - "@noble/hashes": "1.4.0", - "@scure/bip32": "1.4.0", - "@scure/bip39": "1.3.0" - } - }, - "node_modules/@metamask/utils/node_modules/ethereum-cryptography/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@metamask/utils/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@metamask/utils/node_modules/uuid": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", @@ -3765,6 +3210,7 @@ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], + "license": "MIT", "bin": { "uuid": "dist/bin/uuid" } @@ -3773,6 +3219,7 @@ "version": "0.3.5", "resolved": "https://registry.npmjs.org/@multiversx/sdk-bls-wasm/-/sdk-bls-wasm-0.3.5.tgz", "integrity": "sha512-c0tIdQUnbBLSt6NYU+OpeGPYdL0+GV547HeHT8Xc0BKQ7Cj0v82QUoA2QRtWrR1G4MNZmLsIacZSsf6DrIS2Bw==", + "license": "BSD-3-Clause", "engines": { "node": ">=8.9.0" } @@ -3781,6 +3228,7 @@ "version": "12.19.3", "resolved": "https://registry.npmjs.org/@multiversx/sdk-core/-/sdk-core-12.19.3.tgz", "integrity": "sha512-QplpEKmUapjRybfyBQV3T/t6+glZyrEKrhoIf90qWA7yxkC/lEu65yMPFsqcMyHj4nCIMmbPYYkoRi0QL4E/Kw==", + "license": "MIT", "dependencies": { "@multiversx/sdk-transaction-decoder": "1.0.2", "bech32": "1.1.4", @@ -3794,11 +3242,36 @@ "bignumber.js": "^9.0.1" } }, + "node_modules/@multiversx/sdk-core/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/@multiversx/sdk-core/node_modules/keccak": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", "hasInstallScript": true, + "license": "MIT", "dependencies": { "node-addon-api": "^2.0.0", "node-gyp-build": "^4.2.0", @@ -3809,15 +3282,17 @@ } }, "node_modules/@multiversx/sdk-core/node_modules/long": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/long/-/long-5.3.1.tgz", - "integrity": "sha512-ka87Jz3gcx/I7Hal94xaN2tZEOPoUOEVftkQqZx2EeQRN7LGdfLlI3FvZ+7WDplm+vK2Urx9ULrvSowtdCieng==" + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz", + "integrity": "sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==", + "license": "Apache-2.0" }, "node_modules/@multiversx/sdk-core/node_modules/protobufjs": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.4.0.tgz", - "integrity": "sha512-mRUWCc3KUU4w1jU8sGxICXH/gNS94DvI1gxqDvBzhj1JpcsimQkYiOJfwsPUykUI5ZaspFbSgmBLER8IrQ3tqw==", + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.3.tgz", + "integrity": "sha512-sildjKwVqOI2kmFDiXQ6aEB0fjYTafpEvIBs8tOR8qI4spuL9OPROLVu2qZqi/xgCfsHIwVqlaF8JBjWFHnKbw==", "hasInstallScript": true, + "license": "BSD-3-Clause", "dependencies": { "@protobufjs/aspromise": "^1.1.2", "@protobufjs/base64": "^1.1.2", @@ -3840,6 +3315,7 @@ "version": "2.9.3", "resolved": "https://registry.npmjs.org/@multiversx/sdk-network-providers/-/sdk-network-providers-2.9.3.tgz", "integrity": "sha512-oBrXbNaaHQymd8EqUQPW0bpZu9JaTz6TOaV8MzNCzUo0Xe3a2QxaQ7f0I5OYzD7k0TxPqLv4hQhfIsh3+ifmPw==", + "license": "MIT", "dependencies": { "bech32": "1.1.4", "bignumber.js": "9.0.1", @@ -3854,14 +3330,40 @@ "version": "9.0.1", "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz", "integrity": "sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA==", + "license": "MIT", "engines": { "node": "*" } }, + "node_modules/@multiversx/sdk-network-providers/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/@multiversx/sdk-transaction-decoder": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@multiversx/sdk-transaction-decoder/-/sdk-transaction-decoder-1.0.2.tgz", "integrity": "sha512-j43QsKquu8N51WLmVlJ7dV2P3A1448R7/ktvl8r3i6wRMpfdtzDPNofTdHmMRT7DdQdvs4+RNgz8hVKL11Etsw==", + "license": "MIT", "dependencies": { "bech32": "^2.0.0" } @@ -3869,18 +3371,20 @@ "node_modules/@multiversx/sdk-transaction-decoder/node_modules/bech32": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", - "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" + "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==", + "license": "MIT" }, "node_modules/@multiversx/sdk-wallet": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@multiversx/sdk-wallet/-/sdk-wallet-4.4.0.tgz", - "integrity": "sha512-wS4P8a2ts3cNaSLUw9VFf4yhWSMTYng+nyHKi3/9QalLP5lxBumUfD/mUkb9sK13UPJ5Xp/zB3j8a4Qdllw2Ag==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@multiversx/sdk-wallet/-/sdk-wallet-4.6.0.tgz", + "integrity": "sha512-SxO/hBTnAB+uWH4MJdwKLvfRk8cxdA8zi6JC4I9j1+V+XQJpfs2YHCvMmaVyIAqjmSg9i7Uk61exrDkR3bjPAw==", + "license": "MIT", "dependencies": { "@multiversx/sdk-bls-wasm": "0.3.5", "@noble/ed25519": "1.7.3", "@noble/hashes": "1.3.0", "bech32": "1.1.4", - "bip39": "3.0.2", + "bip39": "3.1.0", "blake2b": "2.1.3", "ed25519-hd-key": "1.1.2", "ed2curve": "0.3.0", @@ -3899,13 +3403,15 @@ "type": "individual", "url": "https://paulmillr.com/funding/" } - ] + ], + "license": "MIT" }, "node_modules/@multiversx/sdk-wallet/node_modules/keccak": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.1.tgz", "integrity": "sha512-epq90L9jlFWCW7+pQa6JOnKn2Xgl2mtI664seYR6MHskvI9agt7AnDqmAlp9TqU4/caMYbA08Hi5DMZAl5zdkA==", "hasInstallScript": true, + "license": "MIT", "dependencies": { "node-addon-api": "^2.0.0", "node-gyp-build": "^4.2.0" @@ -3914,31 +3420,30 @@ "node": ">=10.0.0" } }, + "node_modules/@multiversx/sdk-wallet/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/@mysten/bcs": { "version": "0.7.4", "resolved": "https://registry.npmjs.org/@mysten/bcs/-/bcs-0.7.4.tgz", "integrity": "sha512-6DKzM4L10Au3Og5EJRBqJZmXWZ7hS/clVjbVUH4sA0aFtS3AZo2xc+r5fUFfdJbaWZUxVaDiQ8BNiEZWkAnEOw==", + "license": "Apache-2.0", "dependencies": { "bs58": "^5.0.0" } }, - "node_modules/@mysten/bcs/node_modules/base-x": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-4.0.0.tgz", - "integrity": "sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw==" - }, - "node_modules/@mysten/bcs/node_modules/bs58": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-5.0.0.tgz", - "integrity": "sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==", - "dependencies": { - "base-x": "^4.0.0" - } - }, "node_modules/@mysten/sui.js": { "version": "0.41.2", "resolved": "https://registry.npmjs.org/@mysten/sui.js/-/sui.js-0.41.2.tgz", "integrity": "sha512-00Kkk4don9H9iRWBqXfRC4wUPY0hqAvmzxhwaYZIHj9Tmb71Nx51zLLFsxeA7dlR6cJFaXFMbZkt6WR2vP8WLQ==", + "deprecated": "This package has been renamed to @mysten/sui, please update to use the renamed package.", + "license": "Apache-2.0", "dependencies": { "@mysten/bcs": "0.7.4", "@noble/curves": "^1.1.0", @@ -3955,58 +3460,12 @@ "node": ">=16" } }, - "node_modules/@mysten/sui.js/node_modules/@noble/curves": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.0.tgz", - "integrity": "sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg==", - "dependencies": { - "@noble/hashes": "1.4.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@mysten/sui.js/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@mysten/sui.js/node_modules/@scure/bip32": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", - "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", - "dependencies": { - "@noble/curves": "~1.4.0", - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@mysten/sui.js/node_modules/@scure/bip39": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", - "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", - "dependencies": { - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/@napi-rs/wasm-runtime": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.4.tgz", "integrity": "sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==", "dev": true, + "license": "MIT", "dependencies": { "@emnapi/core": "^1.1.0", "@emnapi/runtime": "^1.1.0", @@ -4017,6 +3476,7 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/@near-js/accounts/-/accounts-0.1.4.tgz", "integrity": "sha512-zHFmL4OUZ4qHXOE+dDBkYgTNHLWC5RmYUVp9LiuGciO5zFPp7WlxmowJL0QjgXqV1w+dNXq3mgmkfAgYVS8Xjw==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/crypto": "0.0.5", @@ -4034,25 +3494,44 @@ } }, "node_modules/@near-js/accounts/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", "optional": true, "dependencies": { - "fast-deep-equal": "^3.1.1", + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "require-from-string": "^2.0.2" }, "funding": { "type": "github", "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/@near-js/accounts/node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@near-js/accounts/node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "license": "MIT", + "optional": true + }, "node_modules/@near-js/accounts/node_modules/borsh": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz", "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==", + "license": "Apache-2.0", "optional": true, "dependencies": { "bn.js": "^5.2.0", @@ -4060,16 +3539,28 @@ "text-encoding-utf-8": "^1.0.2" } }, + "node_modules/@near-js/accounts/node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "license": "MIT", + "optional": true, + "dependencies": { + "base-x": "^3.0.2" + } + }, "node_modules/@near-js/accounts/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT", "optional": true }, "node_modules/@near-js/crypto": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/@near-js/crypto/-/crypto-0.0.5.tgz", "integrity": "sha512-nbQ971iYES5Spiolt+p568gNuZ//HeMHm3qqT3xT+i8ZzgbC//l6oRf48SUVTPAboQ1TJ5dW/NqcxOY0pe7b4g==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/types": "0.0.4", @@ -4078,10 +3569,28 @@ "tweetnacl": "^1.0.1" } }, + "node_modules/@near-js/crypto/node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@near-js/crypto/node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "license": "MIT", + "optional": true + }, "node_modules/@near-js/crypto/node_modules/borsh": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz", "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==", + "license": "Apache-2.0", "optional": true, "dependencies": { "bn.js": "^5.2.0", @@ -4089,10 +3598,21 @@ "text-encoding-utf-8": "^1.0.2" } }, + "node_modules/@near-js/crypto/node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "license": "MIT", + "optional": true, + "dependencies": { + "base-x": "^3.0.2" + } + }, "node_modules/@near-js/keystores": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/@near-js/keystores/-/keystores-0.0.5.tgz", "integrity": "sha512-kxqV+gw/3L8/axe9prhlU+M0hfybkxX54xfI0EEpWP2QiUV+qw+jkKolYIbdk5tdEZrGf9jHawh1yFtwP7APPQ==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/crypto": "0.0.5", @@ -4103,6 +3623,7 @@ "version": "0.0.5", "resolved": "https://registry.npmjs.org/@near-js/keystores-browser/-/keystores-browser-0.0.5.tgz", "integrity": "sha512-mHF3Vcvsr7xnkaM/reOyxtykbE3OWKV6vQzqyTH2tZYT2OTEnj0KhRT9BCFC0Ra67K1zQLbg49Yc/kDCc5qupA==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/crypto": "0.0.5", @@ -4113,6 +3634,7 @@ "version": "0.0.5", "resolved": "https://registry.npmjs.org/@near-js/keystores-node/-/keystores-node-0.0.5.tgz", "integrity": "sha512-BYmWyGNydfAqi7eYA1Jo8zULL13cxejD2VBr0BBIXx5bJ+BO4TLecsY1xdTBEq06jyWXHa7kV4h8BJzAjvpTLg==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/crypto": "0.0.5", @@ -4123,6 +3645,7 @@ "version": "0.0.7", "resolved": "https://registry.npmjs.org/@near-js/providers/-/providers-0.0.7.tgz", "integrity": "sha512-qj16Ey+vSw7lHE85xW+ykYJoLPr4A6Q/TsfpwhJLS6zBInSC6sKVqPO1L8bK4VA/yB7V7JJPor9UVCWgRXdNEA==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/transactions": "0.2.1", @@ -4136,10 +3659,28 @@ "node-fetch": "^2.6.1" } }, + "node_modules/@near-js/providers/node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@near-js/providers/node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "license": "MIT", + "optional": true + }, "node_modules/@near-js/providers/node_modules/borsh": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz", "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==", + "license": "Apache-2.0", "optional": true, "dependencies": { "bn.js": "^5.2.0", @@ -4147,10 +3688,21 @@ "text-encoding-utf-8": "^1.0.2" } }, + "node_modules/@near-js/providers/node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "license": "MIT", + "optional": true, + "dependencies": { + "base-x": "^3.0.2" + } + }, "node_modules/@near-js/signers": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/@near-js/signers/-/signers-0.0.5.tgz", "integrity": "sha512-XJjYYatehxHakHa7WAoiQ8uIBSWBR2EnO4GzlIe8qpWL+LoH4t68MSezC1HwT546y9YHIvePjwDrBeYk8mg20w==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/crypto": "0.0.5", @@ -4162,6 +3714,7 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/@near-js/transactions/-/transactions-0.2.1.tgz", "integrity": "sha512-V9tXzkICDPruSxihKXkBhUgsI4uvW7TwXlnZS2GZpPsFFiIUeGrso0wo4uiQwB6miFA5q6fKaAtQa4F2v1s+zg==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/crypto": "0.0.5", @@ -4173,10 +3726,28 @@ "js-sha256": "^0.9.0" } }, + "node_modules/@near-js/transactions/node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@near-js/transactions/node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "license": "MIT", + "optional": true + }, "node_modules/@near-js/transactions/node_modules/borsh": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz", "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==", + "license": "Apache-2.0", "optional": true, "dependencies": { "bn.js": "^5.2.0", @@ -4184,19 +3755,38 @@ "text-encoding-utf-8": "^1.0.2" } }, + "node_modules/@near-js/transactions/node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "license": "MIT", + "optional": true, + "dependencies": { + "base-x": "^3.0.2" + } + }, "node_modules/@near-js/types": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/@near-js/types/-/types-0.0.4.tgz", "integrity": "sha512-8TTMbLMnmyG06R5YKWuS/qFG1tOA3/9lX4NgBqQPsvaWmDsa+D+QwOkrEHDegped0ZHQwcjAXjKML1S1TyGYKg==", + "license": "ISC", "optional": true, "dependencies": { "bn.js": "5.2.1" } }, + "node_modules/@near-js/types/node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "license": "MIT", + "optional": true + }, "node_modules/@near-js/utils": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/@near-js/utils/-/utils-0.0.4.tgz", "integrity": "sha512-mPUEPJbTCMicGitjEGvQqOe8AS7O4KkRCxqd0xuE/X6gXF1jz1pYMZn4lNUeUz2C84YnVSGLAM0o9zcN6Y4hiA==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/types": "0.0.4", @@ -4205,10 +3795,18 @@ "mustache": "^4.0.0" } }, + "node_modules/@near-js/utils/node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "license": "MIT", + "optional": true + }, "node_modules/@near-js/wallet-account": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/@near-js/wallet-account/-/wallet-account-0.0.7.tgz", "integrity": "sha512-tmRyieG/wHmuNkg/WGFyKD6iH6atHPbY0rZ5OjOIiteuhZEPgp+z8OBpiQ4qumTa63q46aj/QVSQL0J3+JmBfw==", + "license": "ISC", "optional": true, "dependencies": { "@near-js/accounts": "0.1.4", @@ -4222,10 +3820,28 @@ "borsh": "^0.7.0" } }, + "node_modules/@near-js/wallet-account/node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@near-js/wallet-account/node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "license": "MIT", + "optional": true + }, "node_modules/@near-js/wallet-account/node_modules/borsh": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz", "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==", + "license": "Apache-2.0", "optional": true, "dependencies": { "bn.js": "^5.2.0", @@ -4233,45 +3849,60 @@ "text-encoding-utf-8": "^1.0.2" } }, + "node_modules/@near-js/wallet-account/node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "license": "MIT", + "optional": true, + "dependencies": { + "base-x": "^3.0.2" + } + }, "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { "version": "5.1.1-v1", "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", "dev": true, + "license": "MIT", "dependencies": { "eslint-scope": "5.1.1" } }, - "node_modules/@noble/ciphers": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.3.0.tgz", - "integrity": "sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==", + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "license": "MIT", - "engines": { - "node": "^14.21.3 || >=16" + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, - "funding": { - "url": "https://paulmillr.com/funding/" + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" } }, "node_modules/@noble/curves": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.3.0.tgz", - "integrity": "sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.2.tgz", + "integrity": "sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g==", + "license": "MIT", "dependencies": { - "@noble/hashes": "1.3.3" + "@noble/hashes": "1.8.0" }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@noble/curves/node_modules/@noble/hashes": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz", - "integrity": "sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==", "engines": { - "node": ">= 16" + "node": "^14.21.3 || >=16" }, "funding": { "url": "https://paulmillr.com/funding/" @@ -4286,35 +3917,40 @@ "type": "individual", "url": "https://paulmillr.com/funding/" } - ] + ], + "license": "MIT" }, "node_modules/@noble/hashes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz", - "integrity": "sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ] + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", + "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", + "license": "MIT", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } }, "node_modules/@noble/secp256k1": { "version": "1.7.1", "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz", "integrity": "sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==", + "dev": true, "funding": [ { "type": "individual", "url": "https://paulmillr.com/funding/" } - ] + ], + "license": "MIT" }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, + "license": "MIT", "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" @@ -4328,6 +3964,7 @@ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "dev": true, + "license": "MIT", "engines": { "node": ">= 8" } @@ -4337,6 +3974,7 @@ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, + "license": "MIT", "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -4349,6 +3987,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.11.2.tgz", "integrity": "sha512-JEFMTs5Tju+YiCsv6EO+657O/fvPaQ7bkUCkWqHFYFFbCKH1yh0PeRIaqj5h4z4O16ckxbVpAM676ZFTmvFUGQ==", + "dev": true, "license": "MIT", "dependencies": { "@nomicfoundation/edr-darwin-arm64": "0.11.2", @@ -4367,6 +4006,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.11.2.tgz", "integrity": "sha512-/QU0GHeoLFOJp28qK46kkTG849NN/5Qgq9ifKzhqBas1MCqwcdjrUI3raGkvE9SWJevljWd1HdW16fFpxUrzbA==", + "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4376,6 +4016,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.11.2.tgz", "integrity": "sha512-Dam+k00vyYNXCkM7JZGQBm0McNaL6ilbfY8BuIdHU2mpIVO5hpAFk8IQnMnG3FRuXuPJ0JoSTkn1R495T8AKqw==", + "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4385,6 +4026,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.11.2.tgz", "integrity": "sha512-6Z+hZ61c0v5EPVhCAc/rV36eN20GbPRfcmUeFJ3t+RjdY20EiUQzP85YU0q3AgCuwr410W27pazoBoL73cCPbg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4394,6 +4036,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.11.2.tgz", "integrity": "sha512-AqC4AI3pR4vSsEcFyW/6rI1q16wEjIRYIR25IJO/EdBmXdsuVZgxsf/kMUCWQhhTuy89RTgIGTbMAQA0+DfSvA==", + "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4403,6 +4046,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.11.2.tgz", "integrity": "sha512-vz1uiof1ZIi6RnXfHZiAXRgkloLciuYGD1rNDrqm1Pp7Nf0pbxw+e4TBQLoMYKzZn0MYS4u4Fa0AV2S7NjfptQ==", + "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4412,6 +4056,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.11.2.tgz", "integrity": "sha512-ArAbcrWwn+8Ze8JAaA9349N2E7hfs9PYvxDgfhujEH9iVC9XI6L+OhMATPsS3wkOST/+ykxELAF1KT4YjSxcrA==", + "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4421,6 +4066,7 @@ "version": "0.11.2", "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.11.2.tgz", "integrity": "sha512-GDXBhxy5wlmZYQrTXu9Oh9OPTsi4tCdmHy1z8O9XqdH9wsP674Frh6Fb43yjVoS2Ek1F9yX11nexIrFXSuNyJQ==", + "dev": true, "license": "MIT", "engines": { "node": ">= 18" @@ -4446,59 +4092,6 @@ "hardhat": "^2.18.0" } }, - "node_modules/@nomicfoundation/hardhat-ignition/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@nomicfoundation/hardhat-ignition/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@nomicfoundation/hardhat-ignition/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@nomicfoundation/hardhat-ignition/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, "node_modules/@nomicfoundation/hardhat-ignition/node_modules/fs-extra": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", @@ -4514,29 +4107,6 @@ "node": ">=12" } }, - "node_modules/@nomicfoundation/hardhat-ignition/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@nomicfoundation/hardhat-ignition/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@nomicfoundation/hardhat-network-helpers": { "version": "1.0.13", "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-network-helpers/-/hardhat-network-helpers-1.0.13.tgz", @@ -4571,6 +4141,29 @@ "hardhat": "^2.24.1" } }, + "node_modules/@nomicfoundation/hardhat-verify/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@nomicfoundation/hardhat-verify/node_modules/undici": { + "version": "5.29.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", + "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@fastify/busboy": "^2.0.0" + }, + "engines": { + "node": ">=14.0" + } + }, "node_modules/@nomicfoundation/ignition-core": { "version": "0.15.12", "resolved": "https://registry.npmjs.org/@nomicfoundation/ignition-core/-/ignition-core-0.15.12.tgz", @@ -4639,6 +4232,16 @@ "url": "https://paulmillr.com/funding/" } }, + "node_modules/@nomicfoundation/ignition-core/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "node_modules/@nomicfoundation/ignition-core/node_modules/aes-js": { "version": "4.0.0-beta.5", "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-4.0.0-beta.5.tgz", @@ -4710,6 +4313,13 @@ "dev": true, "license": "0BSD" }, + "node_modules/@nomicfoundation/ignition-core/node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true, + "license": "MIT" + }, "node_modules/@nomicfoundation/ignition-core/node_modules/ws": { "version": "8.17.1", "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", @@ -4739,183 +4349,99 @@ "dev": true }, "node_modules/@nomicfoundation/solidity-analyzer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.1.tgz", - "integrity": "sha512-1LMtXj1puAxyFusBgUIy5pZk3073cNXYnXUpuNKFghHbIit/xZgbk0AokpUADbNm3gyD6bFWl3LRFh3dhVdREg==", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.2.tgz", + "integrity": "sha512-q4n32/FNKIhQ3zQGGw5CvPF6GTvDCpYwIf7bEY/dZTZbgfDsHyjJwURxUJf3VQuuJj+fDIFl4+KkBVbw4Ef6jA==", + "dev": true, + "license": "MIT", "engines": { "node": ">= 12" }, "optionalDependencies": { - "@nomicfoundation/solidity-analyzer-darwin-arm64": "0.1.1", - "@nomicfoundation/solidity-analyzer-darwin-x64": "0.1.1", - "@nomicfoundation/solidity-analyzer-freebsd-x64": "0.1.1", - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": "0.1.1", - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": "0.1.1", - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": "0.1.1", - "@nomicfoundation/solidity-analyzer-linux-x64-musl": "0.1.1", - "@nomicfoundation/solidity-analyzer-win32-arm64-msvc": "0.1.1", - "@nomicfoundation/solidity-analyzer-win32-ia32-msvc": "0.1.1", - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": "0.1.1" + "@nomicfoundation/solidity-analyzer-darwin-arm64": "0.1.2", + "@nomicfoundation/solidity-analyzer-darwin-x64": "0.1.2", + "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": "0.1.2", + "@nomicfoundation/solidity-analyzer-linux-arm64-musl": "0.1.2", + "@nomicfoundation/solidity-analyzer-linux-x64-gnu": "0.1.2", + "@nomicfoundation/solidity-analyzer-linux-x64-musl": "0.1.2", + "@nomicfoundation/solidity-analyzer-win32-x64-msvc": "0.1.2" } }, "node_modules/@nomicfoundation/solidity-analyzer-darwin-arm64": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-arm64/-/solidity-analyzer-darwin-arm64-0.1.1.tgz", - "integrity": "sha512-KcTodaQw8ivDZyF+D76FokN/HdpgGpfjc/gFCImdLUyqB6eSWVaZPazMbeAjmfhx3R0zm/NYVzxwAokFKgrc0w==", - "cpu": [ - "arm64" - ], + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-arm64/-/solidity-analyzer-darwin-arm64-0.1.2.tgz", + "integrity": "sha512-JaqcWPDZENCvm++lFFGjrDd8mxtf+CtLd2MiXvMNTBD33dContTZ9TWETwNFwg7JTJT5Q9HEecH7FA+HTSsIUw==", + "dev": true, + "license": "MIT", "optional": true, - "os": [ - "darwin" - ], "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-darwin-x64": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-x64/-/solidity-analyzer-darwin-x64-0.1.1.tgz", - "integrity": "sha512-XhQG4BaJE6cIbjAVtzGOGbK3sn1BO9W29uhk9J8y8fZF1DYz0Doj8QDMfpMu+A6TjPDs61lbsmeYodIDnfveSA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-freebsd-x64": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-freebsd-x64/-/solidity-analyzer-freebsd-x64-0.1.1.tgz", - "integrity": "sha512-GHF1VKRdHW3G8CndkwdaeLkVBi5A9u2jwtlS7SLhBc8b5U/GcoL39Q+1CSO3hYqePNP+eV5YI7Zgm0ea6kMHoA==", - "cpu": [ - "x64" - ], + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-x64/-/solidity-analyzer-darwin-x64-0.1.2.tgz", + "integrity": "sha512-fZNmVztrSXC03e9RONBT+CiksSeYcxI1wlzqyr0L7hsQlK1fzV+f04g2JtQ1c/Fe74ZwdV6aQBdd6Uwl1052sw==", + "dev": true, + "license": "MIT", "optional": true, - "os": [ - "freebsd" - ], "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-linux-arm64-gnu": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-gnu/-/solidity-analyzer-linux-arm64-gnu-0.1.1.tgz", - "integrity": "sha512-g4Cv2fO37ZsUENQ2vwPnZc2zRenHyAxHcyBjKcjaSmmkKrFr64yvzeNO8S3GBFCo90rfochLs99wFVGT/0owpg==", - "cpu": [ - "arm64" - ], + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-gnu/-/solidity-analyzer-linux-arm64-gnu-0.1.2.tgz", + "integrity": "sha512-3d54oc+9ZVBuB6nbp8wHylk4xh0N0Gc+bk+/uJae+rUgbOBwQSfuGIbAZt1wBXs5REkSmynEGcqx6DutoK0tPA==", + "dev": true, + "license": "MIT", "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-linux-arm64-musl": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-musl/-/solidity-analyzer-linux-arm64-musl-0.1.1.tgz", - "integrity": "sha512-WJ3CE5Oek25OGE3WwzK7oaopY8xMw9Lhb0mlYuJl/maZVo+WtP36XoQTb7bW/i8aAdHW5Z+BqrHMux23pvxG3w==", - "cpu": [ - "arm64" - ], + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-musl/-/solidity-analyzer-linux-arm64-musl-0.1.2.tgz", + "integrity": "sha512-iDJfR2qf55vgsg7BtJa7iPiFAsYf2d0Tv/0B+vhtnI16+wfQeTbP7teookbGvAo0eJo7aLLm0xfS/GTkvHIucA==", + "dev": true, + "license": "MIT", "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-linux-x64-gnu": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-gnu/-/solidity-analyzer-linux-x64-gnu-0.1.1.tgz", - "integrity": "sha512-5WN7leSr5fkUBBjE4f3wKENUy9HQStu7HmWqbtknfXkkil+eNWiBV275IOlpXku7v3uLsXTOKpnnGHJYI2qsdA==", - "cpu": [ - "x64" - ], + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-gnu/-/solidity-analyzer-linux-x64-gnu-0.1.2.tgz", + "integrity": "sha512-9dlHMAt5/2cpWyuJ9fQNOUXFB/vgSFORg1jpjX1Mh9hJ/MfZXlDdHQ+DpFCs32Zk5pxRBb07yGvSHk9/fezL+g==", + "dev": true, + "license": "MIT", "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-linux-x64-musl": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-musl/-/solidity-analyzer-linux-x64-musl-0.1.1.tgz", - "integrity": "sha512-KdYMkJOq0SYPQMmErv/63CwGwMm5XHenEna9X9aB8mQmhDBrYrlAOSsIPgFCUSL0hjxE3xHP65/EPXR/InD2+w==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-win32-arm64-msvc": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-arm64-msvc/-/solidity-analyzer-win32-arm64-msvc-0.1.1.tgz", - "integrity": "sha512-VFZASBfl4qiBYwW5xeY20exWhmv6ww9sWu/krWSesv3q5hA0o1JuzmPHR4LPN6SUZj5vcqci0O6JOL8BPw+APg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-win32-ia32-msvc": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-ia32-msvc/-/solidity-analyzer-win32-ia32-msvc-0.1.1.tgz", - "integrity": "sha512-JnFkYuyCSA70j6Si6cS1A9Gh1aHTEb8kOTBApp/c7NRTFGNMH8eaInKlyuuiIbvYFhlXW4LicqyYuWNNq9hkpQ==", - "cpu": [ - "ia32" - ], + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-musl/-/solidity-analyzer-linux-x64-musl-0.1.2.tgz", + "integrity": "sha512-GzzVeeJob3lfrSlDKQw2bRJ8rBf6mEYaWY+gW0JnTDHINA0s2gPR4km5RLIj1xeZZOYz4zRw+AEeYgLRqB2NXg==", + "dev": true, + "license": "MIT", "optional": true, - "os": [ - "win32" - ], "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-win32-x64-msvc": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-x64-msvc/-/solidity-analyzer-win32-x64-msvc-0.1.1.tgz", - "integrity": "sha512-HrVJr6+WjIXGnw3Q9u6KQcbZCtk0caVWhCdFADySvRyUxJ8PnzlaP+MhwNE8oyT8OZ6ejHBRrrgjSqDCFXGirw==", - "cpu": [ - "x64" - ], + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-x64-msvc/-/solidity-analyzer-win32-x64-msvc-0.1.2.tgz", + "integrity": "sha512-Fdjli4DCcFHb4Zgsz0uEJXZ2K7VEO+w5KVv7HmT7WO10iODdU9csC2az4jrhEsRtiR9Gfd74FlG0NYlw1BMdyA==", + "dev": true, + "license": "MIT", "optional": true, - "os": [ - "win32" - ], "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomiclabs/hardhat-ethers": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.0.6.tgz", - "integrity": "sha512-q2Cjp20IB48rEn2NPjR1qxsIQBvFVYW9rFRCFq+bC4RUrn1Ljz3g4wM8uSlgIBZYBi2JMXxmOzFqHraczxq4Ng==", - "license": "MIT", - "peerDependencies": { - "ethers": "^5.0.0", - "hardhat": "^2.0.0" + "node": ">= 12" } }, "node_modules/@npmcli/agent": { @@ -4923,6 +4449,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", "dev": true, + "license": "ISC", "dependencies": { "agent-base": "^7.1.0", "http-proxy-agent": "^7.0.0", @@ -4934,39 +4461,12 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/agent/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", - "dev": true, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "dev": true, - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true - }, - "node_modules/@npmcli/arborist": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-7.5.4.tgz", - "integrity": "sha512-nWtIc6QwwoUORCRNzKx4ypHqCk3drI+5aeYdMTQQiRCcn4lOOgfQh7WyZobGYTxXPSq1VwV53lkpN/BRlRk08g==", + "node_modules/@npmcli/arborist": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-7.5.4.tgz", + "integrity": "sha512-nWtIc6QwwoUORCRNzKx4ypHqCk3drI+5aeYdMTQQiRCcn4lOOgfQh7WyZobGYTxXPSq1VwV53lkpN/BRlRk08g==", "dev": true, + "license": "ISC", "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", "@npmcli/fs": "^3.1.1", @@ -5012,25 +4512,21 @@ } }, "node_modules/@npmcli/arborist/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } }, - "node_modules/@npmcli/arborist/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true - }, "node_modules/@npmcli/arborist/node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -5041,23 +4537,12 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@npmcli/arborist/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@npmcli/fs": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", "dev": true, + "license": "ISC", "dependencies": { "semver": "^7.3.5" }, @@ -5065,23 +4550,12 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/fs/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@npmcli/git": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz", "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/promise-spawn": "^7.0.0", "ini": "^4.1.3", @@ -5102,6 +4576,7 @@ "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -5111,33 +4586,17 @@ "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true, + "license": "ISC", "engines": { "node": ">=16" } }, - "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true - }, - "node_modules/@npmcli/git/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@npmcli/git/node_modules/which": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^3.1.1" }, @@ -5153,6 +4612,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", "dev": true, + "license": "ISC", "dependencies": { "npm-bundled": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" @@ -5169,6 +4629,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz", "integrity": "sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/name-from-folder": "^2.0.0", "glob": "^10.2.2", @@ -5180,39 +4641,21 @@ } }, "node_modules/@npmcli/map-workspaces/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } }, - "node_modules/@npmcli/map-workspaces/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@npmcli/map-workspaces/node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -5228,6 +4671,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-7.1.1.tgz", "integrity": "sha512-Nkxf96V0lAx3HCpVda7Vw4P23RILgdi/5K1fmj2tZkWIYLpXAN8k2UVVOsW16TsS5F8Ws2I7Cm+PU1/rsVF47g==", "dev": true, + "license": "ISC", "dependencies": { "cacache": "^18.0.0", "json-parse-even-better-errors": "^3.0.0", @@ -5239,23 +4683,12 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/metavuln-calculator/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@npmcli/name-from-folder": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz", "integrity": "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -5265,6 +4698,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -5274,6 +4708,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.0.tgz", "integrity": "sha512-qe/kiqqkW0AGtvBjL8TJKZk/eBBSpnJkUWvHdQ9jM2lKHXRYYJuyNpJPlJw3c8QjC2ow6NZYiLExhUaeJelbxQ==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/git": "^5.0.0", "glob": "^10.2.2", @@ -5287,67 +4722,12 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/package-json/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@npmcli/package-json/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@npmcli/package-json/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@npmcli/package-json/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@npmcli/promise-spawn": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz", "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==", "dev": true, + "license": "ISC", "dependencies": { "which": "^4.0.0" }, @@ -5360,6 +4740,7 @@ "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true, + "license": "ISC", "engines": { "node": ">=16" } @@ -5369,6 +4750,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^3.1.1" }, @@ -5384,6 +4766,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/query/-/query-3.1.0.tgz", "integrity": "sha512-C/iR0tk7KSKGldibYIB9x8GtO/0Bd0I2mhOaDb8ucQL/bQVTmGoeREaFj64Z5+iCBRf3dQfed0CjJL7I8iTkiQ==", "dev": true, + "license": "ISC", "dependencies": { "postcss-selector-parser": "^6.0.10" }, @@ -5396,6 +4779,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz", "integrity": "sha512-YgsR5jCQZhVmTJvjduTOIHph0L73pK8xwMVaDY0PatySqVM9AZj93jpoXYSJqfHFxFkN9dmqTw6OiqExsS3LPw==", "dev": true, + "license": "ISC", "engines": { "node": "^16.14.0 || >=18.0.0" } @@ -5405,6 +4789,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz", "integrity": "sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/node-gyp": "^3.0.0", "@npmcli/package-json": "^5.0.0", @@ -5422,6 +4807,7 @@ "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true, + "license": "ISC", "engines": { "node": ">=16" } @@ -5431,6 +4817,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^3.1.1" }, @@ -5442,10 +4829,11 @@ } }, "node_modules/@nx/devkit": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/devkit/-/devkit-20.7.2.tgz", - "integrity": "sha512-6qsQ49T1hWQ8s4JMvGX9k3tpjY4kwr+/2CE1ZCy1txJVFflDatJxdV3fMqUDqo6n81yB6AmVqoSQjQkO6fCRRQ==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/devkit/-/devkit-20.8.2.tgz", + "integrity": "sha512-rr9p2/tZDQivIpuBUpZaFBK6bZ+b5SAjZk75V4tbCUqGW3+5OPuVvBPm+X+7PYwUF6rwSpewxkjWNeGskfCe+Q==", "dev": true, + "license": "MIT", "dependencies": { "ejs": "^3.1.7", "enquirer": "~2.3.6", @@ -5461,31 +4849,21 @@ } }, "node_modules/@nx/devkit/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } }, - "node_modules/@nx/devkit/node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, "node_modules/@nx/devkit/node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -5496,41 +4874,15 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@nx/devkit/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@nx/devkit/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, - "node_modules/@nx/devkit/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, "node_modules/@nx/nx-darwin-arm64": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-20.7.2.tgz", - "integrity": "sha512-ejcAkFpKUR8rsmL86NjBA8WwUf5RlxxlS/3Vz6V59ZJVPsjxsTephyV8z+y8WEyWP4GaDycsc608Me8kijp5EQ==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-20.8.2.tgz", + "integrity": "sha512-t+bmCn6sRPNGU6hnSyWNvbQYA/KgsxGZKYlaCLRwkNhI2akModcBUqtktJzCKd1XHDqs6EkEFBWjFr8/kBEkSg==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -5540,13 +4892,14 @@ } }, "node_modules/@nx/nx-darwin-x64": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-20.7.2.tgz", - "integrity": "sha512-e9FC7QMolZ+RslMOzm4x9ysIIsaTo3Bojcmt6IZ0WofjPqWTvHyMK95Gwz1I3qt0PDygKS5qtmlI1ganybyfpQ==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-20.8.2.tgz", + "integrity": "sha512-pt/wmDLM31Es8/EzazlyT5U+ou2l60rfMNFGCLqleHEQ0JUTc0KWnOciBLbHIQFiPsCQZJFEKyfV5V/ncePmmw==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -5556,13 +4909,14 @@ } }, "node_modules/@nx/nx-freebsd-x64": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-20.7.2.tgz", - "integrity": "sha512-KJ9bqwiOeZPXLvCecfFsFtuSxccZ+0wC/waDGY0Ds2bSevNyb3P3c3HoZJskyQj+roZ5IlawKPO9brE6SKAS9A==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-20.8.2.tgz", + "integrity": "sha512-joZxFbgJfkHkB9uMIJr73Gpnm9pnpvr0XKGbWC409/d2x7q1qK77tKdyhGm+A3+kaZFwstNVPmCUtUwJYyU6LA==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "freebsd" @@ -5572,13 +4926,14 @@ } }, "node_modules/@nx/nx-linux-arm-gnueabihf": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-20.7.2.tgz", - "integrity": "sha512-2j7z7rS7NEtvfosLZn6pzr+WnDQ/XtW3a+o/XMgcD8PkfWFOiAzK1DL8DvXE3G1MJq62jSzw+euahpYHLIkH0w==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-20.8.2.tgz", + "integrity": "sha512-98O/qsxn4vIMPY/FyzvmVrl7C5yFhCUVk0/4PF+PA2SvtQ051L1eMRY6bq/lb69qfN6szJPZ41PG5mPx0NeLZw==", "cpu": [ "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -5588,13 +4943,14 @@ } }, "node_modules/@nx/nx-linux-arm64-gnu": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-20.7.2.tgz", - "integrity": "sha512-tIgHCRe9M4SZ+seG98jE/FoG4/pfvGoEny/TV5V0tYvpMfUlKAU0GdcnP6YZCrQR9iRF6ZsuCZbPf7IuACyXdA==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-20.8.2.tgz", + "integrity": "sha512-h6a+HxwfSpxsi4KpxGgPh9GDBmD2E+XqGCdfYpobabxqEBvlnIlJyuDhlRR06cTWpuNXHpRdrVogmV6m/YbtDg==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -5604,13 +4960,14 @@ } }, "node_modules/@nx/nx-linux-arm64-musl": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-20.7.2.tgz", - "integrity": "sha512-/r4TNzyjhic7DZei6DXfbsfONDp40LbHjn/XcrJ53yI1UHGFunUUQYEDeBbgOcqs0IkRitNSgTDgpkG9UvJ65Q==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-20.8.2.tgz", + "integrity": "sha512-4Ev+jM0VAxDHV/dFgMXjQTCXS4I8W4oMe7FSkXpG8RUn6JK659DC8ExIDPoGIh+Cyqq6r6mw1CSia+ciQWICWQ==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -5620,13 +4977,14 @@ } }, "node_modules/@nx/nx-linux-x64-gnu": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-20.7.2.tgz", - "integrity": "sha512-s/cMSJlJeF+Io+3bWy+wJSemBwKL/IAcXUxLXRSDuaPXv7AoDWctmbfcyLqQJ7Ufcioivvil0XTtD/vkJI0x3A==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-20.8.2.tgz", + "integrity": "sha512-nR0ev+wxu+nQYRd7bhqggOxK7UfkV6h+Ko1mumUFyrM5GvPpz/ELhjJFSnMcOkOMcvH0b6G5uTBJvN1XWCkbmg==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -5636,13 +4994,14 @@ } }, "node_modules/@nx/nx-linux-x64-musl": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-20.7.2.tgz", - "integrity": "sha512-9ZdPQwD4LDhwMOQ1NyYRDNr+6FVOdFeibkO+nN4nhkNBFxK6w2iprebrUKeOvQ1yHttt2YSC5p9bqxP7DVtE7w==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-20.8.2.tgz", + "integrity": "sha512-ost41l5yc2aq2Gc9bMMpaPi/jkXqbXEMEPHrxWKuKmaek3K2zbVDQzvBBNcQKxf/mlCsrqN4QO0mKYSRRqag5A==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -5652,13 +5011,14 @@ } }, "node_modules/@nx/nx-win32-arm64-msvc": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-20.7.2.tgz", - "integrity": "sha512-fSd44rmECiw/HZD9f0mNPRF8zwtx3N3TNU7CRohZtRBVotUgOuQU1XONi1J0V117g8q4VQmmaAO9eMdVxM2ZuQ==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-20.8.2.tgz", + "integrity": "sha512-0SEOqT/daBG5WtM9vOGilrYaAuf1tiALdrFavY62+/arXYxXemUKmRI5qoKDTnvoLMBGkJs6kxhMO5b7aUXIvQ==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -5668,13 +5028,14 @@ } }, "node_modules/@nx/nx-win32-x64-msvc": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-20.7.2.tgz", - "integrity": "sha512-/ApoP28ztk/MSNGHnZ/t4bfvjHwU5kmQan2O3aTOj84vZHOlIk57SncVeCsVnT4XQihNjaSw3cbqLi2PZ+rRUw==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-20.8.2.tgz", + "integrity": "sha512-iIsY+tVqes/NOqTbJmggL9Juie/iaDYlWgXA9IUv88FE9thqWKhVj4/tCcPjsOwzD+1SVna3YISEEFsx5UV4ew==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -5688,6 +5049,7 @@ "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz", "integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18" } @@ -5697,6 +5059,7 @@ "resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.2.1.tgz", "integrity": "sha512-dKYCMuPO1bmrpuogcjQ8z7ICCH3FP6WmxpwC03yjzGfZhj9fTJg6+bS1+UAplekbN2C+M61UNllGOOoAfGCrdQ==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/auth-token": "^4.0.0", "@octokit/graphql": "^7.1.0", @@ -5715,6 +5078,7 @@ "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.6.tgz", "integrity": "sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/types": "^13.1.0", "universal-user-agent": "^6.0.0" @@ -5728,6 +5092,7 @@ "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.1.1.tgz", "integrity": "sha512-3mkDltSfcDUoa176nlGoA32RGjeWjl3K7F/BwHwRMJUW/IteSa4bnSV8p2ThNkcIcZU2umkZWxwETSSCJf2Q7g==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/request": "^8.4.1", "@octokit/types": "^13.0.0", @@ -5741,19 +5106,22 @@ "version": "24.2.0", "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-24.2.0.tgz", "integrity": "sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@octokit/plugin-enterprise-rest": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz", "integrity": "sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@octokit/plugin-paginate-rest": { "version": "11.4.4-cjs.2", "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-11.4.4-cjs.2.tgz", "integrity": "sha512-2dK6z8fhs8lla5PaOTgqfCGBxgAv/le+EhPs27KklPhm1bKObpu6lXzwfUEQ16ajXzqNrKMujsFyo9K2eaoISw==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/types": "^13.7.0" }, @@ -5769,6 +5137,7 @@ "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-4.0.1.tgz", "integrity": "sha512-GihNqNpGHorUrO7Qa9JbAl0dbLnqJVrV8OXe2Zm5/Y4wFkZQDfTreBzVmiRfJVfE4mClXdihHnbpyyO9FSX4HA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18" }, @@ -5781,6 +5150,7 @@ "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-13.3.2-cjs.1.tgz", "integrity": "sha512-VUjIjOOvF2oELQmiFpWA1aOPdawpyaCUqcEBc/UOUnj3Xp6DJGrJ1+bjUIIDzdHjnFNO6q57ODMfdEZnoBkCwQ==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/types": "^13.8.0" }, @@ -5796,6 +5166,7 @@ "resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.4.1.tgz", "integrity": "sha512-qnB2+SY3hkCmBxZsR/MPCybNmbJe4KAlfWErXq+rBKkQJlbjdJeS85VI9r8UqeLYLvnAenU8Q1okM/0MBsAGXw==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/endpoint": "^9.0.6", "@octokit/request-error": "^5.1.1", @@ -5811,6 +5182,7 @@ "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.1.1.tgz", "integrity": "sha512-v9iyEQJH6ZntoENr9/yXxjuezh4My67CBSu9r6Ve/05Iu5gNgnisNWOsoJHTP6k0Rr0+HQIpnH+kyammu90q/g==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/types": "^13.1.0", "deprecation": "^2.0.0", @@ -5825,6 +5197,7 @@ "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-20.1.2.tgz", "integrity": "sha512-GmYiltypkHHtihFwPRxlaorG5R9VAHuk/vbszVoRTGXnAsY60wYLkh/E2XiFmdZmqrisw+9FaazS1i5SbdWYgA==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/core": "^5.0.2", "@octokit/plugin-paginate-rest": "11.4.4-cjs.2", @@ -5840,6 +5213,7 @@ "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.10.0.tgz", "integrity": "sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/openapi-types": "^24.2.0" } @@ -5848,6 +5222,7 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/@open-rpc/client-js/-/client-js-1.8.1.tgz", "integrity": "sha512-vV+Hetl688nY/oWI9IFY0iKDrWuLdYhf7OIKI6U1DcnJV7r4gAgwRJjEr1QVYszUc0gjkHoQJzqevmXMGLyA0g==", + "license": "Apache-2.0", "dependencies": { "isomorphic-fetch": "^3.0.0", "isomorphic-ws": "^5.0.0", @@ -5859,10 +5234,44 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz", "integrity": "sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw==", + "license": "MIT", "peerDependencies": { "ws": "*" } }, + "node_modules/@opentelemetry/api": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz", + "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==", + "license": "Apache-2.0", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@opentelemetry/core": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-2.0.1.tgz", + "integrity": "sha512-MaZk9SJIDgo1peKevlbhP6+IwIiNPNmswNL4AF0WaQJLbHXjr9SrZMgS12+iqr9ToV4ZVosCcc0f8Rg67LXjxw==", + "license": "Apache-2.0", + "dependencies": { + "@opentelemetry/semantic-conventions": "^1.29.0" + }, + "engines": { + "node": "^18.19.0 || >=20.6.0" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.10.0" + } + }, + "node_modules/@opentelemetry/semantic-conventions": { + "version": "1.34.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.34.0.tgz", + "integrity": "sha512-aKcOkyrorBGlajjRdVoJWHTxfxO1vCNHLJVlSDaRHDIdjU+pX8IYQPvPDkYiujKLbRnWU+1TBwEt0QRgSm4SGA==", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + } + }, "node_modules/@openzeppelin/contracts": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.3.0.tgz", @@ -5875,6 +5284,7 @@ "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", "dev": true, + "license": "MIT", "optional": true, "engines": { "node": ">=14" @@ -5883,27 +5293,32 @@ "node_modules/@protobufjs/aspromise": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==" + "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/base64": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" + "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/codegen": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" + "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/eventemitter": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==" + "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/fetch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==", + "license": "BSD-3-Clause", "dependencies": { "@protobufjs/aspromise": "^1.1.1", "@protobufjs/inquire": "^1.1.0" @@ -5912,71 +5327,75 @@ "node_modules/@protobufjs/float": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==" + "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/inquire": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==" + "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/path": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==" + "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/pool": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==" + "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/utf8": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" + "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==", + "license": "BSD-3-Clause" }, "node_modules/@scure/base": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.6.tgz", - "integrity": "sha512-ok9AWwhcgYuGG3Zfhyqg+zwl+Wn5uE+dwC0NV/2qQkx4dABbb/bx96vWu8NSj+BNjjSjno+JRYRjle1jV08k3g==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz", + "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==", + "license": "MIT", "funding": { "url": "https://paulmillr.com/funding/" } }, "node_modules/@scure/bip32": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz", - "integrity": "sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.7.0.tgz", + "integrity": "sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw==", + "license": "MIT", "dependencies": { - "@noble/hashes": "~1.2.0", - "@noble/secp256k1": "~1.7.0", - "@scure/base": "~1.1.0" + "@noble/curves": "~1.9.0", + "@noble/hashes": "~1.8.0", + "@scure/base": "~1.2.5" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/@scure/bip39": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.1.tgz", - "integrity": "sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.6.0.tgz", + "integrity": "sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A==", + "license": "MIT", "dependencies": { - "@noble/hashes": "~1.2.0", - "@scure/base": "~1.1.0" + "@noble/hashes": "~1.8.0", + "@scure/base": "~1.2.5" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/@sentry/core": { "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.30.0.tgz", "integrity": "sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@sentry/hub": "5.30.0", "@sentry/minimal": "5.30.0", @@ -5988,10 +5407,19 @@ "node": ">=6" } }, + "node_modules/@sentry/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, "node_modules/@sentry/hub": { "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.30.0.tgz", "integrity": "sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@sentry/types": "5.30.0", "@sentry/utils": "5.30.0", @@ -6001,10 +5429,19 @@ "node": ">=6" } }, + "node_modules/@sentry/hub/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, "node_modules/@sentry/minimal": { "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.30.0.tgz", "integrity": "sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@sentry/hub": "5.30.0", "@sentry/types": "5.30.0", @@ -6014,10 +5451,19 @@ "node": ">=6" } }, + "node_modules/@sentry/minimal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, "node_modules/@sentry/node": { "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/node/-/node-5.30.0.tgz", "integrity": "sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@sentry/core": "5.30.0", "@sentry/hub": "5.30.0", @@ -6033,10 +5479,46 @@ "node": ">=6" } }, + "node_modules/@sentry/node/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/@sentry/node/node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sentry/node/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, "node_modules/@sentry/tracing": { "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-5.30.0.tgz", "integrity": "sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==", + "dev": true, + "license": "MIT", "dependencies": { "@sentry/hub": "5.30.0", "@sentry/minimal": "5.30.0", @@ -6048,10 +5530,19 @@ "node": ">=6" } }, + "node_modules/@sentry/tracing/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, "node_modules/@sentry/types": { "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.30.0.tgz", "integrity": "sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw==", + "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=6" } @@ -6060,6 +5551,8 @@ "version": "5.30.0", "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.30.0.tgz", "integrity": "sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@sentry/types": "5.30.0", "tslib": "^1.9.3" @@ -6068,11 +5561,19 @@ "node": ">=6" } }, + "node_modules/@sentry/utils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, "node_modules/@sigstore/bundle": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz", "integrity": "sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "@sigstore/protobuf-specs": "^0.3.2" }, @@ -6085,6 +5586,7 @@ "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz", "integrity": "sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==", "dev": true, + "license": "Apache-2.0", "engines": { "node": "^16.14.0 || >=18.0.0" } @@ -6094,6 +5596,7 @@ "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.3.tgz", "integrity": "sha512-RpacQhBlwpBWd7KEJsRKcBQalbV28fvkxwTOJIqhIuDysMMaJW47V4OqW30iJB9uRpqOSxxEAQFdr8tTattReQ==", "dev": true, + "license": "Apache-2.0", "engines": { "node": "^18.17.0 || >=20.5.0" } @@ -6103,6 +5606,7 @@ "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz", "integrity": "sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "@sigstore/bundle": "^2.3.2", "@sigstore/core": "^1.0.0", @@ -6120,6 +5624,7 @@ "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz", "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==", "dev": true, + "license": "Apache-2.0", "dependencies": { "@sigstore/protobuf-specs": "^0.3.2", "tuf-js": "^2.2.1" @@ -6133,6 +5638,7 @@ "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz", "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==", "dev": true, + "license": "Apache-2.0", "dependencies": { "@sigstore/bundle": "^2.3.2", "@sigstore/core": "^1.1.0", @@ -6146,12 +5652,14 @@ "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@sindresorhus/is": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "license": "MIT", "optional": true, "engines": { "node": ">=10" @@ -6164,47 +5672,53 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "license": "BSD-3-Clause", "dependencies": { "type-detect": "4.0.8" } }, + "node_modules/@sinonjs/commons/node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/@sinonjs/fake-timers": { "version": "10.3.0", "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.0" } }, "node_modules/@sinonjs/samsam": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz", - "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.2.tgz", + "integrity": "sha512-v46t/fwnhejRSFTGqbpn9u+LQ9xJDse10gNnPgAcxgdoCDMXj/G2asWAC/8Qs+BAZDicX+MNZouXT1A7c83kVw==", + "license": "BSD-3-Clause", "dependencies": { - "@sinonjs/commons": "^2.0.0", + "@sinonjs/commons": "^3.0.1", "lodash.get": "^4.4.2", - "type-detect": "^4.0.8" - } - }, - "node_modules/@sinonjs/samsam/node_modules/@sinonjs/commons": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", - "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", - "dependencies": { - "type-detect": "4.0.8" + "type-detect": "^4.1.0" } }, "node_modules/@sinonjs/text-encoding": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", - "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==" + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.3.tgz", + "integrity": "sha512-DE427ROAphMQzU4ENbliGYrBSYPXF+TtLg9S8vzeA+OF4ZKzoDdzfL8sxuMUGS/lgRhM6j1URSk9ghf7Xo1tyA==", + "license": "(Unlicense OR Apache-2.0)" }, "node_modules/@solidity-parser/parser": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.14.5.tgz", "integrity": "sha512-6dKnHZn7fg/iQATVEzqyUOyEidbn05q7YA2mQ9hC0MMXhhV3/JrsxmFSYZAcr7j1yUP700LLhTruvJ3MiQmjJg==", "dev": true, + "license": "MIT", "dependencies": { "antlr4ts": "^0.5.0-alpha.4" } @@ -6212,12 +5726,23 @@ "node_modules/@suchipi/femver": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@suchipi/femver/-/femver-1.0.0.tgz", - "integrity": "sha512-bprE8+K5V+DPX7q2e2K57ImqNBdfGHDIWaGI5xHxZoxbKOuQZn4wzPiUxOAHnsUr3w3xHrWXwN7gnG/iIuEMIg==" + "integrity": "sha512-bprE8+K5V+DPX7q2e2K57ImqNBdfGHDIWaGI5xHxZoxbKOuQZn4wzPiUxOAHnsUr3w3xHrWXwN7gnG/iIuEMIg==", + "license": "MIT" + }, + "node_modules/@swc/helpers": { + "version": "0.5.17", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.17.tgz", + "integrity": "sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + } }, "node_modules/@szmarczak/http-timer": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "license": "MIT", "optional": true, "dependencies": { "defer-to-connect": "^2.0.0" @@ -6227,34 +5752,39 @@ } }, "node_modules/@tsconfig/node10": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.10.tgz", - "integrity": "sha512-PiaIWIoPvO6qm6t114ropMCagj6YAF24j9OkCA2mJDXFnlionEwhsBCJ8yek4aib575BI3OkART/90WsgHgLWw==", - "devOptional": true + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "dev": true, + "license": "MIT" }, "node_modules/@tsconfig/node12": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "devOptional": true + "dev": true, + "license": "MIT" }, "node_modules/@tsconfig/node14": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "devOptional": true + "dev": true, + "license": "MIT" }, "node_modules/@tsconfig/node16": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "devOptional": true + "dev": true, + "license": "MIT" }, "node_modules/@tufjs/canonical-json": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", "dev": true, + "license": "MIT", "engines": { "node": "^16.14.0 || >=18.0.0" } @@ -6264,6 +5794,7 @@ "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz", "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==", "dev": true, + "license": "MIT", "dependencies": { "@tufjs/canonical-json": "2.0.0", "minimatch": "^9.0.4" @@ -6273,10 +5804,11 @@ } }, "node_modules/@tufjs/models/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } @@ -6286,6 +5818,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -6301,16 +5834,11 @@ "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", "dev": true, + "license": "MIT", "dependencies": { "tslib": "^2.4.0" } }, - "node_modules/@tybys/wasm-util/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, "node_modules/@typechain/ethers-v5": { "version": "10.2.1", "resolved": "https://registry.npmjs.org/@typechain/ethers-v5/-/ethers-v5-10.2.1.tgz", @@ -6335,6 +5863,7 @@ "resolved": "https://registry.npmjs.org/@typechain/hardhat/-/hardhat-6.1.6.tgz", "integrity": "sha512-BiVnegSs+ZHVymyidtK472syodx1sXYlYJJixZfRstHVGYTi8V1O7QG4nsjyb0PC/LORcq7sfBUcHto1y6UgJA==", "dev": true, + "license": "MIT", "dependencies": { "fs-extra": "^9.1.0" }, @@ -6352,6 +5881,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, + "license": "MIT", "dependencies": { "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", @@ -6367,6 +5897,7 @@ "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dev": true, + "license": "MIT", "dependencies": { "@babel/parser": "^7.20.7", "@babel/types": "^7.20.7", @@ -6376,10 +5907,11 @@ } }, "node_modules/@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/types": "^7.0.0" } @@ -6389,24 +5921,28 @@ "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "dev": true, + "license": "MIT", "dependencies": { "@babel/parser": "^7.1.0", "@babel/types": "^7.0.0" } }, "node_modules/@types/babel__traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", - "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", "dev": true, + "license": "MIT", "dependencies": { "@babel/types": "^7.20.7" } }, "node_modules/@types/bn.js": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.5.tgz", - "integrity": "sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q==", + "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*" } @@ -6415,6 +5951,7 @@ "version": "6.0.3", "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "license": "MIT", "optional": true, "dependencies": { "@types/http-cache-semantics": "*", @@ -6424,26 +5961,30 @@ } }, "node_modules/@types/chai": { - "version": "4.3.14", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.14.tgz", - "integrity": "sha512-Wj71sXE4Q4AkGdG9Tvq1u/fquNz9EdG4LIJMwVVII7ashjD/8cf8fyIfJAjRr6YcsXnSE8cOGQPq1gqeR8z+3w==", - "dev": true - }, - "node_modules/@types/chai-as-promised": { - "version": "7.1.8", - "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz", - "integrity": "sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==", + "version": "4.3.20", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", + "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", "dev": true, - "license": "MIT", - "dependencies": { - "@types/chai": "*" - } + "license": "MIT" + }, + "node_modules/@types/command-line-args": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/@types/command-line-args/-/command-line-args-5.2.3.tgz", + "integrity": "sha512-uv0aG6R0Y8WHZLTamZwtfsDLVRnOa+n+n5rEvFWL5Na5gZ8V2Teab/duDPFzIIIhs9qizDpcavCusCLJZu62Kw==", + "license": "MIT" + }, + "node_modules/@types/command-line-usage": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@types/command-line-usage/-/command-line-usage-5.0.4.tgz", + "integrity": "sha512-BwR5KP3Es/CSht0xqBcUXS3qCAUVXwpRKsV2+arxeb65atasuXG9LykC9Ab10Cw3s2raH92ZqOeILaQbsB2ACg==", + "license": "MIT" }, "node_modules/@types/concat-stream": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz", "integrity": "sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*" } @@ -6452,21 +5993,17 @@ "version": "4.1.12", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "license": "MIT", "dependencies": { "@types/ms": "*" } }, - "node_modules/@types/estree": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", - "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", - "dev": true - }, "node_modules/@types/form-data": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz", "integrity": "sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*" } @@ -6476,6 +6013,7 @@ "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-11.0.4.tgz", "integrity": "sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/jsonfile": "*", "@types/node": "*" @@ -6486,6 +6024,7 @@ "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", "dev": true, + "license": "MIT", "dependencies": { "@types/minimatch": "*", "@types/node": "*" @@ -6496,6 +6035,7 @@ "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*" } @@ -6504,19 +6044,22 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "license": "MIT", "optional": true }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/istanbul-lib-report": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "dev": true, + "license": "MIT", "dependencies": { "@types/istanbul-lib-coverage": "*" } @@ -6526,15 +6069,17 @@ "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/istanbul-lib-report": "*" } }, "node_modules/@types/jest": { - "version": "29.5.12", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", - "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, + "license": "MIT", "dependencies": { "expect": "^29.0.0", "pretty-format": "^29.0.0" @@ -6544,22 +6089,25 @@ "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/@types/jsonfile": { "version": "6.1.4", "resolved": "https://registry.npmjs.org/@types/jsonfile/-/jsonfile-6.1.4.tgz", "integrity": "sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*" } }, "node_modules/@types/keccak": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/keccak/-/keccak-3.0.4.tgz", - "integrity": "sha512-hdnkmbie7tE0yXnQQvlIOqCyjEsoXDVEZ3ACqO+F305XgUOW4Z9ElWdogCXXRAW/khnZ7GxM0t/BGB5bORKt/g==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/keccak/-/keccak-3.0.5.tgz", + "integrity": "sha512-Mvu4StIJ9KyfPXDVRv3h0fWNBAjHPBQZ8EPcxhqA8FG6pLzxtytVXU5owB6J2/8xZ+ZspWTXJEUjAHt0pk0I1Q==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*" } @@ -6568,38 +6116,45 @@ "version": "3.1.4", "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "license": "MIT", "optional": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/lodash": { - "version": "4.17.0", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.0.tgz", - "integrity": "sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==", - "dev": true + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==", + "dev": true, + "license": "MIT" }, "node_modules/@types/long": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", - "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" + "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==", + "license": "MIT" }, "node_modules/@types/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" + "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==", + "dev": true, + "license": "MIT" }, "node_modules/@types/minimatch": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/minimist": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/mocha": { "version": "10.0.10", @@ -6611,38 +6166,35 @@ "node_modules/@types/ms": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", - "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==" + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "license": "MIT" }, "node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "version": "24.0.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.10.tgz", + "integrity": "sha512-ENHwaH+JIRTDIEEbDK6QSQntAYGtbvdDXnMXnZaZ6k13Du1dPMmprkEHIL7ok2Wl2aZevetwTAb5S+7yIF+enA==", "license": "MIT", "dependencies": { - "undici-types": "~6.19.2" + "undici-types": "~7.8.0" } }, "node_modules/@types/node-fetch": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.11.tgz", - "integrity": "sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==", + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*", "form-data": "^4.0.0" } }, - "node_modules/@types/node/node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "license": "MIT" - }, "node_modules/@types/normalize-package-data": { "version": "2.4.4", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/pbkdf2": { "version": "3.1.2", @@ -6658,18 +6210,21 @@ "version": "2.7.3", "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/qs": { - "version": "6.9.14", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.14.tgz", - "integrity": "sha512-5khscbd3SwWMhFqylJBLQ0zIu7c1K6Vz0uBIt915BI3zV0q1nfjRQD3RqSBcPaO6PHEF4ov/t9y89fSiyThlPA==", - "dev": true + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.14.0.tgz", + "integrity": "sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==", + "dev": true, + "license": "MIT" }, "node_modules/@types/responselike": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "license": "MIT", "optional": true, "dependencies": { "@types/node": "*" @@ -6686,15 +6241,17 @@ } }, "node_modules/@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", - "dev": true + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", + "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", + "dev": true, + "license": "MIT" }, "node_modules/@types/sinon": { - "version": "17.0.3", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz", - "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==", + "version": "17.0.4", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.4.tgz", + "integrity": "sha512-RHnIrhfPO3+tJT0s7cFaXGZvsL4bbR3/k7z3P312qMS4JaS2Tk+KiwiLx1S0rQ56ERj00u1/BtdyVd0FY+Pdew==", + "license": "MIT", "dependencies": { "@types/sinonjs__fake-timers": "*" } @@ -6702,24 +6259,28 @@ "node_modules/@types/sinonjs__fake-timers": { "version": "8.1.5", "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", - "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==" + "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==", + "license": "MIT" }, "node_modules/@types/stack-utils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", - "dev": true - }, + "dev": true, + "license": "MIT" + }, "node_modules/@types/triple-beam": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", - "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==" + "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==", + "license": "MIT" }, "node_modules/@types/yargs": { - "version": "17.0.32", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", - "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", "dev": true, + "license": "MIT", "dependencies": { "@types/yargs-parser": "*" } @@ -6728,13 +6289,15 @@ "version": "21.0.3", "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "5.62.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", "dev": true, + "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.4.0", "@typescript-eslint/scope-manager": "5.62.0", @@ -6764,44 +6327,12 @@ } } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@typescript-eslint/parser": { "version": "5.62.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "@typescript-eslint/scope-manager": "5.62.0", "@typescript-eslint/types": "5.62.0", @@ -6829,6 +6360,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/types": "5.62.0", "@typescript-eslint/visitor-keys": "5.62.0" @@ -6846,6 +6378,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/typescript-estree": "5.62.0", "@typescript-eslint/utils": "5.62.0", @@ -6873,6 +6406,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", "dev": true, + "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -6886,6 +6420,7 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "@typescript-eslint/types": "5.62.0", "@typescript-eslint/visitor-keys": "5.62.0", @@ -6908,44 +6443,12 @@ } } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@typescript-eslint/utils": { "version": "5.62.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", "dev": true, + "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@types/json-schema": "^7.0.9", @@ -6967,44 +6470,36 @@ "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/@typescript-eslint/utils/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "yallist": "^4.0.0" + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, "engines": { - "node": ">=10" + "node": ">=8.0.0" } }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/@typescript-eslint/utils/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, + "license": "BSD-2-Clause", "engines": { - "node": ">=10" + "node": ">=4.0" } }, - "node_modules/@typescript-eslint/utils/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@typescript-eslint/visitor-keys": { "version": "5.62.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", "dev": true, + "license": "MIT", "dependencies": { "@typescript-eslint/types": "5.62.0", "eslint-visitor-keys": "^3.3.0" @@ -7017,24 +6512,20 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } + "license": "ISC" }, "node_modules/@updated-axelar-network/axelar-gmp-sdk-solidity": { "name": "@axelar-network/axelar-gmp-sdk-solidity", - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/@axelar-network/axelar-gmp-sdk-solidity/-/axelar-gmp-sdk-solidity-6.0.4.tgz", - "integrity": "sha512-o8pv+krIAlEwzid0Ac8qwykDsavc+1DRPvyFQ3V0R0zTQFtYLJIIXXXt7FRb8b+LJDAuX+E0bB3N2X+hlcxk/g==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/@axelar-network/axelar-gmp-sdk-solidity/-/axelar-gmp-sdk-solidity-6.0.6.tgz", + "integrity": "sha512-XIcDlr1HoYSqcxuvvusILmiqerh2bL9NJLwU4lFBAJK5E/st/q3Em9ropBBZML9iuUZ+hDsch8Ev9rMO+ulaSQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=18" } @@ -7043,13 +6534,15 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true + "dev": true, + "license": "BSD-2-Clause" }, "node_modules/@yarnpkg/parsers": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.2.tgz", "integrity": "sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "js-yaml": "^3.10.0", "tslib": "^2.4.0" @@ -7063,28 +6556,17 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, + "license": "MIT", "dependencies": { "sprintf-js": "~1.0.2" } }, - "node_modules/@yarnpkg/parsers/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@yarnpkg/parsers/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -7097,19 +6579,15 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/@yarnpkg/parsers/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/@zkochan/js-yaml": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz", "integrity": "sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -7122,15 +6600,17 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/acorn": { - "version": "8.14.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", - "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", - "devOptional": true, + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "dev": true, + "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -7143,15 +6623,20 @@ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, + "license": "MIT", "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", - "devOptional": true, + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, "engines": { "node": ">=0.4.0" } @@ -7160,12 +6645,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/adm-zip": { "version": "0.4.16", "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", + "dev": true, + "license": "MIT", "engines": { "node": ">=0.3.0" } @@ -7173,23 +6661,25 @@ "node_modules/aes-js": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", - "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==" + "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==", + "license": "MIT" }, "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dependencies": { - "debug": "4" - }, + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "dev": true, + "license": "MIT", "engines": { - "node": ">= 6.0.0" + "node": ">= 14" } }, "node_modules/aggregate-error": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "license": "MIT", "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -7203,6 +6693,7 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -7218,6 +6709,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "license": "MIT", "optional": true, "dependencies": { "ajv": "^8.0.0" @@ -7232,15 +6724,16 @@ } }, "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", "optional": true, "dependencies": { - "fast-deep-equal": "^3.1.1", + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "require-from-string": "^2.0.2" }, "funding": { "type": "github", @@ -7251,6 +6744,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT", "optional": true }, "node_modules/amdefine": { @@ -7258,6 +6752,7 @@ "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==", "dev": true, + "license": "BSD-3-Clause OR MIT", "optional": true, "engines": { "node": ">=0.4.2" @@ -7267,6 +6762,8 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dev": true, + "license": "ISC", "dependencies": { "string-width": "^4.1.0" } @@ -7275,6 +6772,8 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -7283,6 +6782,8 @@ "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", "dependencies": { "type-fest": "^0.21.3" }, @@ -7293,31 +6794,49 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", "dependencies": { - "color-convert": "^1.9.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, "node_modules/antlr4": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.13.1.tgz", - "integrity": "sha512-kiXTspaRYvnIArgE97z5YVVf/cDVQABr3abFRR6mE7yesLMkgu4ujuyV/sgxafQ8wgve0DJQUJ38Z8tkgA2izA==", + "version": "4.13.2", + "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.13.2.tgz", + "integrity": "sha512-QiVbZhyy4xAZ17UPEuG3YTOt8ZaoeOR1CvEAqrEsDBsOqINslaB147i9xqljZqoyf5S+EUlGStaj+t22LT9MOg==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=16" } @@ -7326,12 +6845,15 @@ "version": "0.5.0-alpha.4", "resolved": "https://registry.npmjs.org/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz", "integrity": "sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -7340,16 +6862,54 @@ "node": ">= 8" } }, + "node_modules/apache-arrow": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/apache-arrow/-/apache-arrow-19.0.1.tgz", + "integrity": "sha512-APmMLzS4qbTivLrPdQXexGM4JRr+0g62QDaobzEvip/FdQIrv2qLy0mD5Qdmw4buydtVJgbFeKR8f59I6PPGDg==", + "license": "Apache-2.0", + "dependencies": { + "@swc/helpers": "^0.5.11", + "@types/command-line-args": "^5.2.3", + "@types/command-line-usage": "^5.0.4", + "@types/node": "^20.13.0", + "command-line-args": "^6.0.1", + "command-line-usage": "^7.0.1", + "flatbuffers": "^24.3.25", + "json-bignum": "^0.0.3", + "tslib": "^2.6.2" + }, + "bin": { + "arrow2csv": "bin/arrow2csv.js" + } + }, + "node_modules/apache-arrow/node_modules/@types/node": { + "version": "20.19.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.4.tgz", + "integrity": "sha512-OP+We5WV8Xnbuvw0zC2m4qfB/BJvjyCwtNjhHdJxV1639SGSKrLmJkc3fMnp2Qy8nJyHp8RO6umxELN/dS1/EA==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/apache-arrow/node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "license": "MIT" + }, "node_modules/aproba": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/aptos": { "version": "1.3.16", "resolved": "https://registry.npmjs.org/aptos/-/aptos-1.3.16.tgz", "integrity": "sha512-LxI4XctQ5VeL+HokjwuGPwsb1fcydLIn4agFXyhn7hSYosTLNRxQ3UIixyP4Fmv6qPBjQVu8hELVSlThQk/EjA==", + "deprecated": "Package aptos is no longer supported, please migrate to https://www.npmjs.com/package/@aptos-labs/ts-sdk", + "license": "Apache-2.0", "dependencies": { "@noble/hashes": "1.1.3", "@scure/bip39": "1.1.0", @@ -7370,7 +6930,17 @@ "type": "individual", "url": "https://paulmillr.com/funding/" } - ] + ], + "license": "MIT" + }, + "node_modules/aptos/node_modules/@scure/base": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", + "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", + "license": "MIT", + "funding": { + "url": "https://paulmillr.com/funding/" + } }, "node_modules/aptos/node_modules/@scure/bip39": { "version": "1.1.0", @@ -7382,6 +6952,7 @@ "url": "https://paulmillr.com/funding/" } ], + "license": "MIT", "dependencies": { "@noble/hashes": "~1.1.1", "@scure/base": "~1.1.0" @@ -7391,39 +6962,57 @@ "version": "0.27.2", "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "license": "MIT", "dependencies": { "follow-redirects": "^1.14.9", "form-data": "^4.0.0" } }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "devOptional": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/array-back": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz", - "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==", + "node_modules/aptos/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", "dev": true, + "license": "MIT" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" + }, + "node_modules/array-back": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-6.2.2.tgz", + "integrity": "sha512-gUAZ7HPyb4SJczXAMUXMGAvI976JoK3qEx9v1FTmeYuJj0IBiaKttG1ydtGKdkfqWkIkouke7nG8ufGy77+Cvw==", + "license": "MIT", "engines": { - "node": ">=6" + "node": ">=12.17" } }, "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", - "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" }, "engines": { "node": ">= 0.4" @@ -7437,6 +7026,7 @@ "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -7445,13 +7035,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -7461,24 +7053,25 @@ "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", - "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", "dev": true, + "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" }, "engines": { "node": ">= 0.4" @@ -7492,6 +7085,7 @@ "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -7500,13 +7094,15 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/assertion-error": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", "dev": true, + "license": "MIT", "engines": { "node": "*" } @@ -7515,31 +7111,46 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/ast-parents/-/ast-parents-0.0.1.tgz", "integrity": "sha512-XHusKxKz3zoYk1ic8Un640joHbFMhbqneyoZfoKnEGtf2ey9Uh/IdpcQplODdO/kENaMIWsD0nJm4+wX3UNLHA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/astral-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "license": "MIT" + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" }, "node_modules/at-least-node": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", "dev": true, + "license": "ISC", "engines": { "node": ">= 4.0.0" } @@ -7548,7 +7159,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, + "license": "MIT", "dependencies": { "possible-typed-array-names": "^1.0.0" }, @@ -7560,9 +7171,10 @@ } }, "node_modules/axios": { - "version": "1.8.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", - "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.10.0.tgz", + "integrity": "sha512-/1xYAC4MP/HEG+3duIhFr4ZQXR4sQXOIe+o6sdqzeykGLx6Upp/1p8MHqhINOvGeP7xyNHe7tsiJByc4SSVUxw==", + "license": "MIT", "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", @@ -7574,6 +7186,7 @@ "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "dev": true, + "license": "MIT", "dependencies": { "@jest/transform": "^29.7.0", "@types/babel__core": "^7.1.14", @@ -7590,81 +7203,12 @@ "@babel/core": "^7.8.0" } }, - "node_modules/babel-jest/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/babel-jest/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/babel-jest/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/babel-jest/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/babel-jest/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-jest/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", "@istanbuljs/load-nyc-config": "^1.0.0", @@ -7681,6 +7225,7 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@babel/core": "^7.12.3", "@babel/parser": "^7.14.7", @@ -7692,11 +7237,22 @@ "node": ">=8" } }, + "node_modules/babel-plugin-istanbul/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/babel-plugin-jest-hoist": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/template": "^7.3.3", "@babel/types": "^7.3.3", @@ -7708,23 +7264,27 @@ } }, "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" }, "peerDependencies": { "@babel/core": "^7.0.0" @@ -7735,6 +7295,7 @@ "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", "dev": true, + "license": "MIT", "dependencies": { "babel-plugin-jest-hoist": "^29.6.3", "babel-preset-current-node-syntax": "^1.0.0" @@ -7754,16 +7315,15 @@ "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "devOptional": true, + "license": "MIT" }, "node_modules/base-x": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", - "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", - "devOptional": true, - "dependencies": { - "safe-buffer": "^5.0.1" - } + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-4.0.1.tgz", + "integrity": "sha512-uAZ8x6r6S3aUM9rbHGVOIsR15U/ZSc82b3ymnCPsT45Gk1DDvhDPdIgB5MrhirZWt+5K0EEPQH985kNqZgNPFw==", + "license": "MIT" }, "node_modules/base64-js": { "version": "1.5.1", @@ -7782,12 +7342,14 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/base64url": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "license": "MIT", "optional": true, "engines": { "node": ">=6.0.0" @@ -7796,18 +7358,21 @@ "node_modules/bech32": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", - "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" + "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==", + "license": "MIT" }, "node_modules/before-after-hook": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, "node_modules/bignumber.js": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz", - "integrity": "sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.3.0.tgz", + "integrity": "sha512-EM7aMFTXbptt/wZdMlBv2t8IViwQL+h6SLHosp8Yf0dqJMTnY6iL32opnAB6kAdL0SZPuvcAzFr31o0c/R3/RA==", + "license": "MIT", "engines": { "node": "*" } @@ -7817,6 +7382,7 @@ "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-4.0.4.tgz", "integrity": "sha512-cMtq4W5ZsEwcutJrVId+a/tjt8GSbS+h0oNkdl6+6rBuEv8Ot33Bevj5KPm40t309zuhVic8NjpuL42QCiJWWA==", "dev": true, + "license": "ISC", "dependencies": { "cmd-shim": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -7827,35 +7393,12 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/bin-links/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/bin-links/node_modules/write-file-atomic": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -7866,63 +7409,35 @@ "node_modules/bintrees": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bintrees/-/bintrees-1.0.2.tgz", - "integrity": "sha512-VOMgTMwjAaUG580SXn3LacVgjurrbMme7ZZNYGSSV7mmtY6QQRh0Eg3pwIcntQ77DErK1L0NxkbetjcoXzVwKw==" + "integrity": "sha512-VOMgTMwjAaUG580SXn3LacVgjurrbMme7ZZNYGSSV7mmtY6QQRh0Eg3pwIcntQ77DErK1L0NxkbetjcoXzVwKw==", + "license": "MIT" }, "node_modules/bip39": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/bip39/-/bip39-3.0.2.tgz", - "integrity": "sha512-J4E1r2N0tUylTKt07ibXvhpT2c5pyAFgvuA5q1H9uDy6dEGpjV8jmymh3MTYJDLCNbIVClSB9FbND49I6N24MQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bip39/-/bip39-3.1.0.tgz", + "integrity": "sha512-c9kiwdk45Do5GL0vJMe7tS95VjCii65mYAH7DfWl3uW8AVzXKQVUm64i3hzVybBDMp9r7j9iNxR85+ul8MdN/A==", + "license": "ISC", "dependencies": { - "@types/node": "11.11.6", - "create-hash": "^1.1.0", - "pbkdf2": "^3.0.9", - "randombytes": "^2.0.1" + "@noble/hashes": "^1.2.0" } }, - "node_modules/bip39/node_modules/@types/node": { - "version": "11.11.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-11.11.6.tgz", - "integrity": "sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ==" - }, "node_modules/bl": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, + "license": "MIT", "dependencies": { "buffer": "^5.5.0", "inherits": "^2.0.4", "readable-stream": "^3.4.0" } }, - "node_modules/bl/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, "node_modules/blake2b": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/blake2b/-/blake2b-2.1.3.tgz", "integrity": "sha512-pkDss4xFVbMb4270aCyGD3qLv92314Et+FsKzilCLxDz5DuZ2/1g3w4nmBbu6nKApPspnjG7JcwTjGZnduB1yg==", + "license": "ISC", "dependencies": { "blake2b-wasm": "^1.1.0", "nanoassert": "^1.0.0" @@ -7932,6 +7447,7 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/blake2b-wasm/-/blake2b-wasm-1.1.7.tgz", "integrity": "sha512-oFIHvXhlz/DUgF0kq5B1CqxIDjIJwh9iDeUUGQUcvgiGz7Wdw03McEO7CfLBy7QKGdsydcMCgO9jFNBAFCtFcA==", + "license": "MIT", "dependencies": { "nanoassert": "^1.0.0" } @@ -7944,14 +7460,16 @@ "license": "MIT" }, "node_modules/bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.2.tgz", + "integrity": "sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==", + "license": "MIT" }, "node_modules/borsh": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.5.0.tgz", "integrity": "sha512-p9w/qGBeeFdUf2GPBPHdX5JQyez8K5VtoFN7PqSfmR+cVUMSmcwAKhP9n2aXoDSKbtS7xZlZt3MVnrJL7GdYhg==", + "license": "Apache-2.0", "optional": true, "dependencies": { "bn.js": "^5.2.0", @@ -7959,10 +7477,32 @@ "text-encoding-utf-8": "^1.0.2" } }, + "node_modules/borsh/node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/borsh/node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "license": "MIT", + "optional": true, + "dependencies": { + "base-x": "^3.0.2" + } + }, "node_modules/boxen": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dev": true, + "license": "MIT", "dependencies": { "ansi-align": "^3.0.0", "camelcase": "^6.2.0", @@ -7980,86 +7520,43 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/boxen/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, + "node_modules/boxen/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/boxen/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/boxen/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/boxen/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/boxen/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/boxen/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", "dependencies": { - "has-flag": "^4.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "devOptional": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -8069,6 +7566,8 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", "dependencies": { "fill-range": "^7.1.1" }, @@ -8079,12 +7578,15 @@ "node_modules/brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "license": "MIT" }, "node_modules/browser-stdout": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==" + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true, + "license": "ISC" }, "node_modules/browserify-aes": { "version": "1.2.0", @@ -8102,9 +7604,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.25.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.1.tgz", + "integrity": "sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==", "dev": true, "funding": [ { @@ -8120,11 +7622,12 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "caniuse-lite": "^1.0.30001726", + "electron-to-chromium": "^1.5.173", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.3" }, "bin": { "browserslist": "cli.js" @@ -8138,6 +7641,7 @@ "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", "dev": true, + "license": "MIT", "dependencies": { "fast-json-stable-stringify": "2.x" }, @@ -8146,12 +7650,12 @@ } }, "node_modules/bs58": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", - "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", - "devOptional": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-5.0.0.tgz", + "integrity": "sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==", + "license": "MIT", "dependencies": { - "base-x": "^3.0.2" + "base-x": "^4.0.0" } }, "node_modules/bs58check": { @@ -8166,19 +7670,41 @@ "safe-buffer": "^5.1.2" } }, + "node_modules/bs58check/node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/bs58check/node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "base-x": "^3.0.2" + } + }, "node_modules/bser": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, + "license": "Apache-2.0", "dependencies": { "node-int64": "^0.4.0" } }, "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, "funding": [ { "type": "github", @@ -8193,15 +7719,18 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "ieee754": "^1.1.13" } }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" }, "node_modules/buffer-xor": { "version": "1.0.3", @@ -8215,6 +7744,7 @@ "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-8.1.1.tgz", "integrity": "sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg==", "dev": true, + "license": "MIT", "engines": { "node": ">=12.17" } @@ -8223,6 +7753,8 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -8232,6 +7764,7 @@ "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", @@ -8250,60 +7783,11 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/cacache/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/cacache/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true - }, - "node_modules/cacache/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/cacheable-lookup": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "license": "MIT", "optional": true, "engines": { "node": ">=10.6.0" @@ -8313,6 +7797,7 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "license": "MIT", "optional": true, "dependencies": { "clone-response": "^1.0.2", @@ -8331,6 +7816,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "license": "MIT", "optional": true, "dependencies": { "pump": "^3.0.0" @@ -8343,16 +7829,44 @@ } }, "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", - "dev": true, + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.0", "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { "node": ">= 0.4" @@ -8366,19 +7880,19 @@ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, "node_modules/camelcase-keys": { @@ -8386,6 +7900,7 @@ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", "dev": true, + "license": "MIT", "dependencies": { "camelcase": "^5.3.1", "map-obj": "^4.0.0", @@ -8398,19 +7913,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/camelcase-keys/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/caniuse-lite": { - "version": "1.0.30001600", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001600.tgz", - "integrity": "sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ==", + "version": "1.0.30001726", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001726.tgz", + "integrity": "sha512-VQAUIUzBiZ/UnlM28fSp2CRF3ivUn1BWEvxMcVTNwpw91Py1pGbPIyIKtd+tzct9C3ouceCVdGAXxZOpZAsgdw==", "dev": true, "funding": [ { @@ -8425,19 +7931,22 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ] + ], + "license": "CC-BY-4.0" }, "node_modules/capability": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/capability/-/capability-0.2.5.tgz", "integrity": "sha512-rsJZYVCgXd08sPqwmaIqjAd5SUTfonV0z/gDJ8D6cN8wQphky1kkAYEqQ+hmDxTw7UihvBfjUVUSY+DBEe44jg==", + "license": "MIT", "optional": true }, "node_modules/caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, "node_modules/cbor": { "version": "8.1.0", @@ -8453,10 +7962,11 @@ } }, "node_modules/chai": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", - "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", + "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", "dev": true, + "license": "MIT", "dependencies": { "assertion-error": "^1.1.0", "check-error": "^1.0.3", @@ -8464,37 +7974,41 @@ "get-func-name": "^2.0.2", "loupe": "^2.3.6", "pathval": "^1.1.1", - "type-detect": "^4.0.8" + "type-detect": "^4.1.0" }, "engines": { "node": ">=4" } }, - "node_modules/chai-as-promised": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.2.tgz", - "integrity": "sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==", - "dev": true, - "license": "WTFPL", + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "license": "MIT", "dependencies": { - "check-error": "^1.0.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, - "peerDependencies": { - "chai": ">= 2.1.2 < 6" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, + "node_modules/chalk-template": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk-template/-/chalk-template-0.4.0.tgz", + "integrity": "sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg==", + "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "chalk": "^4.1.2" }, "engines": { - "node": ">=4" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/chalk-template?sponsor=1" } }, "node_modules/char-regex": { @@ -8502,6 +8016,7 @@ "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" } @@ -8510,13 +8025,15 @@ "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, + "dev": true, + "license": "MIT" + }, "node_modules/charenc": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": "*" } @@ -8526,6 +8043,7 @@ "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", "dev": true, + "license": "MIT", "dependencies": { "get-func-name": "^2.0.2" }, @@ -8536,40 +8054,23 @@ "node_modules/child_process": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/child_process/-/child_process-1.0.2.tgz", - "integrity": "sha512-Wmza/JzL0SiWz7kl6MhIKT5ceIlnFPJX+lwUGj7Clhy5MMldsSoJR0+uvRzOS5Kv45Mq7t1PoE8TsOA9bzvb6g==" + "integrity": "sha512-Wmza/JzL0SiWz7kl6MhIKT5ceIlnFPJX+lwUGj7Clhy5MMldsSoJR0+uvRzOS5Kv45Mq7t1PoE8TsOA9bzvb6g==", + "license": "ISC" }, "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, + "license": "MIT", "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "readdirp": "^4.0.1" }, "engines": { - "node": ">= 8.10.0" + "node": ">= 14.16.0" }, "funding": { "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" } }, "node_modules/chownr": { @@ -8577,34 +8078,53 @@ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", "devOptional": true, + "license": "ISC", "engines": { "node": ">=10" } }, "node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } }, "node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.6.tgz", + "integrity": "sha512-3Ek9H3X6pj5TgenXYtNWdaBon1tgYCaebd+XPg0keyjEbEfkD4KkmAxkQ/i1vYvxdcT5nscLBfq9VJRmCBcFSw==", + "license": "MIT", "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "^2.0.4", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" } }, "node_modules/cjs-module-lexer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", - "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", - "dev": true + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz", + "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", + "dev": true, + "license": "MIT" }, "node_modules/clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -8613,6 +8133,8 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "dev": true, + "license": "MIT", "engines": { "node": ">=6" }, @@ -8625,6 +8147,7 @@ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, + "license": "MIT", "dependencies": { "restore-cursor": "^3.1.0" }, @@ -8637,6 +8160,7 @@ "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" }, @@ -8649,6 +8173,7 @@ "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.5.1.tgz", "integrity": "sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==", "dev": true, + "license": "MIT", "dependencies": { "object-assign": "^4.1.0", "string-width": "^2.1.1" @@ -8665,6 +8190,7 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -8674,6 +8200,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -8683,6 +8210,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, + "license": "MIT", "dependencies": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" @@ -8696,6 +8224,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^3.0.0" }, @@ -8708,18 +8237,42 @@ "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "dev": true, + "license": "ISC", "engines": { "node": ">= 10" } }, "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", "dependencies": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, "node_modules/clone": { @@ -8727,6 +8280,7 @@ "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8" } @@ -8736,6 +8290,7 @@ "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", "dev": true, + "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4", "kind-of": "^6.0.2", @@ -8749,6 +8304,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "license": "MIT", "optional": true, "dependencies": { "mimic-response": "^1.0.0" @@ -8762,6 +8318,7 @@ "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.3.tgz", "integrity": "sha512-FMabTRlc5t5zjdenF6mS0MBeFZm0XqHqeOkcskKFb/LYCcRQ5fVgLOHVc4Lq9CqABd9zhjwPjMBCJvMCziSVtA==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -8771,6 +8328,7 @@ "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", "dev": true, + "license": "MIT", "engines": { "iojs": ">= 1.0.0", "node": ">= 0.12.0" @@ -8780,34 +8338,42 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/color": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "license": "MIT", "dependencies": { "color-convert": "^1.9.3", "color-string": "^1.6.0" } }, "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", "dependencies": { - "color-name": "1.1.3" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" }, "node_modules/color-string": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "license": "MIT", "dependencies": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -8818,15 +8384,32 @@ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "dev": true, + "license": "ISC", "bin": { "color-support": "bin.js" } }, + "node_modules/color/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "license": "MIT" + }, "node_modules/colors": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.1.90" } @@ -8835,6 +8418,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", + "license": "MIT", "dependencies": { "color": "^3.1.3", "text-hex": "1.0.x" @@ -8845,6 +8429,7 @@ "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz", "integrity": "sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==", "dev": true, + "license": "MIT", "dependencies": { "strip-ansi": "^6.0.1", "wcwidth": "^1.0.0" @@ -8857,6 +8442,7 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", "dependencies": { "delayed-stream": "~1.0.0" }, @@ -8867,75 +8453,70 @@ "node_modules/command-exists": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==" + "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", + "dev": true, + "license": "MIT" }, "node_modules/command-line-args": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz", - "integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==", - "dev": true, + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-6.0.1.tgz", + "integrity": "sha512-Jr3eByUjqyK0qd8W0SGFW1nZwqCaNCtbXjRo2cRJC1OYxWl3MZ5t1US3jq+cO4sPavqgw4l9BMGX0CBe+trepg==", + "license": "MIT", "dependencies": { - "array-back": "^3.1.0", - "find-replace": "^3.0.0", + "array-back": "^6.2.2", + "find-replace": "^5.0.2", "lodash.camelcase": "^4.3.0", - "typical": "^4.0.0" + "typical": "^7.2.0" }, "engines": { - "node": ">=4.0.0" + "node": ">=12.20" + }, + "peerDependencies": { + "@75lb/nature": "latest" + }, + "peerDependenciesMeta": { + "@75lb/nature": { + "optional": true + } } }, "node_modules/command-line-usage": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.3.tgz", - "integrity": "sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==", - "dev": true, + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-7.0.3.tgz", + "integrity": "sha512-PqMLy5+YGwhMh1wS04mVG44oqDsgyLRSKJBdOo1bnYhMKBW65gZF1dRp2OZRhiTjgUHljy99qkO7bsctLaw35Q==", + "license": "MIT", "dependencies": { - "array-back": "^4.0.2", - "chalk": "^2.4.2", - "table-layout": "^1.0.2", - "typical": "^5.2.0" + "array-back": "^6.2.2", + "chalk-template": "^0.4.0", + "table-layout": "^4.1.0", + "typical": "^7.1.1" }, "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/command-line-usage/node_modules/array-back": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", - "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/command-line-usage/node_modules/typical": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", - "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=12.20.0" } }, "node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz", + "integrity": "sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==", + "license": "MIT", "engines": { - "node": ">= 12" + "node": ">= 10" } }, "node_modules/common-ancestor-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz", "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/compare-func": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", "dev": true, + "license": "MIT", "dependencies": { "array-ify": "^1.0.0", "dot-prop": "^5.1.0" @@ -8945,7 +8526,8 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/concat-stream": { "version": "2.0.0", @@ -8955,6 +8537,7 @@ "engines": [ "node >= 6.0" ], + "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -8966,13 +8549,15 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/conventional-changelog-angular": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-7.0.0.tgz", "integrity": "sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==", "dev": true, + "license": "ISC", "dependencies": { "compare-func": "^2.0.0" }, @@ -8985,6 +8570,7 @@ "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-5.0.1.tgz", "integrity": "sha512-Rvi5pH+LvgsqGwZPZ3Cq/tz4ty7mjijhr3qR4m9IBXNbxGGYgTVVO+duXzz9aArmHxFtwZ+LRkrNIMDQzgoY4A==", "dev": true, + "license": "MIT", "dependencies": { "add-stream": "^1.0.0", "conventional-changelog-writer": "^6.0.0", @@ -9007,6 +8593,7 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -9019,6 +8606,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -9031,6 +8619,7 @@ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^4.0.1", "is-core-module": "^2.5.0", @@ -9041,29 +8630,12 @@ "node": ">=10" } }, - "node_modules/conventional-changelog-core/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/conventional-changelog-core/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/conventional-changelog-preset-loader": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-3.0.0.tgz", "integrity": "sha512-qy9XbdSLmVnwnvzEisjxdDiLA4OmV3o8db+Zdg4WiFw14fP3B6XNz98X0swPPpkTd/pc1K7+adKgEDM1JCUMiA==", "dev": true, + "license": "MIT", "engines": { "node": ">=14" } @@ -9073,6 +8645,7 @@ "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz", "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==", "dev": true, + "license": "MIT", "dependencies": { "conventional-commits-filter": "^3.0.0", "dateformat": "^3.0.3", @@ -9089,23 +8662,12 @@ "node": ">=14" } }, - "node_modules/conventional-changelog-writer/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/conventional-commits-filter": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz", "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==", "dev": true, + "license": "MIT", "dependencies": { "lodash.ismatch": "^4.4.0", "modify-values": "^1.0.1" @@ -9119,6 +8681,7 @@ "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz", "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==", "dev": true, + "license": "MIT", "dependencies": { "is-text-path": "^1.0.1", "JSONStream": "^1.3.5", @@ -9137,6 +8700,7 @@ "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-7.0.1.tgz", "integrity": "sha512-Ft79FF4SlOFvX4PkwFDRnaNiIVX7YbmqGU0RwccUaiGvgp3S0a8ipR2/Qxk31vclDNM+GSdJOVs2KrsUCjblVA==", "dev": true, + "license": "MIT", "dependencies": { "concat-stream": "^2.0.0", "conventional-changelog-preset-loader": "^3.0.0", @@ -9157,27 +8721,32 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/cookie": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "engines": { + "dev": true, + "license": "MIT", + "engines": { "node": ">= 0.6" } }, "node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true, + "license": "MIT" }, "node_modules/cosmiconfig": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", "dev": true, + "license": "MIT", "dependencies": { "env-paths": "^2.2.1", "import-fresh": "^3.3.0", @@ -9203,6 +8772,7 @@ "version": "0.8.0", "resolved": "https://registry.npmjs.org/cosmjs-types/-/cosmjs-types-0.8.0.tgz", "integrity": "sha512-Q2Mj95Fl0PYMWEhA2LuGEIhipF7mQwd9gTQ85DdP9jjjopeoGaDxvmPa5nakNzsq7FnO1DMTatXTAx6bxMH7Lg==", + "license": "Apache-2.0", "dependencies": { "long": "^4.0.0", "protobufjs": "~6.11.2" @@ -9212,6 +8782,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "license": "Apache-2.0", "bin": { "crc32": "bin/crc32.njs" }, @@ -9223,6 +8794,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "license": "MIT", "dependencies": { "cipher-base": "^1.0.1", "inherits": "^2.0.1", @@ -9235,6 +8807,7 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "license": "MIT", "dependencies": { "cipher-base": "^1.0.3", "create-hash": "^1.1.0", @@ -9249,6 +8822,7 @@ "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", "dev": true, + "license": "MIT", "dependencies": { "@jest/types": "^29.6.3", "chalk": "^4.0.0", @@ -9265,87 +8839,19 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/create-jest/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/create-jest/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/create-jest/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/create-jest/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/create-jest/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/create-jest/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/create-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "devOptional": true + "dev": true, + "license": "MIT" }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -9360,6 +8866,7 @@ "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": "*" } @@ -9369,6 +8876,7 @@ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true, + "license": "MIT", "bin": { "cssesc": "bin/cssesc" }, @@ -9381,19 +8889,21 @@ "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/data-view-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", - "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "is-data-view": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -9403,29 +8913,31 @@ } }, "node_modules/data-view-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", - "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "is-data-view": "^1.0.2" }, "engines": { "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/inspect-js" } }, "node_modules/data-view-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", - "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.2", "es-errors": "^1.3.0", "is-data-view": "^1.0.1" }, @@ -9441,6 +8953,7 @@ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", "dev": true, + "license": "MIT", "engines": { "node": "*" } @@ -9452,9 +8965,10 @@ "dev": true }, "node_modules/debug": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", - "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "license": "MIT", "dependencies": { "ms": "^2.1.3" }, @@ -9472,6 +8986,7 @@ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -9481,6 +8996,7 @@ "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, + "license": "MIT", "dependencies": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" @@ -9497,6 +9013,7 @@ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -9505,6 +9022,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "license": "MIT", "optional": true, "dependencies": { "mimic-response": "^3.1.0" @@ -9520,6 +9038,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "license": "MIT", "optional": true, "engines": { "node": ">=10" @@ -9533,6 +9052,7 @@ "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", "dev": true, + "license": "MIT", "peerDependencies": { "babel-plugin-macros": "^3.1.0" }, @@ -9543,10 +9063,11 @@ } }, "node_modules/deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", + "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", "dev": true, + "license": "MIT", "dependencies": { "type-detect": "^4.0.0" }, @@ -9559,6 +9080,7 @@ "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "dev": true, + "license": "MIT", "engines": { "node": ">=4.0.0" } @@ -9567,13 +9089,15 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/deepmerge": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -9583,6 +9107,7 @@ "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, + "license": "MIT", "dependencies": { "clone": "^1.0.2" }, @@ -9594,6 +9119,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "license": "MIT", "optional": true, "engines": { "node": ">=10" @@ -9603,6 +9129,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -9620,6 +9147,7 @@ "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -9628,6 +9156,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "license": "MIT", "dependencies": { "define-data-property": "^1.0.1", "has-property-descriptors": "^1.0.0", @@ -9644,6 +9173,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", "engines": { "node": ">=0.4.0" } @@ -9652,6 +9182,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "devOptional": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -9660,13 +9192,15 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/detect-indent": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", "integrity": "sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -9676,6 +9210,7 @@ "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -9684,6 +9219,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" } @@ -9693,6 +9229,7 @@ "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", "dev": true, + "license": "MIT", "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } @@ -9714,6 +9251,7 @@ "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, + "license": "MIT", "dependencies": { "path-type": "^4.0.0" }, @@ -9722,9 +9260,10 @@ } }, "node_modules/docker-compose": { - "version": "0.24.7", - "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.24.7.tgz", - "integrity": "sha512-CdHl9n0S4+bl4i6MaxDQHNjqB1FdvuDirrDTzPKmdiMpheQqCjgsny0GZ2VhvN7qHTY0833lRlKWZgrkn1i6cg==", + "version": "0.24.8", + "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.24.8.tgz", + "integrity": "sha512-plizRs/Vf15H+GCVxq2EUvyPK7ei9b/cVesHvjnX4xaXjM9spHe2Ytq0BitndFgvTJ3E3NljPNUEl7BAN43iZw==", + "license": "MIT", "dependencies": { "yaml": "^2.2.2" }, @@ -9732,11 +9271,25 @@ "node": ">= 6.0.0" } }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/dot-prop": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", "dev": true, + "license": "MIT", "dependencies": { "is-obj": "^2.0.0" }, @@ -9748,6 +9301,7 @@ "version": "16.4.7", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", + "license": "BSD-2-Clause", "engines": { "node": ">=12" }, @@ -9760,6 +9314,7 @@ "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "dotenv": "^16.4.5" }, @@ -9770,32 +9325,61 @@ "url": "https://dotenvx.com" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/ed25519-hd-key": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/ed25519-hd-key/-/ed25519-hd-key-1.1.2.tgz", "integrity": "sha512-/0y9y6N7vM6Kj5ASr9J9wcMVDTtygxSOvYX+PJiMD7VcxCx2G03V5bLRl8Dug9EgkLFsLhGqBtQWQRcElEeWTA==", + "license": "MIT", "dependencies": { "bip39": "3.0.2", "create-hmac": "1.1.7", "tweetnacl": "1.0.3" } }, + "node_modules/ed25519-hd-key/node_modules/@types/node": { + "version": "11.11.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-11.11.6.tgz", + "integrity": "sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ==", + "license": "MIT" + }, + "node_modules/ed25519-hd-key/node_modules/bip39": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/bip39/-/bip39-3.0.2.tgz", + "integrity": "sha512-J4E1r2N0tUylTKt07ibXvhpT2c5pyAFgvuA5q1H9uDy6dEGpjV8jmymh3MTYJDLCNbIVClSB9FbND49I6N24MQ==", + "license": "ISC", + "dependencies": { + "@types/node": "11.11.6", + "create-hash": "^1.1.0", + "pbkdf2": "^3.0.9", + "randombytes": "^2.0.1" + } + }, "node_modules/ed2curve": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/ed2curve/-/ed2curve-0.3.0.tgz", "integrity": "sha512-8w2fmmq3hv9rCrcI7g9hms2pMunQr1JINfcjwR9tAyZqhtyaMN991lF/ZfHfr5tzZQ8c7y7aBgZbjfbd0fjFwQ==", + "license": "Unlicense", "dependencies": { "tweetnacl": "1.x.x" } @@ -9805,6 +9389,7 @@ "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "jake": "^10.8.5" }, @@ -9816,15 +9401,17 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.715", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.715.tgz", - "integrity": "sha512-XzWNH4ZSa9BwVUQSDorPWAUQ5WGuYz7zJUNpNif40zFCiCl20t8zgylmreNmn26h5kiyw2lg7RfTmeMBsDklqg==", - "dev": true + "version": "1.5.178", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.178.tgz", + "integrity": "sha512-wObbz/ar3Bc6e4X5vf0iO8xTN8YAjN/tgiAOJLr7yjYFtP9wAjq8Mb5h0yn6kResir+VYx2DXBj9NNobs0ETSA==", + "dev": true, + "license": "ISC" }, "node_modules/elliptic": { "version": "6.6.1", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", + "license": "MIT", "dependencies": { "bn.js": "^4.11.9", "brorand": "^1.1.0", @@ -9836,15 +9423,17 @@ } }, "node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.2.tgz", + "integrity": "sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==", + "license": "MIT" }, "node_modules/emittery": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -9855,17 +9444,20 @@ "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" }, "node_modules/enabled": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", - "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==", + "license": "MIT" }, "node_modules/encoding": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "license": "MIT", "optional": true, "dependencies": { "iconv-lite": "^0.6.2" @@ -9875,6 +9467,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "license": "MIT", "optional": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" @@ -9884,21 +9477,23 @@ } }, "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", "devOptional": true, + "license": "MIT", "dependencies": { "once": "^1.4.0" } }, "node_modules/enquirer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", - "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-colors": "^4.1.1", - "strip-ansi": "^6.0.1" + "ansi-colors": "^4.1.1" }, "engines": { "node": ">=8.6" @@ -9908,6 +9503,8 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -9917,6 +9514,7 @@ "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", "dev": true, + "license": "MIT", "bin": { "envinfo": "dist/cli.js" }, @@ -9928,13 +9526,15 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, + "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" } @@ -9943,6 +9543,7 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/error-polyfill/-/error-polyfill-0.1.3.tgz", "integrity": "sha512-XHJk60ufE+TG/ydwp4lilOog549iiQF2OAPhkk9DdiYWMrltz5yhDz/xnKuenNwP7gy3dsibssO5QpVhkrSzzg==", + "license": "MIT", "optional": true, "dependencies": { "capability": "^0.2.5", @@ -9951,57 +9552,66 @@ } }, "node_modules/es-abstract": { - "version": "1.23.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.2.tgz", - "integrity": "sha512-60s3Xv2T2p1ICykc7c+DNDPLDMm9t4QxCOUU0K9JxiLjM3C1zB9YVdN7tjxrFd4+AkZ8CdX1ovUga4P2+1e+/w==", + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", "dev": true, + "license": "MIT", "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "data-view-buffer": "^1.0.1", - "data-view-byte-length": "^1.0.1", - "data-view-byte-offset": "^1.0.0", - "es-define-property": "^1.0.0", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.0.3", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", "hasown": "^2.0.2", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", + "is-data-view": "^1.0.2", "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.2", - "typed-array-byte-length": "^1.0.1", - "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.5", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" }, "engines": { "node": ">= 0.4" @@ -10011,12 +9621,10 @@ } }, "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -10025,15 +9633,16 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", "engines": { "node": ">= 0.4" } }, "node_modules/es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", - "dev": true, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", "dependencies": { "es-errors": "^1.3.0" }, @@ -10042,28 +9651,30 @@ } }, "node_modules/es-set-tostringtag": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", - "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", - "dev": true, + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "license": "MIT", "dependencies": { - "get-intrinsic": "^1.2.4", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" + "hasown": "^2.0.2" }, "engines": { "node": ">= 0.4" } }, "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", "dev": true, + "license": "MIT", "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" }, "engines": { "node": ">= 0.4" @@ -10073,20 +9684,26 @@ } }, "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, + "license": "MIT", "engines": { - "node": ">=0.8.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/escodegen": { @@ -10094,6 +9711,7 @@ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", "integrity": "sha512-yhi5S+mNTOuRvyW4gWlg5W1byMaQGWWSYHXsuFZ7GBo7tpyOwi2EdzMP/QWxh9hwkD2m+wDVHJsxhRIj+v/b/A==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esprima": "^2.7.1", "estraverse": "^1.9.1", @@ -10111,12 +9729,26 @@ "source-map": "~0.2.0" } }, - "node_modules/escodegen/node_modules/estraverse": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA==", - "dev": true, - "engines": { + "node_modules/escodegen/node_modules/esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/escodegen/node_modules/estraverse": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", + "integrity": "sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA==", + "dev": true, + "engines": { "node": ">=0.10.0" } }, @@ -10125,6 +9757,7 @@ "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "~1.1.2", "type-check": "~0.3.2" @@ -10138,6 +9771,7 @@ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "dev": true, + "license": "MIT", "dependencies": { "deep-is": "~0.1.3", "fast-levenshtein": "~2.0.6", @@ -10177,6 +9811,7 @@ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "~1.1.2" }, @@ -10184,46 +9819,131 @@ "node": ">= 0.8.0" } }, + "node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=8.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, + "license": "Apache-2.0", "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, + "license": "BSD-2-Clause", "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "estraverse": "^5.1.0" }, @@ -10231,20 +9951,12 @@ "node": ">=0.10" } }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" }, @@ -10252,20 +9964,12 @@ "node": ">=4.0" } }, - "node_modules/esrecurse/node_modules/estraverse": { + "node_modules/estraverse": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=4.0" } @@ -10275,6 +9979,7 @@ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" } @@ -10284,6 +9989,7 @@ "resolved": "https://registry.npmjs.org/eth-gas-reporter/-/eth-gas-reporter-0.2.27.tgz", "integrity": "sha512-femhvoAM7wL0GcI8ozTdxfuBtBFJ9qsyIAsmKVjlWAHUbdnnXHt+lKzz/kmldM5lA9jLuNHGwuIxorNpLbR1Zw==", "dev": true, + "license": "MIT", "dependencies": { "@solidity-parser/parser": "^0.14.0", "axios": "^1.5.1", @@ -10308,19 +10014,70 @@ } } }, - "node_modules/ethereum-bloom-filters": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz", - "integrity": "sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA==", + "node_modules/eth-gas-reporter/node_modules/@noble/hashes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz", + "integrity": "sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT" + }, + "node_modules/eth-gas-reporter/node_modules/@scure/base": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", + "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/eth-gas-reporter/node_modules/@scure/bip32": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz", + "integrity": "sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", + "dependencies": { + "@noble/hashes": "~1.2.0", + "@noble/secp256k1": "~1.7.0", + "@scure/base": "~1.1.0" + } + }, + "node_modules/eth-gas-reporter/node_modules/@scure/bip39": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.1.tgz", + "integrity": "sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==", "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", "dependencies": { - "js-sha3": "^0.8.0" + "@noble/hashes": "~1.2.0", + "@scure/base": "~1.1.0" } }, - "node_modules/ethereum-cryptography": { + "node_modules/eth-gas-reporter/node_modules/ethereum-cryptography": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz", "integrity": "sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==", + "dev": true, + "license": "MIT", "dependencies": { "@noble/hashes": "1.2.0", "@noble/secp256k1": "1.7.1", @@ -10328,6 +10085,88 @@ "@scure/bip39": "1.1.1" } }, + "node_modules/ethereum-bloom-filters": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.2.0.tgz", + "integrity": "sha512-28hyiE7HVsWubqhpVLVmZXFd4ITeHi+BUu05o9isf0GUpMtzBUi+8/gFrGaGYzvGAJQmJ3JKj77Mk9G98T84rA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "^1.4.0" + } + }, + "node_modules/ethereum-cryptography": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", + "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", + "license": "MIT", + "dependencies": { + "@noble/curves": "1.4.2", + "@noble/hashes": "1.4.0", + "@scure/bip32": "1.4.0", + "@scure/bip39": "1.3.0" + } + }, + "node_modules/ethereum-cryptography/node_modules/@noble/curves": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", + "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.4.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/ethereum-cryptography/node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/ethereum-cryptography/node_modules/@scure/base": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", + "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", + "license": "MIT", + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/ethereum-cryptography/node_modules/@scure/bip32": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", + "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", + "license": "MIT", + "dependencies": { + "@noble/curves": "~1.4.0", + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/ethereum-cryptography/node_modules/@scure/bip39": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", + "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", + "license": "MIT", + "dependencies": { + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/ethereumjs-util": { "version": "7.1.5", "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", @@ -10369,10 +10208,33 @@ "setimmediate": "^1.0.5" } }, - "node_modules/ethers": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.8.0.tgz", - "integrity": "sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==", + "node_modules/ethereumjs-util/node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==", + "dev": true, + "license": "MIT" + }, + "node_modules/ethereumjs-util/node_modules/secp256k1": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.4.tgz", + "integrity": "sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "elliptic": "^6.5.7", + "node-addon-api": "^5.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/ethers": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.8.0.tgz", + "integrity": "sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==", "funding": [ { "type": "individual", @@ -10422,6 +10284,7 @@ "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", "integrity": "sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==", "dev": true, + "license": "MIT", "dependencies": { "bn.js": "4.11.6", "number-to-bn": "1.7.0" @@ -10435,18 +10298,21 @@ "version": "4.11.6", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "license": "MIT", "engines": { "node": ">=0.8.x" } @@ -10463,10 +10329,11 @@ } }, "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", + "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", "dev": true, + "license": "MIT", "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.0", @@ -10490,6 +10357,7 @@ "resolved": "https://registry.npmjs.org/execution-time/-/execution-time-1.4.1.tgz", "integrity": "sha512-4t9svrTtsXxAEzAs9/tm1R/Voj5AYHqxd72BiLEbGQWJq2PD3tAmW8bXI7Pp0yorjaKshT1+NyKy0ytHlKW4Pg==", "dev": true, + "license": "ISC", "dependencies": { "pretty-hrtime": "^1.0.3" } @@ -10508,6 +10376,7 @@ "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", "dev": true, + "license": "MIT", "dependencies": { "@jest/expect-utils": "^29.7.0", "jest-get-type": "^29.6.3", @@ -10523,13 +10392,15 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz", "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, "node_modules/external-editor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dev": true, + "license": "MIT", "dependencies": { "chardet": "^0.7.0", "iconv-lite": "^0.4.24", @@ -10544,6 +10415,7 @@ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, + "license": "MIT", "dependencies": { "os-tmpdir": "~1.0.2" }, @@ -10554,25 +10426,28 @@ "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "license": "MIT" }, "node_modules/fast-diff": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "dev": true, + "license": "MIT", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -10583,6 +10458,7 @@ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^4.0.1" }, @@ -10594,24 +10470,44 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fast-safe-stringify": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.4.tgz", - "integrity": "sha512-mNlGUdKOeGNleyrmgbKYtbnCr9KZkZXU7eM89JRo8vY10f7Ul1Fbj07hUBW3N4fC0xM+fmfFfa2zM7mIizhpNQ==" + "integrity": "sha512-mNlGUdKOeGNleyrmgbKYtbnCr9KZkZXU7eM89JRo8vY10f7Ul1Fbj07hUBW3N4fC0xM+fmfFfa2zM7mIizhpNQ==", + "license": "MIT" + }, + "node_modules/fast-uri": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.6.tgz", + "integrity": "sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" }, "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", "dev": true, + "license": "ISC", "dependencies": { "reusify": "^1.0.4" } @@ -10621,6 +10517,7 @@ "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "bser": "2.1.1" } @@ -10628,13 +10525,15 @@ "node_modules/fecha": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", - "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==", + "license": "MIT" }, "node_modules/figures": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, + "license": "MIT", "dependencies": { "escape-string-regexp": "^1.0.5" }, @@ -10645,20 +10544,45 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, "node_modules/filelist": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", "dev": true, + "license": "Apache-2.0", "dependencies": { "minimatch": "^5.0.1" } }, "node_modules/filelist/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } @@ -10668,6 +10592,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -10679,6 +10604,8 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -10687,21 +10614,28 @@ } }, "node_modules/find-replace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz", - "integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==", - "dev": true, - "dependencies": { - "array-back": "^3.0.1" - }, + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-5.0.2.tgz", + "integrity": "sha512-Y45BAiE3mz2QsrN2fb5QEtO4qb44NcS7en/0y9PEVsg351HsLeVclP8QPMH79Le9sH3rs5RSwJu99W0WPZO43Q==", + "license": "MIT", "engines": { - "node": ">=4.0.0" + "node": ">=14" + }, + "peerDependencies": { + "@75lb/nature": "latest" + }, + "peerDependenciesMeta": { + "@75lb/nature": { + "optional": true + } } }, "node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -10717,31 +10651,57 @@ "version": "5.0.2", "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "license": "BSD-3-Clause", "bin": { "flat": "cli.js" } }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatbuffers": { + "version": "24.12.23", + "resolved": "https://registry.npmjs.org/flatbuffers/-/flatbuffers-24.12.23.tgz", + "integrity": "sha512-dLVCAISd5mhls514keQzmEG6QHmUUsNuWsb4tFafIUwvvgDjXhtfAYSKOzt5SWOy+qByV5pbsDZ+Vb7HUOBEdA==", + "license": "Apache-2.0" + }, "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", - "dev": true + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" }, "node_modules/fn.name": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", - "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==", + "license": "MIT" }, "node_modules/follow-redirects": { - "version": "1.15.6", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", - "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", "funding": [ { "type": "individual", "url": "https://github.com/sponsors/RubenVerborgh" } ], + "license": "MIT", "engines": { "node": ">=4.0" }, @@ -10752,12 +10712,18 @@ } }, "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "license": "MIT", "dependencies": { - "is-callable": "^1.1.3" + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/foreground-child": { @@ -10765,6 +10731,7 @@ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", "dev": true, + "license": "ISC", "dependencies": { "cross-spawn": "^7.0.6", "signal-exit": "^4.0.1" @@ -10781,6 +10748,7 @@ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, + "license": "ISC", "engines": { "node": ">=14" }, @@ -10789,12 +10757,15 @@ } }, "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.3.tgz", + "integrity": "sha512-qsITQPfmvMOSAdeyZ+12I1c+CKSstAFAwu+97zrnWAbIr5u8wfsExUzCesVLC8NgHuRUqNN4Zy6UPWUTRGslcA==", + "license": "MIT", "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", "mime-types": "^2.1.12" }, "engines": { @@ -10804,13 +10775,16 @@ "node_modules/fp-ts": { "version": "1.19.3", "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-1.19.3.tgz", - "integrity": "sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==" + "integrity": "sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==", + "dev": true, + "license": "MIT" }, "node_modules/front-matter": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-4.0.2.tgz", "integrity": "sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==", "dev": true, + "license": "MIT", "dependencies": { "js-yaml": "^3.13.1" } @@ -10820,28 +10794,17 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, + "license": "MIT", "dependencies": { "sprintf-js": "~1.0.2" } }, - "node_modules/front-matter/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/front-matter/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -10854,23 +10817,27 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/fs": { "version": "0.0.1-security", "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", - "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==" + "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==", + "license": "ISC" }, "node_modules/fs-constants": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fs-extra": { "version": "11.3.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -10885,6 +10852,7 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^7.0.3" }, @@ -10896,21 +10864,28 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "devOptional": true, + "license": "ISC" }, "node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, "hasInstallScript": true, + "license": "MIT", "optional": true, "os": [ - "darwin" + "darwin", + "win32", + "linux" ], "engines": { "node": "^8.16.0 || ^10.6.0 || >=11.0.0" @@ -10920,20 +10895,24 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" }, "engines": { "node": ">= 0.4" @@ -10947,6 +10926,7 @@ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -10962,6 +10942,7 @@ "secp256k1" ], "hasShrinkwrap": true, + "license": "MIT", "dependencies": { "@trufflesuite/bigint-buffer": "1.1.10", "@trufflesuite/uws-js-unofficial": "20.30.0-unofficial.0", @@ -12613,7 +12594,9 @@ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "extraneous": true, "os": [ - "darwin" + "darwin", + "win32", + "linux" ], "engines": { "node": "^8.16.0 || ^10.6.0 || >=11.0.0" @@ -14818,6 +14801,7 @@ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -14826,6 +14810,8 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", "engines": { "node": "6.* || 8.* || >= 10.*" } @@ -14835,20 +14821,27 @@ "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", "dev": true, + "license": "MIT", "engines": { "node": "*" } }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -14862,6 +14855,7 @@ "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8.0.0" } @@ -14871,6 +14865,7 @@ "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz", "integrity": "sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==", "dev": true, + "license": "MIT", "dependencies": { "@hutson/parse-repository-url": "^3.0.0", "hosted-git-info": "^4.0.0", @@ -14884,11 +14879,24 @@ "node": ">=6.9.0" } }, + "node_modules/get-pkg-repo/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, "node_modules/get-pkg-repo/node_modules/hosted-git-info": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -14901,6 +14909,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -14908,17 +14917,30 @@ "node": ">=10" } }, - "node_modules/get-pkg-repo/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/get-pkg-repo/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } }, "node_modules/get-pkg-repo/node_modules/yargs": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, + "license": "MIT", "dependencies": { "cliui": "^7.0.2", "escalade": "^3.1.1", @@ -14932,11 +14954,22 @@ "node": ">=10" } }, - "node_modules/get-port": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", - "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", + "node_modules/get-pkg-repo/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/get-port": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", + "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -14944,11 +14977,25 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", + "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -14957,14 +15004,15 @@ } }, "node_modules/get-symbol-description": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", - "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -14978,6 +15026,7 @@ "resolved": "https://registry.npmjs.org/ghost-testrpc/-/ghost-testrpc-0.0.2.tgz", "integrity": "sha512-i08dAEgJ2g8z5buJIrCTduwPIhih3DP+hOCTyyryikfV8T0bNvHnGXO67i0DD1H4GBDETTclPy9njZbfluQYrQ==", "dev": true, + "license": "ISC", "dependencies": { "chalk": "^2.4.2", "node-emoji": "^1.10.0" @@ -14986,11 +15035,90 @@ "testrpc-sc": "index.js" } }, + "node_modules/ghost-testrpc/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ghost-testrpc/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ghost-testrpc/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/ghost-testrpc/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "license": "MIT" + }, + "node_modules/ghost-testrpc/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ghost-testrpc/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/ghost-testrpc/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/git-raw-commits": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-3.0.0.tgz", "integrity": "sha512-b5OHmZ3vAgGrDn/X0kS+9qCfNKWe4K/jFnhwzVWWg0/k5eLa3060tZShrRg8Dja5kPc+YjS0Gc6y7cRr44Lpjw==", "dev": true, + "license": "MIT", "dependencies": { "dargs": "^7.0.0", "meow": "^8.1.2", @@ -15008,6 +15136,7 @@ "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz", "integrity": "sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==", "dev": true, + "license": "MIT", "dependencies": { "gitconfiglocal": "^1.0.0", "pify": "^2.3.0" @@ -15021,6 +15150,7 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -15030,6 +15160,7 @@ "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-5.0.1.tgz", "integrity": "sha512-hIvOeZwRbQ+7YEUmCkHqo8FOLQZCEn18yevLHADlFPZY02KJGsu5FZt9YW/lybfK2uhWFI7Qg/07LekJiTv7iA==", "dev": true, + "license": "MIT", "dependencies": { "meow": "^8.1.2", "semver": "^7.0.0" @@ -15041,23 +15172,12 @@ "node": ">=14" } }, - "node_modules/git-semver-tags/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/git-up": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz", "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==", "dev": true, + "license": "MIT", "dependencies": { "is-ssh": "^1.4.0", "parse-url": "^8.1.0" @@ -15068,6 +15188,7 @@ "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-14.0.0.tgz", "integrity": "sha512-NnLweV+2A4nCvn4U/m2AoYu0pPKlsmhK9cknG7IMwsjFY1S2jxM+mAhsDxyxfCIGfGaD+dozsyX4b6vkYc83yQ==", "dev": true, + "license": "MIT", "dependencies": { "git-up": "^7.0.0" } @@ -15077,25 +15198,27 @@ "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz", "integrity": "sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==", "dev": true, + "license": "BSD", "dependencies": { "ini": "^1.3.2" } }, "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "devOptional": true, + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "license": "ISC", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, - "engines": { - "node": "*" + "bin": { + "glob": "dist/esm/bin.mjs" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -15106,6 +15229,7 @@ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, + "license": "ISC", "dependencies": { "is-glob": "^4.0.3" }, @@ -15113,11 +15237,38 @@ "node": ">=10.13.0" } }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/global-modules": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", "dev": true, + "license": "MIT", "dependencies": { "global-prefix": "^3.0.0" }, @@ -15130,6 +15281,7 @@ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", "dev": true, + "license": "MIT", "dependencies": { "ini": "^1.3.5", "kind-of": "^6.0.2", @@ -15144,6 +15296,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -15152,20 +15305,29 @@ } }, "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "license": "MIT", "dependencies": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -15179,6 +15341,7 @@ "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, + "license": "MIT", "dependencies": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -15195,11 +15358,12 @@ } }, "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dependencies": { - "get-intrinsic": "^1.1.3" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -15209,6 +15373,7 @@ "version": "11.8.6", "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "license": "MIT", "optional": true, "dependencies": { "@sindresorhus/is": "^4.0.0", @@ -15233,19 +15398,22 @@ "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" }, "node_modules/graphemer": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/handlebars": { "version": "4.7.8", "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", "dev": true, + "license": "MIT", "dependencies": { "minimist": "^1.2.5", "neo-async": "^2.6.2", @@ -15267,6 +15435,7 @@ "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -15275,6 +15444,7 @@ "version": "2.25.0", "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.25.0.tgz", "integrity": "sha512-yBiA74Yj3VnTRj7lhnn8GalvBdvsMOqTKRrRATSy/2v0VIR2hR0Jcnmfn4aQBLtGAnr3Q2c8CxL0g3LYegUp+g==", + "dev": true, "license": "MIT", "dependencies": { "@ethereumjs/util": "^9.1.0", @@ -15340,6 +15510,7 @@ "resolved": "https://registry.npmjs.org/hardhat-gas-reporter/-/hardhat-gas-reporter-1.0.10.tgz", "integrity": "sha512-02N4+So/fZrzJ88ci54GqwVA3Zrf0C9duuTyGt0CFRIh/CdNwbnTgkXkRfojOMLBQ+6t+lBIkgbsOtqMvNwikA==", "dev": true, + "license": "MIT", "dependencies": { "array-uniq": "1.0.3", "eth-gas-reporter": "^0.2.25", @@ -15353,6 +15524,7 @@ "version": "5.0.2", "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-5.0.2.tgz", "integrity": "sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA==", + "dev": true, "license": "MPL-2.0", "bin": { "rlp": "bin/rlp.cjs" @@ -15365,6 +15537,7 @@ "version": "9.1.0", "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-9.1.0.tgz", "integrity": "sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog==", + "dev": true, "license": "MPL-2.0", "dependencies": { "@ethereumjs/rlp": "^5.0.2", @@ -15374,34 +15547,11 @@ "node": ">=18" } }, - "node_modules/hardhat/node_modules/@ethereumjs/util/node_modules/ethereum-cryptography": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", - "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", - "license": "MIT", - "dependencies": { - "@noble/curves": "1.4.2", - "@noble/hashes": "1.4.0", - "@scure/bip32": "1.4.0", - "@scure/bip39": "1.3.0" - } - }, - "node_modules/hardhat/node_modules/@noble/curves": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", - "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.4.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/hardhat/node_modules/@noble/hashes": { + "node_modules/hardhat/node_modules/@ethereumjs/util/node_modules/@noble/hashes": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 16" @@ -15410,10 +15560,11 @@ "url": "https://paulmillr.com/funding/" } }, - "node_modules/hardhat/node_modules/@scure/bip32": { + "node_modules/hardhat/node_modules/@ethereumjs/util/node_modules/@scure/bip32": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", + "dev": true, "license": "MIT", "dependencies": { "@noble/curves": "~1.4.0", @@ -15424,10 +15575,11 @@ "url": "https://paulmillr.com/funding/" } }, - "node_modules/hardhat/node_modules/@scure/bip39": { + "node_modules/hardhat/node_modules/@ethereumjs/util/node_modules/@scure/bip39": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", + "dev": true, "license": "MIT", "dependencies": { "@noble/hashes": "~1.4.0", @@ -15437,24 +15589,129 @@ "url": "https://paulmillr.com/funding/" } }, - "node_modules/hardhat/node_modules/chokidar": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", - "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "node_modules/hardhat/node_modules/@ethereumjs/util/node_modules/ethereum-cryptography": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", + "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", + "dev": true, + "license": "MIT", "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" + "@noble/curves": "1.4.2", + "@noble/hashes": "1.4.0", + "@scure/bip32": "1.4.0", + "@scure/bip39": "1.3.0" + } + }, + "node_modules/hardhat/node_modules/@noble/curves": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", + "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.4.0" }, "funding": { "url": "https://paulmillr.com/funding/" } }, - "node_modules/hardhat/node_modules/fs-extra": { + "node_modules/hardhat/node_modules/@noble/curves/node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/hardhat/node_modules/@noble/hashes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz", + "integrity": "sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT" + }, + "node_modules/hardhat/node_modules/@scure/base": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", + "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/hardhat/node_modules/@scure/bip32": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz", + "integrity": "sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", + "dependencies": { + "@noble/hashes": "~1.2.0", + "@noble/secp256k1": "~1.7.0", + "@scure/base": "~1.1.0" + } + }, + "node_modules/hardhat/node_modules/@scure/bip39": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.1.tgz", + "integrity": "sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", + "dependencies": { + "@noble/hashes": "~1.2.0", + "@scure/base": "~1.1.0" + } + }, + "node_modules/hardhat/node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/hardhat/node_modules/ethereum-cryptography": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz", + "integrity": "sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.2.0", + "@noble/secp256k1": "1.7.1", + "@scure/bip32": "1.1.5", + "@scure/bip39": "1.1.1" + } + }, + "node_modules/hardhat/node_modules/fs-extra": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "jsonfile": "^4.0.0", @@ -15468,26 +15725,18 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "license": "MIT", "optionalDependencies": { "graceful-fs": "^4.1.6" } }, - "node_modules/hardhat/node_modules/readdirp": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", - "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", - "engines": { - "node": ">= 14.18.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/hardhat/node_modules/resolve": { "version": "1.17.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "dev": true, + "license": "MIT", "dependencies": { "path-parse": "^1.0.6" }, @@ -15495,36 +15744,76 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/hardhat/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/hardhat/node_modules/undici": { + "version": "5.29.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", + "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@fastify/busboy": "^2.0.0" + }, + "engines": { + "node": ">=14.0" + } + }, "node_modules/hardhat/node_modules/universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "license": "MIT", "engines": { "node": ">= 4.0.0" } }, + "node_modules/hardhat/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/has-property-descriptors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0" }, @@ -15533,9 +15822,14 @@ } }, "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -15544,9 +15838,10 @@ } }, "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -15558,7 +15853,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, + "license": "MIT", "dependencies": { "has-symbols": "^1.0.3" }, @@ -15573,12 +15868,14 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/hash-base": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "license": "MIT", "dependencies": { "inherits": "^2.0.4", "readable-stream": "^3.6.0", @@ -15588,29 +15885,11 @@ "node": ">=4" } }, - "node_modules/hash-base/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/hash.js": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "license": "MIT", "dependencies": { "inherits": "^2.0.3", "minimalistic-assert": "^1.0.1" @@ -15620,6 +15899,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", "dependencies": { "function-bind": "^1.1.2" }, @@ -15631,6 +15911,8 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "license": "MIT", "bin": { "he": "bin/he" } @@ -15639,12 +15921,14 @@ "version": "0.2.7", "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "license": "MIT", "dependencies": { "hash.js": "^1.0.3", "minimalistic-assert": "^1.0.0", @@ -15656,6 +15940,7 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", "dev": true, + "license": "ISC", "dependencies": { "lru-cache": "^10.0.1" }, @@ -15663,16 +15948,11 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true - }, "node_modules/hpagent": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-1.2.0.tgz", "integrity": "sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA==", + "license": "MIT", "engines": { "node": ">=14" } @@ -15681,13 +15961,15 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/http-basic": { "version": "8.1.3", "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz", "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==", "dev": true, + "license": "MIT", "dependencies": { "caseless": "^0.12.0", "concat-stream": "^1.6.2", @@ -15706,6 +15988,7 @@ "engines": [ "node >= 0.8" ], + "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -15713,17 +15996,12 @@ "typedarray": "^0.0.6" } }, - "node_modules/http-basic/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, "node_modules/http-basic/node_modules/readable-stream": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, + "license": "MIT", "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -15734,25 +16012,35 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/http-basic/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT" + }, "node_modules/http-basic/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, + "license": "MIT", "dependencies": { "safe-buffer": "~5.1.0" } }, "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "devOptional": true + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "devOptional": true, + "license": "BSD-2-Clause" }, "node_modules/http-errors": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "license": "MIT", "optional": true, "dependencies": { "depd": "~1.1.2", @@ -15769,6 +16057,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "license": "MIT", "optional": true, "engines": { "node": ">= 0.6" @@ -15779,6 +16068,7 @@ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "^7.1.0", "debug": "^4.3.4" @@ -15787,20 +16077,12 @@ "node": ">= 14" } }, - "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", - "dev": true, - "engines": { - "node": ">= 14" - } - }, "node_modules/http-response-object": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "^10.0.3" } @@ -15809,12 +16091,14 @@ "version": "10.17.60", "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/http2-wrapper": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "license": "MIT", "optional": true, "dependencies": { "quick-lru": "^5.1.1", @@ -15828,6 +16112,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "license": "MIT", "optional": true, "engines": { "node": ">=10" @@ -15837,15 +16122,17 @@ } }, "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dev": true, + "license": "MIT", "dependencies": { - "agent-base": "6", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/human-signals": { @@ -15853,6 +16140,7 @@ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=10.17.0" } @@ -15861,6 +16149,8 @@ "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -15885,13 +16175,15 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "BSD-3-Clause" }, "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" } @@ -15901,6 +16193,7 @@ "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz", "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==", "dev": true, + "license": "ISC", "dependencies": { "minimatch": "^9.0.0" }, @@ -15909,10 +16202,11 @@ } }, "node_modules/ignore-walk/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } @@ -15922,6 +16216,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -15944,15 +16239,18 @@ } }, "node_modules/immutable": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", - "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==" + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", + "dev": true, + "license": "MIT" }, "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", "dev": true, + "license": "MIT", "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -15969,6 +16267,7 @@ "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", "dev": true, + "license": "MIT", "dependencies": { "pkg-dir": "^4.2.0", "resolve-cwd": "^3.0.0" @@ -15988,6 +16287,7 @@ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.19" } @@ -15996,6 +16296,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -16004,6 +16306,9 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "devOptional": true, + "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -16012,19 +16317,22 @@ "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" }, "node_modules/ini": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/init-package-json": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-6.0.3.tgz", "integrity": "sha512-Zfeb5ol+H+eqJWHTaGca9BovufyGeIfr4zaaBorPmJBMrJ+KBnN+kQx2ZtXdsotUTgldHmHQV44xvUWOUA7E2w==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/package-json": "^5.0.0", "npm-package-arg": "^11.0.0", @@ -16038,23 +16346,12 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/init-package-json/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/inquirer": { "version": "8.2.6", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz", "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==", "dev": true, + "license": "MIT", "dependencies": { "ansi-escapes": "^4.2.1", "chalk": "^4.1.1", @@ -16081,6 +16378,7 @@ "resolved": "https://registry.npmjs.org/inquirer-autocomplete-prompt/-/inquirer-autocomplete-prompt-1.4.0.tgz", "integrity": "sha512-qHgHyJmbULt4hI+kCmwX92MnSxDs/Yhdt4wPA30qnoa01OF6uTXV8yvH4hKXgdaTNmkZ9D01MHjqKYEuJN+ONw==", "dev": true, + "license": "ISC", "dependencies": { "ansi-escapes": "^4.3.1", "chalk": "^4.0.0", @@ -16095,69 +16393,12 @@ "inquirer": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/inquirer-autocomplete-prompt/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/inquirer-autocomplete-prompt/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/inquirer-autocomplete-prompt/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/inquirer-autocomplete-prompt/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer-autocomplete-prompt/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/inquirer-autocomplete-prompt/node_modules/rxjs": { "version": "6.6.7", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, + "license": "Apache-2.0", "dependencies": { "tslib": "^1.9.0" }, @@ -16165,111 +16406,23 @@ "npm": ">=2.0.0" } }, - "node_modules/inquirer-autocomplete-prompt/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "node_modules/inquirer-autocomplete-prompt/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } + "license": "0BSD" }, "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "dev": true, + "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "hasown": "^2.0.2", + "side-channel": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -16280,6 +16433,7 @@ "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.10" } @@ -16288,6 +16442,8 @@ "version": "1.10.4", "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-1.10.4.tgz", "integrity": "sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==", + "dev": true, + "license": "MIT", "dependencies": { "fp-ts": "^1.0.0" } @@ -16297,6 +16453,7 @@ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", "dev": true, + "license": "MIT", "dependencies": { "jsbn": "1.1.0", "sprintf-js": "^1.1.3" @@ -16306,13 +16463,15 @@ } }, "node_modules/is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -16325,15 +16484,40 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "dev": true, + "license": "MIT", "dependencies": { - "has-bigints": "^1.0.1" + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -16343,6 +16527,8 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", "dependencies": { "binary-extensions": "^2.0.0" }, @@ -16351,13 +16537,14 @@ } }, "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -16370,7 +16557,7 @@ "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -16383,6 +16570,7 @@ "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", "dev": true, + "license": "MIT", "dependencies": { "ci-info": "^3.2.0" }, @@ -16390,39 +16578,31 @@ "is-ci": "bin.js" } }, - "node_modules/is-ci/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, + "license": "MIT", "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-data-view": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", - "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", "dev": true, + "license": "MIT", "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", "is-typed-array": "^1.1.13" }, "engines": { @@ -16433,12 +16613,14 @@ } }, "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "dev": true, + "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -16452,6 +16634,7 @@ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "dev": true, + "license": "MIT", "bin": { "is-docker": "cli.js" }, @@ -16466,16 +16649,35 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "license": "MIT", + "engines": { + "node": ">=8" } }, "node_modules/is-generator-fn": { @@ -16483,14 +16685,36 @@ "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" }, @@ -16503,6 +16727,7 @@ "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", "integrity": "sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.5.0", "npm": ">=3" @@ -16513,6 +16738,7 @@ "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -16521,13 +16747,28 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/is-negative-zero": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -16539,17 +16780,21 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", "engines": { "node": ">=0.12.0" } }, "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "dev": true, + "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -16563,6 +16808,17 @@ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -16572,6 +16828,7 @@ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -16581,6 +16838,7 @@ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, + "license": "MIT", "dependencies": { "isobject": "^3.0.1" }, @@ -16589,14 +16847,30 @@ } }, "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -16605,12 +16879,13 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", - "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7" + "call-bound": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -16624,28 +16899,29 @@ "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.1.tgz", "integrity": "sha512-JNeu1wQsHjyHgn9NcWTaXq6zWSR6hqE0++zhfZlkFBbScNkyvxCdeV8sRkSBaeLKxmbpR21brail63ACNxJ0Tg==", "dev": true, + "license": "MIT", "dependencies": { "protocols": "^2.0.1" } }, "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "license": "MIT", "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "dev": true, + "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -16655,12 +16931,15 @@ } }, "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "dev": true, + "license": "MIT", "dependencies": { - "has-symbols": "^1.0.2" + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -16674,6 +16953,7 @@ "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==", "dev": true, + "license": "MIT", "dependencies": { "text-extensions": "^1.0.0" }, @@ -16682,12 +16962,12 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", - "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", - "dev": true, + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "license": "MIT", "dependencies": { - "which-typed-array": "^1.1.14" + "which-typed-array": "^1.1.16" }, "engines": { "node": ">= 0.4" @@ -16700,6 +16980,8 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -16707,13 +16989,47 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2" + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -16724,6 +17040,7 @@ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", "dev": true, + "license": "MIT", "dependencies": { "is-docker": "^2.0.0" }, @@ -16732,22 +17049,25 @@ } }, "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "license": "MIT" }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -16756,6 +17076,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "license": "MIT", "dependencies": { "node-fetch": "^2.6.1", "whatwg-fetch": "^3.4.1" @@ -16765,21 +17086,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz", "integrity": "sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==", - "peerDependencies": { - "ws": "*" - } - }, - "node_modules/isows": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/isows/-/isows-1.0.7.tgz", - "integrity": "sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/wevm" - } - ], "license": "MIT", "peerDependencies": { "ws": "*" @@ -16790,15 +17096,17 @@ "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=8" } }, "node_modules/istanbul-lib-instrument": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz", - "integrity": "sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "@babel/core": "^7.23.9", "@babel/parser": "^7.23.9", @@ -16810,44 +17118,12 @@ "node": ">=10" } }, - "node_modules/istanbul-lib-instrument/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/istanbul-lib-report": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "istanbul-lib-coverage": "^3.0.0", "make-dir": "^4.0.0", @@ -16857,32 +17133,12 @@ "node": ">=10" } }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/istanbul-lib-source-maps": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "debug": "^4.1.1", "istanbul-lib-coverage": "^3.0.0", @@ -16897,6 +17153,7 @@ "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" @@ -16910,6 +17167,7 @@ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -16925,6 +17183,7 @@ "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "async": "^3.2.3", "chalk": "^4.0.2", @@ -16938,107 +17197,39 @@ "node": ">=10" } }, - "node_modules/jake/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, + "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/jake/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jake/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jake/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jake/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jake/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", - "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", - "dev": true, - "dependencies": { - "@jest/core": "^29.7.0", - "@jest/types": "^29.6.3", - "import-local": "^3.0.2", - "jest-cli": "^29.7.0" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/jest-changed-files": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", - "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", "dev": true, + "license": "MIT", "dependencies": { "execa": "^5.0.0", "jest-util": "^29.7.0", @@ -17053,6 +17244,7 @@ "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", "dev": true, + "license": "MIT", "dependencies": { "@jest/environment": "^29.7.0", "@jest/expect": "^29.7.0", @@ -17079,81 +17271,12 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-circus/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-circus/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-circus/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-circus/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-circus/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-circus/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-cli": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", "dev": true, + "license": "MIT", "dependencies": { "@jest/core": "^29.7.0", "@jest/test-result": "^29.7.0", @@ -17182,81 +17305,12 @@ } } }, - "node_modules/jest-cli/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-cli/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-cli/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-cli/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-cli/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-cli/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-config": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", "dev": true, + "license": "MIT", "dependencies": { "@babel/core": "^7.11.6", "@jest/test-sequencer": "^29.7.0", @@ -17297,181 +17351,50 @@ } } }, - "node_modules/jest-config/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/jest-config/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { - "color-convert": "^2.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=8" + "node": "*" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/jest-config/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-config/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-config/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-config/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-diff": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", - "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.6.3", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-diff/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-diff/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-diff/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-diff/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-diff/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-diff/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-docblock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", - "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", "dev": true, + "license": "MIT", "dependencies": { "detect-newline": "^3.0.0" }, @@ -17484,6 +17407,7 @@ "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", "dev": true, + "license": "MIT", "dependencies": { "@jest/types": "^29.6.3", "chalk": "^4.0.0", @@ -17495,81 +17419,12 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-each/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-each/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-each/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-each/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-each/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-each/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-environment-node": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, + "license": "MIT", "dependencies": { "@jest/environment": "^29.7.0", "@jest/fake-timers": "^29.7.0", @@ -17587,6 +17442,7 @@ "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", "dev": true, + "license": "MIT", "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } @@ -17596,6 +17452,7 @@ "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, + "license": "MIT", "dependencies": { "@jest/types": "^29.6.3", "@types/graceful-fs": "^4.1.3", @@ -17621,6 +17478,7 @@ "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", "dev": true, + "license": "MIT", "dependencies": { "jest-get-type": "^29.6.3", "pretty-format": "^29.7.0" @@ -17634,6 +17492,7 @@ "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", "dev": true, + "license": "MIT", "dependencies": { "chalk": "^4.0.0", "jest-diff": "^29.7.0", @@ -17644,195 +17503,58 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-matcher-utils/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", "dev": true, + "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-matcher-utils/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-matcher-utils/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, + "license": "MIT", "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-matcher-utils/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-matcher-utils/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-matcher-utils/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", - "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-message-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-message-util/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-message-util/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-message-util/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-mock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", - "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } } }, "node_modules/jest-regex-util": { @@ -17840,6 +17562,7 @@ "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", "dev": true, + "license": "MIT", "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } @@ -17849,6 +17572,7 @@ "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", "dev": true, + "license": "MIT", "dependencies": { "chalk": "^4.0.0", "graceful-fs": "^4.2.9", @@ -17869,6 +17593,7 @@ "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", "dev": true, + "license": "MIT", "dependencies": { "jest-regex-util": "^29.6.3", "jest-snapshot": "^29.7.0" @@ -17877,81 +17602,12 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-resolve/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-resolve/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-resolve/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-resolve/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-resolve/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-resolve/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-runner": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", "dev": true, + "license": "MIT", "dependencies": { "@jest/console": "^29.7.0", "@jest/environment": "^29.7.0", @@ -17979,187 +17635,71 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-runner/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/jest-runner/node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", "dev": true, + "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "node_modules/jest-runner/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-runner/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-runner/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-runner/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runner/node_modules/source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/jest-runner/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runtime": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", - "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/globals": "^29.7.0", - "@jest/source-map": "^29.6.3", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-runtime/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-runtime/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/jest-runtime/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=10" + "node": "*" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-runtime/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-runtime/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-runtime/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runtime/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/jest-snapshot": { @@ -18167,6 +17707,7 @@ "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/core": "^7.11.6", "@babel/generator": "^7.7.2", @@ -18193,385 +17734,73 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-snapshot/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-snapshot/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-snapshot/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-snapshot/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/jest-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", - "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-util/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-util/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-util/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-validate": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", - "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "leven": "^3.1.0", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-validate/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-validate/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-validate/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-validate/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-validate/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-validate/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-watcher": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", - "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "jest-util": "^29.7.0", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-watcher/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-watcher/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-watcher/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", "dev": true, + "license": "MIT", "dependencies": { - "color-name": "~1.1.4" + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" }, "engines": { - "node": ">=7.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-watcher/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jest-watcher/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, + "license": "MIT", "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-watcher/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", "dev": true, + "license": "MIT", "dependencies": { - "has-flag": "^4.0.0" + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-worker": { @@ -18579,6 +17808,7 @@ "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*", "jest-util": "^29.7.0", @@ -18589,20 +17819,12 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-worker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-worker/node_modules/supports-color": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -18616,29 +17838,35 @@ "node_modules/js-base64": { "version": "3.7.7", "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.7.tgz", - "integrity": "sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==" + "integrity": "sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==", + "license": "BSD-3-Clause" }, "node_modules/js-sha256": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==", + "license": "MIT", "optional": true }, "node_modules/js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", + "license": "MIT" }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", "dependencies": { "argparse": "^2.0.1" }, @@ -18650,13 +17878,15 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/jsesc": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, + "license": "MIT", "bin": { "jsesc": "bin/jsesc" }, @@ -18668,20 +17898,31 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==", + "license": "MIT", "dependencies": { "bignumber.js": "^9.0.0" } }, + "node_modules/json-bignum": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/json-bignum/-/json-bignum-0.0.3.tgz", + "integrity": "sha512-2WHyXj3OfHSgNyuzDbSxI1w2jgw5gkWSWhS7Qg4bWXx1nLk3jnbwfUeS0PSba3IzpTUWdHxBieELUzXRjQB2zg==", + "engines": { + "node": ">=0.8" + } + }, "node_modules/json-buffer": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/json-duplicate-key-handle": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-duplicate-key-handle/-/json-duplicate-key-handle-1.0.0.tgz", "integrity": "sha512-OLIxL+UpfwUsqcLX3i6Z51ChTou/Vje+6bSeGUSubj96dF/SfjObDprLy++ZXYH07KITuEzsXS7PX7e/BGf4jw==", + "license": "MIT", "dependencies": { "backslash": "^0.2.0" } @@ -18690,13 +17931,15 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-parse-even-better-errors": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", "dev": true, + "license": "MIT", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -18705,18 +17948,22 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/json-stream-stringify": { "version": "3.1.6", "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz", "integrity": "sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==", + "dev": true, + "license": "MIT", "engines": { "node": ">=7.10.1" } @@ -18726,6 +17973,7 @@ "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz", "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==", "dev": true, + "license": "ISC", "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -18734,13 +17982,15 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, + "license": "MIT", "bin": { "json5": "lib/cli.js" }, @@ -18752,12 +18002,14 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/jsonfile": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "license": "MIT", "dependencies": { "universalify": "^2.0.0" }, @@ -18772,13 +18024,15 @@ "dev": true, "engines": [ "node >= 0.2.0" - ] + ], + "license": "MIT" }, "node_modules/jsonschema": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz", - "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.5.0.tgz", + "integrity": "sha512-K+A9hhqbn0f3pJX17Q/7H6yQfD/5OXgdrR5UE12gMXCiN9D5Xq2o5mddV2QEcX/bjla99ASsAAQUyMCCRWAEhw==", "dev": true, + "license": "MIT", "engines": { "node": "*" } @@ -18788,6 +18042,7 @@ "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", "dev": true, + "license": "(MIT OR Apache-2.0)", "dependencies": { "jsonparse": "^1.2.0", "through": ">=2.2.7 <3" @@ -18803,24 +18058,28 @@ "version": "6.0.2", "resolved": "https://registry.npmjs.org/just-diff/-/just-diff-6.0.2.tgz", "integrity": "sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/just-diff-apply": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.5.0.tgz", "integrity": "sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/just-extend": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-6.2.0.tgz", - "integrity": "sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw==" + "integrity": "sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw==", + "license": "MIT" }, "node_modules/keccak": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.4.tgz", "integrity": "sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==", "hasInstallScript": true, + "license": "MIT", "dependencies": { "node-addon-api": "^2.0.0", "node-gyp-build": "^4.2.0", @@ -18835,6 +18094,7 @@ "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "devOptional": true, + "license": "MIT", "dependencies": { "json-buffer": "3.0.1" } @@ -18844,6 +18104,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -18853,6 +18114,7 @@ "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -18860,15 +18122,17 @@ "node_modules/kuler": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", - "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==", + "license": "MIT" }, "node_modules/lerna": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/lerna/-/lerna-8.2.1.tgz", - "integrity": "sha512-Xwjv9/4ixp7fpBWhtvp7dz4NoQT8DEf7hzibHKCgu/8kmZUHeXsTn+TKspHqhI+p4YDmdkDnkg8xmymz73kVOg==", + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/lerna/-/lerna-8.2.3.tgz", + "integrity": "sha512-rmuDU+92eWUnnyaPg3Ise339pTxF+r2hu8ky/soCfbGpUoW4kCwsDza3P/LtQJWrKwZWHcosEitfYvxGUWZ16A==", "dev": true, + "license": "MIT", "dependencies": { - "@lerna/create": "8.2.1", + "@lerna/create": "8.2.3", "@npmcli/arborist": "7.5.4", "@npmcli/package-json": "5.2.0", "@npmcli/run-script": "8.1.0", @@ -18895,7 +18159,6 @@ "get-stream": "6.0.0", "git-url-parse": "14.0.0", "glob-parent": "6.0.2", - "globby": "11.1.0", "graceful-fs": "4.2.11", "has-unicode": "2.0.1", "import-local": "3.1.0", @@ -18935,9 +18198,10 @@ "slash": "3.0.0", "ssri": "^10.0.6", "string-width": "^4.2.3", - "strong-log-transformer": "2.1.0", "tar": "6.2.1", "temp-dir": "1.0.0", + "through": "2.3.8", + "tinyglobby": "0.2.12", "typescript": ">=3 < 6", "upath": "2.0.1", "uuid": "^10.0.0", @@ -18961,6 +18225,7 @@ "resolved": "https://registry.npmjs.org/lerna-update-wizard/-/lerna-update-wizard-1.1.2.tgz", "integrity": "sha512-VOP3UxEHfwnlNNQKi79giXnHzGvQ0BohUA/lw1WbpHKAHq9+OWSTTmiqVyLou+SNDrNscdvH65CIt+hs9OGKXA==", "dev": true, + "license": "MIT", "dependencies": { "chalk": "^4.1.2", "execution-time": "^1.4.1", @@ -18981,60 +18246,12 @@ "node": ">=12" } }, - "node_modules/lerna-update-wizard/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/lerna-update-wizard/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/lerna-update-wizard/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/lerna-update-wizard/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/lerna-update-wizard/node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -19048,6 +18265,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -19057,20 +18275,12 @@ "node": ">=12" } }, - "node_modules/lerna-update-wizard/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/lerna-update-wizard/node_modules/hosted-git-info": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -19083,6 +18293,7 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^4.1.0" }, @@ -19095,6 +18306,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -19107,6 +18319,7 @@ "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/minimist": "^1.2.0", "camelcase-keys": "^6.2.2", @@ -19133,6 +18346,7 @@ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^4.0.1", "is-core-module": "^2.5.0", @@ -19148,6 +18362,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -19163,6 +18378,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^2.2.0" }, @@ -19175,6 +18391,7 @@ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, + "license": "MIT", "dependencies": { "@types/normalize-package-data": "^2.4.0", "normalize-package-data": "^2.5.0", @@ -19190,6 +18407,7 @@ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^4.1.0", "read-pkg": "^5.2.0", @@ -19207,6 +18425,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -19215,13 +18434,15 @@ "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/lerna-update-wizard/node_modules/read-pkg/node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -19234,6 +18455,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } @@ -19243,33 +18465,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/lerna-update-wizard/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/lerna-update-wizard/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -19279,6 +18475,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -19286,25 +18483,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lerna-update-wizard/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/lerna/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/lerna-update-wizard/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, + "license": "ISC", "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=10" } }, "node_modules/lerna/node_modules/chalk": { @@ -19312,6 +18498,7 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -19323,64 +18510,12 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/lerna/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/lerna/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/lerna/node_modules/execa": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", - "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/lerna/node_modules/get-stream": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", - "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/lerna/node_modules/glob": { "version": "9.3.5", "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "minimatch": "^8.0.2", @@ -19395,10 +18530,11 @@ } }, "node_modules/lerna/node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } @@ -19408,6 +18544,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -19418,41 +18555,12 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/lerna/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/lerna/node_modules/is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/lerna/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/lerna/node_modules/minimatch": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz", "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -19465,6 +18573,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", "dev": true, + "license": "ISC", "engines": { "node": ">=8" } @@ -19474,6 +18583,7 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -19483,6 +18593,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", "dev": true, + "license": "ISC", "dependencies": { "glob": "^9.2.0" }, @@ -19496,91 +18607,12 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/lerna/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/lerna/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lerna/node_modules/uuid": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", - "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", - "dev": true, - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/lerna/node_modules/write-file-atomic": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/lerna/node_modules/write-file-atomic/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/lerna/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/lerna/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -19590,6 +18622,7 @@ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" @@ -19603,6 +18636,7 @@ "resolved": "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-8.0.6.tgz", "integrity": "sha512-uM8DHDEfYG6G5gVivVl+yQd4pH3uRclHC59lzIbSvy7b5FEwR+mU49Zq1jEyRtRFv7+M99mUW9S0wL/4laT4lw==", "dev": true, + "license": "ISC", "dependencies": { "npm-package-arg": "^11.0.2", "npm-registry-fetch": "^17.0.1" @@ -19616,6 +18650,7 @@ "resolved": "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-9.0.9.tgz", "integrity": "sha512-26zzwoBNAvX9AWOPiqqF6FG4HrSCPsHFkQm7nT+xU1ggAujL/eae81RnCv4CJ2In9q9fh10B88sYSzKCUh/Ghg==", "dev": true, + "license": "ISC", "dependencies": { "ci-info": "^4.0.0", "normalize-package-data": "^6.0.1", @@ -19641,33 +18676,24 @@ "url": "https://github.com/sponsors/sibiraj-s" } ], + "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/libnpmpublish/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/libsodium-sumo": { - "version": "0.7.13", - "resolved": "https://registry.npmjs.org/libsodium-sumo/-/libsodium-sumo-0.7.13.tgz", - "integrity": "sha512-zTGdLu4b9zSNLfovImpBCbdAA4xkpkZbMnSQjP8HShyOutnGjRHmSOKlsylh1okao6QhLiz7nG98EGn+04cZjQ==" + "version": "0.7.15", + "resolved": "https://registry.npmjs.org/libsodium-sumo/-/libsodium-sumo-0.7.15.tgz", + "integrity": "sha512-5tPmqPmq8T8Nikpm1Nqj0hBHvsLFCXvdhBFV7SGOitQPZAA6jso8XoL0r4L7vmfKXr486fiQInvErHtEvizFMw==", + "license": "ISC" }, "node_modules/libsodium-wrappers-sumo": { - "version": "0.7.13", - "resolved": "https://registry.npmjs.org/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.13.tgz", - "integrity": "sha512-lz4YdplzDRh6AhnLGF2Dj2IUj94xRN6Bh8T0HLNwzYGwPehQJX6c7iYVrFUPZ3QqxE0bqC+K0IIqqZJYWumwSQ==", + "version": "0.7.15", + "resolved": "https://registry.npmjs.org/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.15.tgz", + "integrity": "sha512-aSWY8wKDZh5TC7rMvEdTHoyppVq/1dTSAeAR7H6pzd6QRT3vQWcT5pGwCotLcpPEOLXX6VvqihSPkpEhYAjANA==", + "license": "ISC", "dependencies": { - "libsodium-sumo": "^0.7.13" + "libsodium-sumo": "^0.7.15" } }, "node_modules/lines-and-columns": { @@ -19675,6 +18701,7 @@ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz", "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==", "dev": true, + "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -19684,6 +18711,7 @@ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz", "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.15", "parse-json": "^5.0.0", @@ -19699,6 +18727,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -19707,6 +18736,8 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^5.0.0" }, @@ -19720,13 +18751,14 @@ "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "license": "MIT" }, "node_modules/lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", - "dev": true + "license": "MIT" }, "node_modules/lodash.clonedeep": { "version": "4.5.0", @@ -19738,122 +18770,58 @@ "node_modules/lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", - "deprecated": "This package is deprecated. Use require('node:util').isDeepStrictEqual instead.", - "dev": true, + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "deprecated": "This package is deprecated. Use the optional chaining (?.) operator instead.", "license": "MIT" }, "node_modules/lodash.ismatch": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true + "license": "MIT" }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==" + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", + "license": "MIT" }, "node_modules/log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "license": "MIT", "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dependencies": { - "has-flag": "^4.0.0" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/logform": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz", - "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", + "license": "MIT", "dependencies": { "@colors/colors": "1.6.0", "@types/triple-beam": "^1.3.2", @@ -19869,13 +18837,15 @@ "node_modules/long": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", + "license": "Apache-2.0" }, "node_modules/loupe": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", "dev": true, + "license": "MIT", "dependencies": { "get-func-name": "^2.0.1" } @@ -19884,6 +18854,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "license": "MIT", "optional": true, "engines": { "node": ">=8" @@ -19892,22 +18863,23 @@ "node_modules/lru_map": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", - "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==" + "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==", + "dev": true, + "license": "MIT" }, "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } + "license": "ISC" }, "node_modules/make-dir": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, + "license": "MIT", "dependencies": { "semver": "^7.5.3" }, @@ -19918,50 +18890,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-dir/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "devOptional": true + "dev": true, + "license": "ISC" }, "node_modules/make-fetch-happen": { "version": "13.0.1", "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/agent": "^2.0.0", "cacache": "^18.0.0", @@ -19985,6 +18926,7 @@ "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "tmpl": "1.0.5" } @@ -19994,6 +18936,7 @@ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -20005,12 +18948,23 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-1.1.3.tgz", "integrity": "sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } }, "node_modules/md5.js": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "license": "MIT", "dependencies": { "hash-base": "^3.0.0", "inherits": "^2.0.1", @@ -20021,6 +18975,7 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "dev": true, "engines": { "node": ">= 0.10.0" } @@ -20030,6 +18985,7 @@ "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", "dev": true, + "license": "MIT", "dependencies": { "@types/minimist": "^1.2.0", "camelcase-keys": "^6.2.2", @@ -20055,6 +19011,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -20068,6 +19025,7 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -20080,6 +19038,7 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^4.1.0" }, @@ -20092,6 +19051,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -20104,6 +19064,7 @@ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^4.0.1", "is-core-module": "^2.5.0", @@ -20119,6 +19080,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -20134,6 +19096,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^2.2.0" }, @@ -20146,6 +19109,7 @@ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, + "license": "MIT", "dependencies": { "@types/normalize-package-data": "^2.4.0", "normalize-package-data": "^2.5.0", @@ -20161,6 +19125,7 @@ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^4.1.0", "read-pkg": "^5.2.0", @@ -20178,6 +19143,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -20186,13 +19152,15 @@ "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -20205,6 +19173,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } @@ -20214,27 +19183,17 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } }, - "node_modules/meow/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/meow/node_modules/type-fest": { "version": "0.18.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -20242,23 +19201,29 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/meow/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 8" } @@ -20267,6 +19232,7 @@ "version": "0.14.0", "resolved": "https://registry.npmjs.org/micro-eth-signer/-/micro-eth-signer-0.14.0.tgz", "integrity": "sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==", + "dev": true, "license": "MIT", "dependencies": { "@noble/curves": "~1.8.1", @@ -20278,6 +19244,7 @@ "version": "1.8.2", "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz", "integrity": "sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==", + "dev": true, "license": "MIT", "dependencies": { "@noble/hashes": "1.7.2" @@ -20293,6 +19260,7 @@ "version": "1.7.2", "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz", "integrity": "sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==", + "dev": true, "license": "MIT", "engines": { "node": "^14.21.3 || >=16" @@ -20304,12 +19272,14 @@ "node_modules/micro-ftch": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.3.1.tgz", - "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==" + "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==", + "license": "MIT" }, "node_modules/micro-packed": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/micro-packed/-/micro-packed-0.7.3.tgz", "integrity": "sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg==", + "dev": true, "license": "MIT", "dependencies": { "@scure/base": "~1.2.5" @@ -20318,20 +19288,12 @@ "url": "https://paulmillr.com/funding/" } }, - "node_modules/micro-packed/node_modules/@scure/base": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz", - "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==", - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/micromatch": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, + "license": "MIT", "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" @@ -20344,6 +19306,7 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -20352,6 +19315,7 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", "dependencies": { "mime-db": "1.52.0" }, @@ -20364,6 +19328,7 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -20372,6 +19337,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "license": "MIT", "optional": true, "engines": { "node": ">=4" @@ -20382,6 +19348,7 @@ "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -20389,18 +19356,21 @@ "node_modules/minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "license": "ISC" }, "node_modules/minimalistic-crypto-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", + "license": "MIT" }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "devOptional": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -20413,6 +19383,7 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -20422,6 +19393,7 @@ "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", "dev": true, + "license": "MIT", "dependencies": { "arrify": "^1.0.1", "is-plain-obj": "^1.1.0", @@ -20436,6 +19408,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, + "license": "ISC", "engines": { "node": ">=16 || 14 >=14.17" } @@ -20445,6 +19418,7 @@ "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^7.0.3" }, @@ -20457,6 +19431,7 @@ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", "dev": true, + "license": "MIT", "dependencies": { "minipass": "^7.0.3", "minipass-sized": "^1.0.3", @@ -20474,6 +19449,7 @@ "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^3.0.0" }, @@ -20486,6 +19462,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -20493,17 +19470,12 @@ "node": ">=8" } }, - "node_modules/minipass-flush/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/minipass-pipeline": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^3.0.0" }, @@ -20516,6 +19488,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -20523,17 +19496,12 @@ "node": ">=8" } }, - "node_modules/minipass-pipeline/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/minipass-sized": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^3.0.0" }, @@ -20546,6 +19514,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -20553,17 +19522,12 @@ "node": ">=8" } }, - "node_modules/minipass-sized/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "devOptional": true, + "license": "MIT", "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -20577,6 +19541,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "devOptional": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -20584,17 +19549,12 @@ "node": ">=8" } }, - "node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "devOptional": true - }, "node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "devOptional": true, + "license": "MIT", "bin": { "mkdirp": "bin/cmd.js" }, @@ -20606,6 +19566,8 @@ "version": "0.38.5", "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", "integrity": "sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==", + "dev": true, + "license": "MIT", "dependencies": { "obliterator": "^2.0.0" } @@ -20614,6 +19576,8 @@ "version": "10.8.2", "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", + "dev": true, + "license": "MIT", "dependencies": { "ansi-colors": "^4.1.3", "browser-stdout": "^1.3.1", @@ -20645,28 +19609,59 @@ } }, "node_modules/mocha/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } }, - "node_modules/mocha/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "node_modules/mocha/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, "engines": { - "node": ">=10" + "node": ">= 8.10.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/mocha/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, "node_modules/mocha/node_modules/glob": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -20681,18 +19676,25 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mocha/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/mocha/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, "engines": { - "node": ">=8" + "node": ">= 6" } }, "node_modules/mocha/node_modules/minimatch": { "version": "5.1.6", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -20700,10 +19702,25 @@ "node": ">=10" } }, + "node_modules/mocha/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, "node_modules/mocha/node_modules/supports-color": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^4.0.0" }, @@ -20714,10 +19731,30 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, + "node_modules/mocha/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/mocha/node_modules/yargs": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "license": "MIT", "dependencies": { "cliui": "^7.0.2", "escalade": "^3.1.1", @@ -20735,6 +19772,8 @@ "version": "20.2.9", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", "engines": { "node": ">=10" } @@ -20744,6 +19783,7 @@ "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -20751,13 +19791,15 @@ "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" }, "node_modules/multimatch": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", "dev": true, + "license": "MIT", "dependencies": { "@types/minimatch": "^3.0.3", "array-differ": "^3.0.0", @@ -20777,6 +19819,7 @@ "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -20785,6 +19828,7 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==", + "license": "MIT", "optional": true, "bin": { "mustache": "bin/mustache" @@ -20794,24 +19838,28 @@ "version": "0.0.8", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/nanoassert": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/nanoassert/-/nanoassert-1.1.0.tgz", - "integrity": "sha512-C40jQ3NzfkP53NsO8kEOFd79p4b9kDXQMwgiY1z8ZwrDZgUyom0AHwGegF4Dm99L+YoYhuaB0ceerUcXmqr1rQ==" + "integrity": "sha512-C40jQ3NzfkP53NsO8kEOFd79p4b9kDXQMwgiY1z8ZwrDZgUyom0AHwGegF4Dm99L+YoYhuaB0ceerUcXmqr1rQ==", + "license": "ISC" }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/natural-compare-lite": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/ndjson": { "version": "2.0.0", @@ -20847,6 +19895,7 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/near-abi/-/near-abi-0.1.1.tgz", "integrity": "sha512-RVDI8O+KVxRpC3KycJ1bpfVj9Zv+xvq9PlW1yIFl46GhrnLw83/72HqHGjGDjQ8DtltkcpSjY9X3YIGZ+1QyzQ==", + "license": "(MIT AND Apache-2.0)", "optional": true, "dependencies": { "@types/json-schema": "^7.0.11" @@ -20856,6 +19905,7 @@ "version": "2.1.4", "resolved": "https://registry.npmjs.org/near-api-js/-/near-api-js-2.1.4.tgz", "integrity": "sha512-e1XicyvJvQMtu7qrG8oWyAdjHJJCoy+cvbW6h2Dky4yj7vC85omQz/x7IgKl71VhzDj2/TGUwjTVESp6NSe75A==", + "license": "(MIT AND Apache-2.0)", "optional": true, "dependencies": { "@near-js/accounts": "0.1.4", @@ -20882,25 +19932,44 @@ } }, "node_modules/near-api-js/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", "optional": true, "dependencies": { - "fast-deep-equal": "^3.1.1", + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "require-from-string": "^2.0.2" }, "funding": { "type": "github", "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/near-api-js/node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/near-api-js/node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "license": "MIT", + "optional": true + }, "node_modules/near-api-js/node_modules/borsh": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz", "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==", + "license": "Apache-2.0", "optional": true, "dependencies": { "bn.js": "^5.2.0", @@ -20908,10 +19977,21 @@ "text-encoding-utf-8": "^1.0.2" } }, + "node_modules/near-api-js/node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "license": "MIT", + "optional": true, + "dependencies": { + "base-x": "^3.0.2" + } + }, "node_modules/near-api-js/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT", "optional": true }, "node_modules/near-sandbox": { @@ -20919,6 +19999,7 @@ "resolved": "https://registry.npmjs.org/near-sandbox/-/near-sandbox-0.0.17.tgz", "integrity": "sha512-bL0We378hFZ0/xHAKP5mAWKS5OjzU6+VuvMlXpMwyFAwG2s5NwOnzRTezvYYwQNtG3iU+xvQ6jWvp7UO1STGLQ==", "hasInstallScript": true, + "license": "MIT", "optional": true, "dependencies": { "got": "^11.8.2", @@ -20933,6 +20014,7 @@ "version": "0.1.9", "resolved": "https://registry.npmjs.org/near-units/-/near-units-0.1.9.tgz", "integrity": "sha512-xiuBjpNsi+ywiu7P6iWRZdgFm7iCr/cfWlVO6+e5uaAqH4mE1rrurElyrL91llNDSnMwogd9XmlZOw5KbbHNsA==", + "license": "(MIT AND Apache-2.0)", "optional": true, "dependencies": { "bn.js": "^5.2.0" @@ -20946,6 +20028,7 @@ "resolved": "https://registry.npmjs.org/near-workspaces/-/near-workspaces-3.5.0.tgz", "integrity": "sha512-lkRCP2os8v7W+q1maQPSEI98f+YiPb86ibDyIy8bxr6fqnJPOsIRR3xE33rOwBsiph3WuUH46qtpYK0a+Co+EQ==", "hasInstallScript": true, + "license": "(MIT AND Apache-2.0)", "optional": true, "dependencies": { "base64url": "^3.0.1", @@ -20970,10 +20053,31 @@ "npm": ">= 6.0.0" } }, + "node_modules/near-workspaces/node_modules/base-x": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", + "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/near-workspaces/node_modules/bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "license": "MIT", + "optional": true, + "dependencies": { + "base-x": "^3.0.2" + } + }, "node_modules/near-workspaces/node_modules/callsites": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.1.0.tgz", - "integrity": "sha512-aBMbD1Xxay75ViYezwT40aQONfr+pSXTHwNKvIXhXD6+LY3F1dLIcceoC5OZKBVHbXcysz1hL9D2w0JJIMXpUw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-4.2.0.tgz", + "integrity": "sha512-kfzR4zzQtAE9PC7CzZsjl3aBNbXWuXiSeOCdLcPpBfGW8YuCqQHcRPFDbr/BPVmd3EEPVpuFzLyuT/cUhPr4OQ==", + "license": "MIT", "optional": true, "engines": { "node": ">=12.20" @@ -20986,6 +20090,7 @@ "version": "10.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "license": "MIT", "optional": true, "dependencies": { "graceful-fs": "^4.2.0", @@ -21000,16 +20105,18 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "license": "MIT", "optional": true, "engines": { "node": ">=8" } }, "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -21018,18 +20125,21 @@ "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/nise": { "version": "5.1.9", "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.9.tgz", "integrity": "sha512-qOnoujW4SV6e40dYxJOb3uvuoPHtmLzIk4TFo+j0jPJoC+5Z9xja5qH5JZobEPsa8+YYphMrOSwnrshEhG2qww==", + "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.0", "@sinonjs/fake-timers": "^11.2.2", @@ -21039,28 +20149,26 @@ } }, "node_modules/nise/node_modules/@sinonjs/fake-timers": { - "version": "11.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", - "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", + "version": "11.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.3.1.tgz", + "integrity": "sha512-EVJO7nW5M/F5Tur0Rf2z/QoMo+1Ia963RiMtapiQrEWvY0iBUvADo8Beegwjpnle5BHkyHuoxSTW3jF43H1XRA==", + "license": "BSD-3-Clause", "dependencies": { - "@sinonjs/commons": "^3.0.0" + "@sinonjs/commons": "^3.0.1" } }, - "node_modules/nise/node_modules/path-to-regexp": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", - "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==" - }, "node_modules/node-addon-api": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", - "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==", + "license": "MIT" }, "node_modules/node-emoji": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", "dev": true, + "license": "MIT", "dependencies": { "lodash": "^4.17.21" } @@ -21069,6 +20177,7 @@ "version": "2.6.7", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "license": "MIT", "dependencies": { "whatwg-url": "^5.0.0" }, @@ -21089,6 +20198,7 @@ "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.3.1.tgz", "integrity": "sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ==", "dev": true, + "license": "MIT", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -21109,85 +20219,32 @@ } }, "node_modules/node-gyp-build": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", - "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", + "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", + "license": "MIT", "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", "node-gyp-build-test": "build-test.js" } }, - "node_modules/node-gyp/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/node-gyp/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/node-gyp/node_modules/isexe": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true, + "license": "ISC", "engines": { "node": ">=16" } }, - "node_modules/node-gyp/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/node-gyp/node_modules/which": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^3.1.1" }, @@ -21202,25 +20259,29 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/node-machine-id": { "version": "1.1.12", "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz", "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/node-port-check": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/node-port-check/-/node-port-check-2.0.1.tgz", "integrity": "sha512-PV1tj5OPbWwxvhPcChXxwCIKl/IfVEdPP4u/gQz2lao/VGoeIUXb/4U72KSHLZpTVBmgTnMm0me7yR0wUsIuPg==", + "license": "MIT", "optional": true }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" }, "node_modules/nofilter": { "version": "3.1.0", @@ -21237,6 +20298,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", "dev": true, + "license": "ISC", "dependencies": { "abbrev": "^2.0.0" }, @@ -21252,6 +20314,7 @@ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^7.0.0", "semver": "^7.3.5", @@ -21261,22 +20324,12 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -21285,6 +20338,7 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "license": "MIT", "optional": true, "engines": { "node": ">=10" @@ -21298,6 +20352,7 @@ "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz", "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==", "dev": true, + "license": "ISC", "dependencies": { "npm-normalize-package-bin": "^3.0.0" }, @@ -21310,6 +20365,7 @@ "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "semver": "^7.1.1" }, @@ -21317,23 +20373,12 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-install-checks/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/npm-normalize-package-bin": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -21343,6 +20388,7 @@ "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz", "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==", "dev": true, + "license": "ISC", "dependencies": { "hosted-git-info": "^7.0.0", "proc-log": "^4.0.0", @@ -21353,23 +20399,12 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-package-arg/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/npm-packlist": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", "dev": true, + "license": "ISC", "dependencies": { "ignore-walk": "^6.0.4" }, @@ -21382,6 +20417,7 @@ "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz", "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==", "dev": true, + "license": "ISC", "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", @@ -21392,23 +20428,12 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-pick-manifest/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/npm-registry-fetch": { "version": "17.1.0", "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz", "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/redact": "^2.0.0", "jsonparse": "^1.3.1", @@ -21428,6 +20453,7 @@ "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "chalk": "^2.4.1", @@ -21448,11 +20474,57 @@ "node": ">= 4" } }, + "node_modules/npm-run-all/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/npm-run-all/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "license": "MIT" + }, "node_modules/npm-run-all/node_modules/cross-spawn": { "version": "6.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", "dev": true, + "license": "MIT", "dependencies": { "nice-try": "^1.0.4", "path-key": "^2.0.1", @@ -21464,11 +20536,32 @@ "node": ">=4.8" } }, + "node_modules/npm-run-all/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/npm-run-all/node_modules/path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -21478,6 +20571,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } @@ -21487,6 +20581,7 @@ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, + "license": "MIT", "dependencies": { "shebang-regex": "^1.0.0" }, @@ -21499,15 +20594,30 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, + "node_modules/npm-run-all/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/npm-run-all/node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -21520,6 +20630,7 @@ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.0.0" }, @@ -21532,6 +20643,7 @@ "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", "integrity": "sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==", "dev": true, + "license": "MIT", "dependencies": { "bn.js": "4.11.6", "strip-hex-prefix": "1.0.0" @@ -21545,14 +20657,16 @@ "version": "4.11.6", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/nx": { - "version": "20.7.2", - "resolved": "https://registry.npmjs.org/nx/-/nx-20.7.2.tgz", - "integrity": "sha512-T9pCTw6pA9PoowpLsm9L+GeQw0iHitrIX96jrpMXKbSjPmryokP7EJ+LNkdEV6xX+MrATERWJlPd+NYwnYxbIA==", + "version": "20.8.2", + "resolved": "https://registry.npmjs.org/nx/-/nx-20.8.2.tgz", + "integrity": "sha512-mDKpbH3vEpUFDx0rrLh+tTqLq1PYU8KiD/R7OVZGd1FxQxghx2HOl32MiqNsfPcw6AvKlXhslbwIESV+N55FLQ==", "dev": true, "hasInstallScript": true, + "license": "MIT", "dependencies": { "@napi-rs/wasm-runtime": "0.2.4", "@yarnpkg/lockfile": "^1.1.0", @@ -21594,16 +20708,16 @@ "nx-cloud": "bin/nx-cloud.js" }, "optionalDependencies": { - "@nx/nx-darwin-arm64": "20.7.2", - "@nx/nx-darwin-x64": "20.7.2", - "@nx/nx-freebsd-x64": "20.7.2", - "@nx/nx-linux-arm-gnueabihf": "20.7.2", - "@nx/nx-linux-arm64-gnu": "20.7.2", - "@nx/nx-linux-arm64-musl": "20.7.2", - "@nx/nx-linux-x64-gnu": "20.7.2", - "@nx/nx-linux-x64-musl": "20.7.2", - "@nx/nx-win32-arm64-msvc": "20.7.2", - "@nx/nx-win32-x64-msvc": "20.7.2" + "@nx/nx-darwin-arm64": "20.8.2", + "@nx/nx-darwin-x64": "20.8.2", + "@nx/nx-freebsd-x64": "20.8.2", + "@nx/nx-linux-arm-gnueabihf": "20.8.2", + "@nx/nx-linux-arm64-gnu": "20.8.2", + "@nx/nx-linux-arm64-musl": "20.8.2", + "@nx/nx-linux-x64-gnu": "20.8.2", + "@nx/nx-linux-x64-musl": "20.8.2", + "@nx/nx-win32-arm64-msvc": "20.8.2", + "@nx/nx-win32-x64-msvc": "20.8.2" }, "peerDependencies": { "@swc-node/register": "^1.8.0", @@ -21618,104 +20732,22 @@ } } }, - "node_modules/nx/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/nx/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } }, - "node_modules/nx/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/nx/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/nx/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/nx/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/nx/node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/nx/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/nx/node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -21731,6 +20763,7 @@ "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz", "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", "dev": true, + "license": "MIT", "dependencies": { "bl": "^4.0.3", "chalk": "^4.1.0", @@ -21748,72 +20781,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/nx/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/nx/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/nx/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nx/node_modules/tsconfig-paths": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", - "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==", - "dev": true, - "dependencies": { - "json5": "^2.2.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/nx/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, - "node_modules/nx/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, "node_modules/o3": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/o3/-/o3-1.0.3.tgz", "integrity": "sha512-f+4n+vC6s4ysy7YO7O2gslWZBUu8Qj2i2OUJOvjRxQva7jVjYjB29jrr9NCjmxZQR0gzrOcv1RnqoYOeMs5VRQ==", + "license": "MIT", "optional": true, "dependencies": { "capability": "^0.2.5" @@ -21824,15 +20796,20 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -21841,19 +20818,23 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "license": "MIT", "engines": { "node": ">= 0.4" } }, "node_modules/object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", "object-keys": "^1.1.1" }, "engines": { @@ -21864,14 +20845,18 @@ } }, "node_modules/obliterator": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz", - "integrity": "sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==" + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.5.tgz", + "integrity": "sha512-42CPE9AhahZRsMNslczq0ctAEtqk8Eka26QofnqC346BZdHDySk3LWka23LI7ULIw11NmltpiLagIq8gBozxTw==", + "dev": true, + "license": "MIT" }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "devOptional": true, + "license": "ISC", "dependencies": { "wrappy": "1" } @@ -21880,6 +20865,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "license": "MIT", "dependencies": { "fn.name": "1.x.x" } @@ -21889,6 +20875,7 @@ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, + "license": "MIT", "dependencies": { "mimic-fn": "^2.1.0" }, @@ -21904,6 +20891,7 @@ "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", "dev": true, + "license": "MIT", "dependencies": { "define-lazy-prop": "^2.0.0", "is-docker": "^2.1.1", @@ -21916,135 +20904,81 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/ora/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/ora/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/ora/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/ora/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/ora/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", "dev": true, + "license": "MIT", "dependencies": { - "has-flag": "^4.0.0" + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ordinal": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ordinal/-/ordinal-1.0.3.tgz", - "integrity": "sha512-cMddMgb2QElm8G7vdaa02jhUNbTSrhsgAGUz1OokD83uJTwSUn+nKoNoKVVaRa08yF6sgfO7Maou1+bgLd9rdQ==", - "dev": true, - "license": "MIT" - }, "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/p-cancelable": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "license": "MIT", "optional": true, "engines": { "node": ">=8" @@ -22055,6 +20989,7 @@ "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -22063,6 +20998,8 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" }, @@ -22077,6 +21014,8 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^3.0.2" }, @@ -22091,6 +21030,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "license": "MIT", "dependencies": { "aggregate-error": "^3.0.0" }, @@ -22106,6 +21047,7 @@ "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-2.1.0.tgz", "integrity": "sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -22115,6 +21057,7 @@ "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz", "integrity": "sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -22127,6 +21070,7 @@ "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==", "dev": true, + "license": "MIT", "dependencies": { "eventemitter3": "^4.0.4", "p-timeout": "^3.2.0" @@ -22143,6 +21087,7 @@ "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz", "integrity": "sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -22152,6 +21097,7 @@ "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", "dev": true, + "license": "MIT", "dependencies": { "p-finally": "^1.0.0" }, @@ -22164,6 +21110,7 @@ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -22173,6 +21120,7 @@ "resolved": "https://registry.npmjs.org/p-waterfall/-/p-waterfall-2.1.1.tgz", "integrity": "sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw==", "dev": true, + "license": "MIT", "dependencies": { "p-reduce": "^2.0.0" }, @@ -22187,13 +21135,15 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", - "dev": true + "dev": true, + "license": "BlueOak-1.0.0" }, "node_modules/pacote": { "version": "18.0.6", "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz", "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", @@ -22223,13 +21173,15 @@ "node_modules/pako": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", - "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==" + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==", + "license": "(MIT AND Zlib)" }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, + "license": "MIT", "dependencies": { "callsites": "^3.0.0" }, @@ -22248,6 +21200,7 @@ "resolved": "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz", "integrity": "sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==", "dev": true, + "license": "ISC", "dependencies": { "json-parse-even-better-errors": "^3.0.0", "just-diff": "^6.0.0", @@ -22262,6 +21215,7 @@ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -22279,19 +21233,22 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/parse-json/node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/parse-path": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.1.tgz", - "integrity": "sha512-6ReLMptznuuOEzLoGEa+I1oWRSj2Zna5jLWC+l6zlfAI4dbbSaIES29ThzuPkbhNahT65dWzfoZEO6cfJw2Ksg==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.1.0.tgz", + "integrity": "sha512-EuCycjZtfPcjWk7KTksnJ5xPMvWGA/6i4zrLYhRG0hGvC3GPU/jGUj3Cy+ZR0v30duV3e23R95T1lE2+lsndSw==", "dev": true, + "license": "MIT", "dependencies": { "protocols": "^2.0.0" } @@ -22301,6 +21258,7 @@ "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz", "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==", "dev": true, + "license": "MIT", "dependencies": { "parse-path": "^7.0.0" } @@ -22309,6 +21267,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -22318,6 +21278,7 @@ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "devOptional": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -22327,6 +21288,7 @@ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -22334,13 +21296,16 @@ "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" }, "node_modules/path-scurry": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" @@ -22352,20 +21317,18 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } + "node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -22375,34 +21338,72 @@ "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", "dev": true, + "license": "MIT", "engines": { "node": "*" } }, "node_modules/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.3.tgz", + "integrity": "sha512-wfRLBZ0feWRhCIkoMB6ete7czJcnNnqRpcoWQBLqatqXXmelSRqfdDK4F3u9T2s2cXas/hQJcryI/4lAL+XTlA==", + "license": "MIT", "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "create-hash": "~1.1.3", + "create-hmac": "^1.1.7", + "ripemd160": "=2.0.1", + "safe-buffer": "^5.2.1", + "sha.js": "^2.4.11", + "to-buffer": "^1.2.0" }, "engines": { "node": ">=0.12" } }, + "node_modules/pbkdf2/node_modules/create-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", + "integrity": "sha512-snRpch/kwQhcdlnZKYanNF1m0RDlrCdSKQaH87w1FCFPVPNCQ/Il9QJKAX2jVBZddRdaHBMC+zXa9Gw9tmkNUA==", + "license": "MIT", + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "sha.js": "^2.4.0" + } + }, + "node_modules/pbkdf2/node_modules/hash-base": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", + "integrity": "sha512-0TROgQ1/SxE6KmxWSvXHvRj90/Xo1JvZShofnYF+f6ZsGtR4eES7WfrQzPalmyagfKZCXpVnitiRebZulWsbiw==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.1" + } + }, + "node_modules/pbkdf2/node_modules/ripemd160": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", + "integrity": "sha512-J7f4wutN8mdbV08MJnXibYpCOPHR+yzy+iQ/AsjMv2j8cLavQ8VGagDFUwwTAdF8FmRKVeNpbTTEwNHCW1g94w==", + "license": "MIT", + "dependencies": { + "hash-base": "^2.0.0", + "inherits": "^2.0.1" + } + }, "node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8.6" }, @@ -22415,6 +21416,7 @@ "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", "dev": true, + "license": "MIT", "bin": { "pidtree": "bin/pidtree.js" }, @@ -22427,6 +21429,7 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -22435,10 +21438,11 @@ } }, "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 6" } @@ -22448,6 +21452,7 @@ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^4.0.0" }, @@ -22460,6 +21465,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -22473,6 +21479,7 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^4.1.0" }, @@ -22485,6 +21492,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -22500,6 +21508,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^2.2.0" }, @@ -22512,6 +21521,7 @@ "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -22520,15 +21530,16 @@ "version": "2.1.11", "resolved": "https://registry.npmjs.org/pony-cause/-/pony-cause-2.1.11.tgz", "integrity": "sha512-M7LhCsdNbNgiLYiP4WjsfLUuFmCfnjdF6jKe2R9NKl4WFN+HZPGHJZ9lnLP7f9ZnKe3U9nuWD0szirmj+migUg==", + "license": "0BSD", "engines": { "node": ">=12.0.0" } }, "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", - "dev": true, + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -22538,6 +21549,7 @@ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", "dev": true, + "license": "MIT", "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -22551,86 +21563,57 @@ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8.0" } }, "node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.6.2.tgz", + "integrity": "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==", "dev": true, + "license": "MIT", "bin": { - "prettier": "bin-prettier.js" + "prettier": "bin/prettier.cjs" }, "engines": { - "node": ">=10.13.0" + "node": ">=14" }, "funding": { "url": "https://github.com/prettier/prettier?sponsor=1" } }, "node_modules/prettier-plugin-solidity": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/prettier-plugin-solidity/-/prettier-plugin-solidity-1.3.1.tgz", - "integrity": "sha512-MN4OP5I2gHAzHZG1wcuJl0FsLS3c4Cc5494bbg+6oQWBPuEamjwDvmGfFMZ6NFzsh3Efd9UUxeT7ImgjNH4ozA==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/prettier-plugin-solidity/-/prettier-plugin-solidity-1.4.3.tgz", + "integrity": "sha512-Mrr/iiR9f9IaeGRMZY2ApumXcn/C5Gs3S7B7hWB3gigBFML06C0yEyW86oLp0eqiA0qg+46FaChgLPJCj/pIlg==", "dev": true, + "license": "MIT", "dependencies": { - "@solidity-parser/parser": "^0.17.0", - "semver": "^7.5.4", - "solidity-comments-extractor": "^0.0.8" + "@solidity-parser/parser": "^0.20.1", + "semver": "^7.7.1" }, "engines": { - "node": ">=16" + "node": ">=18" }, "peerDependencies": { "prettier": ">=2.3.0" } }, "node_modules/prettier-plugin-solidity/node_modules/@solidity-parser/parser": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.17.0.tgz", - "integrity": "sha512-Nko8R0/kUo391jsEHHxrGM07QFdnPGvlmox4rmH0kNiNAashItAilhy4Mv4pK5gQmW5f4sXAF58fwJbmlkGcVw==", - "dev": true - }, - "node_modules/prettier-plugin-solidity/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/prettier-plugin-solidity/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "version": "0.20.1", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.20.1.tgz", + "integrity": "sha512-58I2sRpzaQUN+jJmWbHfbWf9AKfzqCI8JAdFB0vbyY+u8tBRcuTt9LxzasvR0LGQpcRv97eyV7l61FQ3Ib7zVw==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/prettier-plugin-solidity/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "license": "MIT" }, "node_modules/pretty-format": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, + "license": "MIT", "dependencies": { "@jest/schemas": "^29.6.3", "ansi-styles": "^5.0.0", @@ -22645,6 +21628,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -22657,6 +21641,7 @@ "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -22666,6 +21651,7 @@ "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -22674,13 +21660,15 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/proggy": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/proggy/-/proggy-2.0.0.tgz", "integrity": "sha512-69agxLtnI8xBs9gUGqEnK26UfiexpHy+KUpBQWabiytQjnn5wFY8rklAi7GRfABIuPNnQ/ik48+LGLkYYJcy4A==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -22689,6 +21677,7 @@ "version": "13.1.0", "resolved": "https://registry.npmjs.org/prom-client/-/prom-client-13.1.0.tgz", "integrity": "sha512-jT9VccZCWrJWXdyEtQddCDszYsiuWj5T0ekrPszi/WEegj3IZy6Mm09iOOVM86A4IKMWq8hZkT2dD9MaSe+sng==", + "license": "Apache-2.0", "dependencies": { "tdigest": "^0.1.1" }, @@ -22701,6 +21690,7 @@ "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz", "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==", "dev": true, + "license": "MIT", "dependencies": { "asap": "~2.0.6" } @@ -22710,6 +21700,7 @@ "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz", "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==", "dev": true, + "license": "ISC", "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -22719,6 +21710,7 @@ "resolved": "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-3.0.2.tgz", "integrity": "sha512-mRPQO2T1QQVw11E7+UdCJu7S61eJVWknzml9sC1heAdj1jxl0fWMBypIt9ZOcLFf8FkG995ZD7RnVk7HH72fZw==", "dev": true, + "license": "ISC", "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -22727,13 +21719,15 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/promise-retry": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", "dev": true, + "license": "MIT", "dependencies": { "err-code": "^2.0.2", "retry": "^0.12.0" @@ -22746,6 +21740,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/promisify-child-process/-/promisify-child-process-4.1.2.tgz", "integrity": "sha512-APnkIgmaHNJpkAn7k+CrJSi9WMuff5ctYFbD0CO2XIPkM8yO7d/ShouU2clywbpHV/DUsyc4bpJCsNgddNtx4g==", + "license": "MIT", "optional": true, "engines": { "node": ">=8" @@ -22756,6 +21751,7 @@ "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", "dev": true, + "license": "MIT", "dependencies": { "kleur": "^3.0.3", "sisteransi": "^1.0.5" @@ -22769,6 +21765,7 @@ "resolved": "https://registry.npmjs.org/promzard/-/promzard-1.0.2.tgz", "integrity": "sha512-2FPputGL+mP3jJ3UZg/Dl9YOkovB7DX0oOr+ck5QbZ5MtORtds8k/BZdn+02peDLI8/YWbmzx34k5fA+fHvCVQ==", "dev": true, + "license": "ISC", "dependencies": { "read": "^3.0.1" }, @@ -22780,6 +21777,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz", "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==", + "license": "MIT", "optional": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -22792,6 +21790,7 @@ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.4.tgz", "integrity": "sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==", "hasInstallScript": true, + "license": "BSD-3-Clause", "dependencies": { "@protobufjs/aspromise": "^1.1.2", "@protobufjs/base64": "^1.1.2", @@ -22816,17 +21815,20 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.2.tgz", "integrity": "sha512-hHVTzba3wboROl0/aWRRG9dMytgH6ow//STBZh43l/wQgmMhYhOFi0EHWAPtoCz9IAUymsyP0TSBHkhgMEGNnQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "license": "MIT" }, "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", + "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "license": "MIT", "optional": true, "dependencies": { "end-of-stream": "^1.1.0", @@ -22837,6 +21839,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "license": "MIT", "engines": { "node": ">=6" } @@ -22855,24 +21858,27 @@ "type": "opencollective", "url": "https://opencollective.com/fast-check" } - ] + ], + "license": "MIT" }, "node_modules/pure-uuid": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/pure-uuid/-/pure-uuid-1.8.1.tgz", "integrity": "sha512-PIwHXU7NZb/wTBwUfzCSjI85tfwx6DQOm74sRLtNLH8KHsFZEvAQbBQdz7E5ij8SNSv9WGdQPWiiM6NpNIeNfA==", + "license": "MIT", "optional": true, "engines": { "node": ">=8.0.0" } }, "node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", + "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.6" + "side-channel": "^1.1.0" }, "engines": { "node": ">=0.6" @@ -22899,13 +21905,15 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -22914,6 +21922,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "license": "MIT", "dependencies": { "safe-buffer": "^5.1.0" } @@ -22922,6 +21931,8 @@ "version": "2.5.2", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "license": "MIT", "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", @@ -22936,6 +21947,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "license": "MIT", "dependencies": { "depd": "2.0.0", "inherits": "2.0.4", @@ -22951,21 +21964,25 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } }, "node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", - "dev": true + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" }, "node_modules/read": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/read/-/read-3.0.1.tgz", "integrity": "sha512-SLBrDU/Srs/9EoWhU5GdbAoxG1GzpQHo/6qiGItaoLJ1thmYpcNIM1qISEUvyHBzfGlWIyd6p2DNi1oV1VmAuw==", "dev": true, + "license": "ISC", "dependencies": { "mute-stream": "^1.0.0" }, @@ -22978,6 +21995,7 @@ "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz", "integrity": "sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -22987,6 +22005,7 @@ "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", "dev": true, + "license": "ISC", "dependencies": { "json-parse-even-better-errors": "^3.0.0", "npm-normalize-package-bin": "^3.0.0" @@ -23000,6 +22019,7 @@ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", "dev": true, + "license": "MIT", "dependencies": { "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", @@ -23014,6 +22034,7 @@ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", "integrity": "sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==", "dev": true, + "license": "MIT", "dependencies": { "find-up": "^2.0.0", "read-pkg": "^3.0.0" @@ -23027,6 +22048,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, + "license": "MIT", "dependencies": { "locate-path": "^2.0.0" }, @@ -23039,6 +22061,7 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", "dev": true, + "license": "MIT", "dependencies": { "p-locate": "^2.0.0", "path-exists": "^3.0.0" @@ -23052,6 +22075,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, + "license": "MIT", "dependencies": { "p-try": "^1.0.0" }, @@ -23064,6 +22088,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, + "license": "MIT", "dependencies": { "p-limit": "^1.1.0" }, @@ -23076,6 +22101,7 @@ "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -23085,6 +22111,7 @@ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -23093,13 +22120,15 @@ "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/read-pkg/node_modules/load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^4.0.0", @@ -23115,6 +22144,7 @@ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -23127,6 +22157,7 @@ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, + "license": "MIT", "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -23140,6 +22171,7 @@ "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, + "license": "MIT", "dependencies": { "pify": "^3.0.0" }, @@ -23152,6 +22184,7 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -23161,6 +22194,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } @@ -23170,6 +22204,7 @@ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -23179,6 +22214,7 @@ "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -23187,6 +22223,7 @@ "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -23197,20 +22234,24 @@ } }, "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "dev": true, + "license": "MIT", "engines": { - "node": ">=8.10.0" + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, "node_modules/readonly-date": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/readonly-date/-/readonly-date-1.0.0.tgz", - "integrity": "sha512-tMKIV7hlk0h4mO3JTmmVuIlJVXjKk3Sep9Bf5OH0O+758ruuVkUy2J9SttDLm91IEX/WHlXPSpxMGjPj4beMIQ==" + "integrity": "sha512-tMKIV7hlk0h4mO3JTmmVuIlJVXjKk3Sep9Bf5OH0O+758ruuVkUy2J9SttDLm91IEX/WHlXPSpxMGjPj4beMIQ==", + "license": "Apache-2.0" }, "node_modules/rechoir": { "version": "0.6.2", @@ -23227,13 +22268,15 @@ "node_modules/reconnecting-websocket": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/reconnecting-websocket/-/reconnecting-websocket-4.4.0.tgz", - "integrity": "sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==" + "integrity": "sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==", + "license": "MIT" }, "node_modules/recursive-readdir": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", "dev": true, + "license": "MIT", "dependencies": { "minimatch": "^3.0.5" }, @@ -23246,6 +22289,7 @@ "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", "dev": true, + "license": "MIT", "dependencies": { "indent-string": "^4.0.0", "strip-indent": "^3.0.0" @@ -23259,20 +22303,47 @@ "resolved": "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-2.0.0.tgz", "integrity": "sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/regexp.prototype.flags": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", - "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -23286,6 +22357,7 @@ "resolved": "https://registry.npmjs.org/req-cwd/-/req-cwd-2.0.0.tgz", "integrity": "sha512-ueoIoLo1OfB6b05COxAA9UpeoscNpYyM+BqYlA7H6LVF4hKGPXQQSSaD2YmvDVJMkk4UDpAHIeU1zG53IqjvlQ==", "dev": true, + "license": "MIT", "dependencies": { "req-from": "^2.0.0" }, @@ -23298,6 +22370,7 @@ "resolved": "https://registry.npmjs.org/req-from/-/req-from-2.0.0.tgz", "integrity": "sha512-LzTfEVDVQHBRfjOUMgNBA+V6DWsSnoeKzf42J7l0xa/B4jyPOuuF5MlNSmomLNGemWTnV2TIdjSSLnEn95fOQA==", "dev": true, + "license": "MIT", "dependencies": { "resolve-from": "^3.0.0" }, @@ -23310,6 +22383,7 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -23318,6 +22392,8 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -23326,23 +22402,28 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "dev": true, + "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -23351,6 +22432,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", + "license": "MIT", "optional": true }, "node_modules/resolve-cwd": { @@ -23358,6 +22440,7 @@ "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, + "license": "MIT", "dependencies": { "resolve-from": "^5.0.0" }, @@ -23370,6 +22453,7 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -23379,6 +22463,7 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -23388,6 +22473,7 @@ "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" } @@ -23396,6 +22482,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "license": "MIT", "optional": true, "dependencies": { "lowercase-keys": "^2.0.0" @@ -23409,6 +22496,7 @@ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dev": true, + "license": "MIT", "dependencies": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" @@ -23422,15 +22510,17 @@ "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", "devOptional": true, + "license": "MIT", "engines": { "node": ">= 4" } }, "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", "dev": true, + "license": "MIT", "engines": { "iojs": ">=1.0.0", "node": ">=0.10.0" @@ -23440,7 +22530,9 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "optional": true, + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "devOptional": true, + "license": "ISC", "dependencies": { "glob": "^7.1.3" }, @@ -23451,10 +22543,33 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "devOptional": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/ripemd160": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "license": "MIT", "dependencies": { "hash-base": "^3.0.0", "inherits": "^2.0.1" @@ -23478,6 +22593,7 @@ "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.12.0" } @@ -23501,34 +22617,32 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "queue-microtask": "^1.2.2" } }, "node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "tslib": "^2.1.0" } }, - "node_modules/rxjs/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, "node_modules/safe-array-concat": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", - "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", "isarray": "^2.0.5" }, "engines": { @@ -23538,20 +22652,67 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-push-apply/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" }, "node_modules/safe-regex-test": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", - "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.2", "es-errors": "^1.3.0", - "is-regex": "^1.1.4" + "is-regex": "^1.2.1" }, "engines": { "node": ">= 0.4" @@ -23561,9 +22722,10 @@ } }, "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", + "license": "MIT", "engines": { "node": ">=10" } @@ -23571,13 +22733,16 @@ "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "devOptional": true, + "license": "MIT" }, "node_modules/sc-istanbul": { "version": "0.4.6", "resolved": "https://registry.npmjs.org/sc-istanbul/-/sc-istanbul-0.4.6.tgz", "integrity": "sha512-qJFF/8tW/zJsbyfh/iT/ZM5QNHE3CXxtLJbZsL+CzdJLBsPD7SedJZoUA4d8iAcN2IoMp/Dx80shOOd2x96X/g==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "abbrev": "1.0.x", "async": "1.x", @@ -23602,13 +22767,15 @@ "version": "1.0.9", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", "integrity": "sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/sc-istanbul/node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, + "license": "MIT", "dependencies": { "sprintf-js": "~1.0.2" } @@ -23617,13 +22784,30 @@ "version": "1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/sc-istanbul/node_modules/esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/sc-istanbul/node_modules/glob": { "version": "5.0.15", "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "inflight": "^1.0.4", "inherits": "2", @@ -23640,6 +22824,7 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -23649,6 +22834,7 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, + "license": "MIT", "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -23662,6 +22848,7 @@ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, + "license": "BSD-2-Clause", "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -23675,6 +22862,7 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, + "license": "MIT", "dependencies": { "minimist": "^1.2.6" }, @@ -23687,6 +22875,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", "dev": true, + "license": "ISC", "dependencies": { "abbrev": "1" }, @@ -23698,19 +22887,22 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", "integrity": "sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/sc-istanbul/node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/sc-istanbul/node_modules/supports-color": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", "dev": true, + "license": "MIT", "dependencies": { "has-flag": "^1.0.0" }, @@ -23723,6 +22915,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -23733,18 +22926,19 @@ "node_modules/scrypt-js": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", - "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", + "license": "MIT" }, "node_modules/scryptsy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-2.1.0.tgz", - "integrity": "sha512-1CdSqHQowJBnMAFyPEBRfqag/YP9OF394FV+4YREIJX4ljD7OxvQRDayyoyyCk+senRjSkP6VnUNQmVQqB6g7w==" + "integrity": "sha512-1CdSqHQowJBnMAFyPEBRfqag/YP9OF394FV+4YREIJX4ljD7OxvQRDayyoyyCk+senRjSkP6VnUNQmVQqB6g7w==", + "license": "MIT" }, "node_modules/secp256k1": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.4.tgz", - "integrity": "sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==", - "dev": true, + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.1.tgz", + "integrity": "sha512-lDFs9AAIaWP9UCdtWrotXWWF9t8PWgQDcxqgAnpM9rMqxb3Oaq2J0thzPVSxBwdJgyQtkU/sYtFtbM1RSt/iYA==", "hasInstallScript": true, "license": "MIT", "dependencies": { @@ -23760,32 +22954,49 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==", - "dev": true, "license": "MIT" }, "node_modules/secure-json-parse": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz", - "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==" + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-3.0.2.tgz", + "integrity": "sha512-H6nS2o8bWfpFEV6U38sOSjS7bTbdgbCGU9wEM6W14P5H0QOsz94KCusifV44GpHDTu2nqZbuDNhTzu+mjDSw1w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" }, "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "license": "ISC", "bin": { "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/semver-compare": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/serialize-javascript": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "license": "BSD-3-Clause", "dependencies": { "randombytes": "^2.1.0" } @@ -23794,13 +23005,14 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -23818,6 +23030,7 @@ "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -23828,6 +23041,21 @@ "node": ">= 0.4" } }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", @@ -23838,18 +23066,28 @@ "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "devOptional": true, + "license": "ISC" }, "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.12.tgz", + "integrity": "sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==", + "license": "(MIT AND BSD-3-Clause)", "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "^2.0.4", + "safe-buffer": "^5.2.1", + "to-buffer": "^1.2.0" }, "bin": { "sha.js": "bin.js" + }, + "engines": { + "node": ">= 0.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/sha1": { @@ -23857,6 +23095,7 @@ "resolved": "https://registry.npmjs.org/sha1/-/sha1-1.1.1.tgz", "integrity": "sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "charenc": ">= 0.0.1", "crypt": ">= 0.0.1" @@ -23870,6 +23109,7 @@ "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", "dev": true, + "license": "MIT", "dependencies": { "kind-of": "^6.0.2" }, @@ -23882,6 +23122,7 @@ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, + "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -23894,15 +23135,20 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/shell-quote": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", - "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz", + "integrity": "sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==", "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -23912,6 +23158,7 @@ "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "glob": "^7.0.0", "interpret": "^1.0.0", @@ -23924,16 +23171,96 @@ "node": ">=4" } }, + "node_modules/shelljs/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -23946,13 +23273,15 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "devOptional": true + "devOptional": true, + "license": "ISC" }, "node_modules/sigstore": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz", "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==", "dev": true, + "license": "Apache-2.0", "dependencies": { "@sigstore/bundle": "^2.3.2", "@sigstore/core": "^1.0.0", @@ -23969,6 +23298,7 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "license": "MIT", "dependencies": { "is-arrayish": "^0.3.1" } @@ -23976,12 +23306,14 @@ "node_modules/simple-swizzle/node_modules/is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "license": "MIT" }, "node_modules/sinon": { "version": "17.0.1", "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.1.tgz", "integrity": "sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==", + "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.0", "@sinonjs/fake-timers": "^11.2.2", @@ -23996,43 +23328,27 @@ } }, "node_modules/sinon/node_modules/@sinonjs/fake-timers": { - "version": "11.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", - "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", - "dependencies": { - "@sinonjs/commons": "^3.0.0" - } - }, - "node_modules/sinon/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/sinon/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "version": "11.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.3.1.tgz", + "integrity": "sha512-EVJO7nW5M/F5Tur0Rf2z/QoMo+1Ia963RiMtapiQrEWvY0iBUvADo8Beegwjpnle5BHkyHuoxSTW3jF43H1XRA==", + "license": "BSD-3-Clause", "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" + "@sinonjs/commons": "^3.0.1" } }, "node_modules/sisteransi": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -24041,6 +23357,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", @@ -24053,51 +23370,23 @@ "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/slice-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/slice-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 6.0.0", "npm": ">= 3.0.0" } }, "node_modules/socks": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.4.tgz", - "integrity": "sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==", + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.5.tgz", + "integrity": "sha512-iF+tNDQla22geJdTyJB1wM/qrX9DMRwWrciEPwWLPRWAUEM8sQiyxgckLxWT1f7+9VabJS0jTGGr4QgBuvi6Ww==", "dev": true, + "license": "MIT", "dependencies": { "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" @@ -24112,6 +23401,7 @@ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "^7.1.2", "debug": "^4.3.4", @@ -24121,19 +23411,12 @@ "node": ">= 14" } }, - "node_modules/socks-proxy-agent/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", - "dev": true, - "engines": { - "node": ">= 14" - } - }, "node_modules/solc": { "version": "0.8.26", "resolved": "https://registry.npmjs.org/solc/-/solc-0.8.26.tgz", "integrity": "sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==", + "dev": true, + "license": "MIT", "dependencies": { "command-exists": "^1.2.8", "commander": "^8.1.0", @@ -24150,10 +23433,22 @@ "node": ">=10.0.0" } }, + "node_modules/solc/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, "node_modules/solc/node_modules/semver": { "version": "5.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } @@ -24162,6 +23457,8 @@ "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "license": "MIT", "dependencies": { "os-tmpdir": "~1.0.2" }, @@ -24174,6 +23471,7 @@ "resolved": "https://registry.npmjs.org/solhint/-/solhint-3.6.2.tgz", "integrity": "sha512-85EeLbmkcPwD+3JR7aEMKsVC9YrRSxd4qkXuMzrlf7+z2Eqdfm1wHWq1ffTuo5aDhoZxp2I9yF3QkxZOxOL7aQ==", "dev": true, + "license": "MIT", "dependencies": { "@solidity-parser/parser": "^0.16.0", "ajv": "^6.12.6", @@ -24205,73 +23503,27 @@ "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.16.2.tgz", "integrity": "sha512-PI9NfoA3P8XK2VBkK5oIfRgKDsicwDZfkVq9ZTBCQYGOP1N2owgY2dyLGyU5/J/hQs8KRk55kdmvTLjy3Mu3vg==", "dev": true, + "license": "MIT", "dependencies": { "antlr4ts": "^0.5.0-alpha.4" } }, - "node_modules/solhint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/solhint/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } }, - "node_modules/solhint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/solhint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/solhint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/solhint/node_modules/commander": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", "dev": true, + "license": "MIT", "engines": { "node": ">=14" } @@ -24281,6 +23533,7 @@ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", "dev": true, + "license": "MIT", "dependencies": { "import-fresh": "^3.3.0", "js-yaml": "^4.1.0", @@ -24306,7 +23559,9 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -24321,32 +23576,12 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/solhint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/solhint/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/solhint/node_modules/minimatch": { "version": "5.1.6", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -24354,53 +23589,32 @@ "node": ">=10" } }, - "node_modules/solhint/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/solhint/node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, + "license": "MIT", + "optional": true, "bin": { - "semver": "bin/semver.js" + "prettier": "bin-prettier.js" }, "engines": { - "node": ">=10" - } - }, - "node_modules/solhint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" + "node": ">=10.13.0" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/solhint/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/solidity-comments-extractor": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/solidity-comments-extractor/-/solidity-comments-extractor-0.0.8.tgz", - "integrity": "sha512-htM7Vn6LhHreR+EglVMd2s+sZhcXAirB1Zlyrv5zBuTxieCvjfnRpd7iZk75m/u6NOlEyQ94C6TWbBn2cY7w8g==", - "dev": true - }, "node_modules/solidity-coverage": { - "version": "0.8.14", - "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.8.14.tgz", - "integrity": "sha512-ItAAObe5GaEOp20kXC2BZRnph+9P7Rtoqg2mQc2SXGEHgSDF2wWd1Wxz3ntzQWXkbCtIIGdJT918HG00cObwbA==", + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.8.16.tgz", + "integrity": "sha512-qKqgm8TPpcnCK0HCDLJrjbOA2tQNEJY4dHX/LSSQ9iwYFS973MwjtgYn2Iv3vfCEQJTj5xtm4cuUMzlJsJSMbg==", "dev": true, + "license": "ISC", "dependencies": { "@ethersproject/abi": "^5.0.9", - "@solidity-parser/parser": "^0.19.0", + "@solidity-parser/parser": "^0.20.1", "chalk": "^2.4.2", "death": "^1.1.0", "difflib": "^0.2.4", @@ -24427,16 +23641,73 @@ } }, "node_modules/solidity-coverage/node_modules/@solidity-parser/parser": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.19.0.tgz", - "integrity": "sha512-RV16k/qIxW/wWc+mLzV3ARyKUaMUTBy9tOLMzFhtNSKYeTAanQ3a5MudJKf/8arIFnA2L27SNjarQKmFg0w/jA==", - "dev": true + "version": "0.20.1", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.20.1.tgz", + "integrity": "sha512-58I2sRpzaQUN+jJmWbHfbWf9AKfzqCI8JAdFB0vbyY+u8tBRcuTt9LxzasvR0LGQpcRv97eyV7l61FQ3Ib7zVw==", + "dev": true, + "license": "MIT" + }, + "node_modules/solidity-coverage/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/solidity-coverage/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/solidity-coverage/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/solidity-coverage/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "license": "MIT" + }, + "node_modules/solidity-coverage/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } }, "node_modules/solidity-coverage/node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", @@ -24446,11 +23717,34 @@ "node": ">=6 <7 || >=8" } }, + "node_modules/solidity-coverage/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/solidity-coverage/node_modules/globby": { "version": "10.0.2", "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", "dev": true, + "license": "MIT", "dependencies": { "@types/glob": "^7.1.1", "array-union": "^2.1.0", @@ -24465,49 +23759,47 @@ "node": ">=8" } }, + "node_modules/solidity-coverage/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/solidity-coverage/node_modules/jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, + "license": "MIT", "optionalDependencies": { "graceful-fs": "^4.1.6" } }, - "node_modules/solidity-coverage/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/solidity-coverage/node_modules/pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } }, - "node_modules/solidity-coverage/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "node_modules/solidity-coverage/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "has-flag": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=4" } }, "node_modules/solidity-coverage/node_modules/universalify": { @@ -24515,16 +23807,11 @@ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4.0.0" } }, - "node_modules/solidity-coverage/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/solmate": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/solmate/-/solmate-6.8.0.tgz", @@ -24537,6 +23824,7 @@ "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", "integrity": "sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==", "dev": true, + "license": "MIT", "dependencies": { "is-plain-obj": "^1.0.0" }, @@ -24548,6 +23836,8 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } @@ -24556,6 +23846,8 @@ "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -24566,6 +23858,7 @@ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -24575,29 +23868,33 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", - "dev": true + "dev": true, + "license": "CC-BY-3.0" }, "node_modules/spdx-expression-parse": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, + "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, "node_modules/spdx-license-ids": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", - "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", - "dev": true + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", + "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==", + "dev": true, + "license": "CC0-1.0" }, "node_modules/split": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", "dev": true, + "license": "MIT", "dependencies": { "through": "2" }, @@ -24610,6 +23907,7 @@ "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", "dev": true, + "license": "ISC", "dependencies": { "readable-stream": "^3.0.0" } @@ -24618,13 +23916,15 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, "node_modules/ssri": { "version": "10.0.6", "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^7.0.3" }, @@ -24636,6 +23936,7 @@ "version": "0.0.10", "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", + "license": "MIT", "engines": { "node": "*" } @@ -24645,6 +23946,7 @@ "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, + "license": "MIT", "dependencies": { "escape-string-regexp": "^2.0.0" }, @@ -24657,14 +23959,17 @@ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/stacktrace-parser": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", - "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.11.tgz", + "integrity": "sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==", + "dev": true, + "license": "MIT", "dependencies": { "type-fest": "^0.7.1" }, @@ -24676,6 +23981,8 @@ "version": "0.7.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", + "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } @@ -24684,54 +23991,54 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "license": "MIT", "optional": true, "engines": { "node": ">= 0.6" } }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/strict-event-emitter-types": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strict-event-emitter-types/-/strict-event-emitter-types-2.0.0.tgz", - "integrity": "sha512-Nk/brWYpD85WlOgzw5h173aci0Teyv8YdIAEtV+N88nDB0dLlazZyJMIsN6eo1/AR61l+p6CJTG1JIyFaoNEEA==" + "integrity": "sha512-Nk/brWYpD85WlOgzw5h173aci0Teyv8YdIAEtV+N88nDB0dLlazZyJMIsN6eo1/AR61l+p6CJTG1JIyFaoNEEA==", + "license": "ISC" }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", "dependencies": { "safe-buffer": "~5.2.0" } }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/string-format": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/string-format/-/string-format-2.0.0.tgz", "integrity": "sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA==", - "dev": true + "dev": true, + "license": "WTFPL OR MIT" }, "node_modules/string-length": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", "dev": true, + "license": "MIT", "dependencies": { "char-regex": "^1.0.2", "strip-ansi": "^6.0.0" @@ -24744,6 +24051,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -24759,6 +24067,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -24773,6 +24082,7 @@ "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -24787,15 +24097,19 @@ } }, "node_modules/string.prototype.trim": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", - "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -24805,15 +24119,20 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", - "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", "define-properties": "^1.2.1", "es-object-atoms": "^1.0.0" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -24823,6 +24142,7 @@ "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1", @@ -24839,6 +24159,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -24852,6 +24173,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -24864,6 +24186,7 @@ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -24873,6 +24196,7 @@ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -24882,6 +24206,7 @@ "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", "integrity": "sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==", "dev": true, + "license": "MIT", "dependencies": { "is-hex-prefixed": "1.0.0" }, @@ -24895,6 +24220,7 @@ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "dev": true, + "license": "MIT", "dependencies": { "min-indent": "^1.0.0" }, @@ -24906,6 +24232,8 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" }, @@ -24913,41 +24241,25 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strong-log-transformer": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz", - "integrity": "sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA==", - "dev": true, - "dependencies": { - "duplexer": "^0.1.1", - "minimist": "^1.2.0", - "through": "^2.3.4" - }, - "bin": { - "sl-log-transformer": "bin/sl-log-transformer.js" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/superstruct": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-1.0.4.tgz", "integrity": "sha512-7JpaAoX2NGyoFlI9NBh66BQXGONc+uE+MRS5i2iOBKuS4e+ccgMDjATgZldkah+33DakBxDHiss9kvUcGAO8UQ==", + "license": "MIT", "engines": { "node": ">=14.0.0" } }, "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/supports-preserve-symlinks-flag": { @@ -24955,6 +24267,7 @@ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -24966,6 +24279,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-2.0.3.tgz", "integrity": "sha512-sQV7phh2WCYAn81oAkakC5qjq2Ml0g8ozqz03wOGnx9dDlG1de6yrF+0RAzSJD8fPUow3PTSMf2SAbOGxb93BA==", + "license": "MIT", "engines": { "node": ">=0.10" } @@ -24975,6 +24289,7 @@ "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz", "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==", "dev": true, + "license": "MIT", "dependencies": { "http-response-object": "^3.0.1", "sync-rpc": "^1.2.1", @@ -24989,6 +24304,7 @@ "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz", "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==", "dev": true, + "license": "MIT", "dependencies": { "get-port": "^3.1.0" } @@ -24998,14 +24314,16 @@ "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/table": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", - "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz", + "integrity": "sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==", + "license": "BSD-3-Clause", "dependencies": { "ajv": "^8.0.1", "lodash.truncate": "^4.4.2", @@ -25018,47 +24336,28 @@ } }, "node_modules/table-layout": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-1.0.2.tgz", - "integrity": "sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==", - "dev": true, + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-4.1.1.tgz", + "integrity": "sha512-iK5/YhZxq5GO5z8wb0bY1317uDF3Zjpha0QFFLA8/trAoiLbQD0HUbMesEaxyzUgDxi2QlcbM8IvqOlEjgoXBA==", + "license": "MIT", "dependencies": { - "array-back": "^4.0.1", - "deep-extend": "~0.6.0", - "typical": "^5.2.0", - "wordwrapjs": "^4.0.0" + "array-back": "^6.2.2", + "wordwrapjs": "^5.1.0" }, "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/table-layout/node_modules/array-back": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", - "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/table-layout/node_modules/typical": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", - "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=12.17" } }, "node_modules/table/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "license": "MIT", "dependencies": { - "fast-deep-equal": "^3.1.1", + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "require-from-string": "^2.0.2" }, "funding": { "type": "github", @@ -25068,13 +24367,15 @@ "node_modules/table/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" }, "node_modules/tar": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "devOptional": true, + "license": "ISC", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -25092,6 +24393,7 @@ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", "dev": true, + "license": "MIT", "dependencies": { "bl": "^4.0.3", "end-of-stream": "^1.4.1", @@ -25108,6 +24410,7 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "devOptional": true, + "license": "ISC", "dependencies": { "minipass": "^3.0.0" }, @@ -25120,6 +24423,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "devOptional": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -25132,20 +24436,16 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", "devOptional": true, + "license": "ISC", "engines": { "node": ">=8" } }, - "node_modules/tar/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "devOptional": true - }, "node_modules/tdigest": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/tdigest/-/tdigest-0.1.2.tgz", "integrity": "sha512-+G0LLgjjo9BZX2MfdvPfH+MKLCrxlXSYec5DaPYP1fe6Iyhf0/fSmJ0bFiZ1F8BT6cGXl2LpltQptzjXKWEkKA==", + "license": "MIT", "dependencies": { "bintrees": "1.0.2" } @@ -25155,6 +24455,7 @@ "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=4" } @@ -25164,6 +24465,7 @@ "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, + "license": "ISC", "dependencies": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", @@ -25173,6 +24475,28 @@ "node": ">=8" } }, + "node_modules/test-exclude/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/text-encoding-utf-8": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz", @@ -25184,6 +24508,7 @@ "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10" } @@ -25191,19 +24516,22 @@ "node_modules/text-hex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", - "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==", + "license": "MIT" }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/then-request": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz", "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==", "dev": true, + "license": "MIT", "dependencies": { "@types/concat-stream": "^1.6.0", "@types/form-data": "0.0.33", @@ -25225,7 +24553,8 @@ "version": "8.10.66", "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/then-request/node_modules/concat-stream": { "version": "1.6.2", @@ -25235,6 +24564,7 @@ "engines": [ "node >= 0.8" ], + "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -25243,30 +24573,28 @@ } }, "node_modules/then-request/node_modules/form-data": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", - "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.3.tgz", + "integrity": "sha512-XHIrMD0NpDrNM/Ckf7XJiBbLl57KEhT3+i3yY+eWm+cqYZJQTZrKo8Y8AWKnuV5GT4scfuUGt9LzNoIx3dU1nQ==", "dev": true, + "license": "MIT", "dependencies": { "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "mime-types": "^2.1.35", + "safe-buffer": "^5.2.1" }, "engines": { "node": ">= 0.12" } }, - "node_modules/then-request/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, "node_modules/then-request/node_modules/readable-stream": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, + "license": "MIT", "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -25277,42 +24605,54 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/then-request/node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT" + }, "node_modules/then-request/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, + "license": "MIT", "dependencies": { "safe-buffer": "~5.1.0" } }, + "node_modules/then-request/node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT" + }, "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "dev": true, + "license": "MIT", "dependencies": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" } }, - "node_modules/through2/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, "node_modules/through2/node_modules/readable-stream": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, + "license": "MIT", "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -25323,11 +24663,19 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/through2/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT" + }, "node_modules/through2/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, + "license": "MIT", "dependencies": { "safe-buffer": "~5.1.0" } @@ -25336,6 +24684,8 @@ "version": "0.2.12", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", + "dev": true, + "license": "MIT", "dependencies": { "fdir": "^6.4.3", "picomatch": "^4.0.2" @@ -25348,9 +24698,11 @@ } }, "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.4.3", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", - "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", + "version": "6.4.6", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz", + "integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==", + "dev": true, + "license": "MIT", "peerDependencies": { "picomatch": "^3 || ^4" }, @@ -25364,6 +24716,8 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -25375,6 +24729,7 @@ "version": "0.2.3", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "license": "MIT", "engines": { "node": ">=14.14" } @@ -25383,12 +24738,35 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/to-buffer": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.2.1.tgz", + "integrity": "sha512-tB82LpAIWjhLYbqjx3X4zEeHN6M8CiuOEy2JY8SEQVdYRe3CCHOFaqrBW1doLDrfpWhplcW7BL+bO3/6S3pcDQ==", + "license": "MIT", + "dependencies": { + "isarray": "^2.0.5", + "safe-buffer": "^5.2.1", + "typed-array-buffer": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/to-buffer/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "license": "MIT" }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", "dependencies": { "is-number": "^7.0.0" }, @@ -25400,6 +24778,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "devOptional": true, + "license": "MIT", "engines": { "node": ">=0.6" } @@ -25407,13 +24787,15 @@ "node_modules/tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT" }, "node_modules/treeverse": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/treeverse/-/treeverse-3.0.0.tgz", "integrity": "sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -25423,6 +24805,7 @@ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -25430,13 +24813,15 @@ "node_modules/triple-beam": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz", - "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==" + "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==", + "license": "MIT" }, "node_modules/ts-command-line-args": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/ts-command-line-args/-/ts-command-line-args-2.5.1.tgz", "integrity": "sha512-H69ZwTw3rFHb5WYpQya40YAX2/w7Ut75uUECbgBIsLmM+BNuYnxsltfyyLMxy6sEeKxgijLTnQtLd0nKd6+IYw==", "dev": true, + "license": "ISC", "dependencies": { "chalk": "^4.1.0", "command-line-args": "^5.1.1", @@ -25448,71 +24833,224 @@ } }, "node_modules/ts-command-line-args/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, + "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ts-command-line-args/node_modules/array-back": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz", + "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/ts-command-line-args/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/ts-command-line-args/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "license": "MIT" + }, + "node_modules/ts-command-line-args/node_modules/command-line-args": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz", + "integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-back": "^3.1.0", + "find-replace": "^3.0.0", + "lodash.camelcase": "^4.3.0", + "typical": "^4.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/ts-command-line-args/node_modules/command-line-usage": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.3.tgz", + "integrity": "sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-back": "^4.0.2", + "chalk": "^2.4.2", + "table-layout": "^1.0.2", + "typical": "^5.2.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ts-command-line-args/node_modules/command-line-usage/node_modules/array-back": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", + "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-command-line-args/node_modules/command-line-usage/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ts-command-line-args/node_modules/command-line-usage/node_modules/typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" + } + }, + "node_modules/ts-command-line-args/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ts-command-line-args/node_modules/find-replace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz", + "integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-back": "^3.0.1" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "engines": { + "node": ">=4.0.0" } }, - "node_modules/ts-command-line-args/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/ts-command-line-args/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/ts-command-line-args/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ts-command-line-args/node_modules/table-layout": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-1.0.2.tgz", + "integrity": "sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "array-back": "^4.0.1", + "deep-extend": "~0.6.0", + "typical": "^5.2.0", + "wordwrapjs": "^4.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=8.0.0" } }, - "node_modules/ts-command-line-args/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/ts-command-line-args/node_modules/table-layout/node_modules/array-back": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", + "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, + "license": "MIT", "engines": { - "node": ">=7.0.0" + "node": ">=8" } }, - "node_modules/ts-command-line-args/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "node_modules/ts-command-line-args/node_modules/table-layout/node_modules/typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "node_modules/ts-command-line-args/node_modules/has-flag": { + "node_modules/ts-command-line-args/node_modules/typical": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", + "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/ts-command-line-args/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/ts-command-line-args/node_modules/wordwrapjs": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz", + "integrity": "sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==", "dev": true, + "license": "MIT", "dependencies": { - "has-flag": "^4.0.0" + "reduce-flatten": "^2.0.0", + "typical": "^5.2.0" }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/ts-command-line-args/node_modules/wordwrapjs/node_modules/typical": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", + "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", + "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -25522,25 +25060,26 @@ "resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-7.0.3.tgz", "integrity": "sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==", "dev": true, + "license": "MIT", "peerDependencies": { "typescript": ">=3.7.0" } }, "node_modules/ts-jest": { - "version": "29.3.1", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.3.1.tgz", - "integrity": "sha512-FT2PIRtZABwl6+ZCry8IY7JZ3xMuppsEV9qFVHOVe8jDzggwUZ9TsM4chyJxL9yi6LvkqcZYU3LmapEE454zBQ==", + "version": "29.4.0", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.0.tgz", + "integrity": "sha512-d423TJMnJGu80/eSgfQ5w/R+0zFJvdtTxwtF9KzFFunOpSeD+79lHJQIiAhluJoyGRbvj9NZJsl9WjCUo0ND7Q==", "dev": true, + "license": "MIT", "dependencies": { "bs-logger": "^0.2.6", "ejs": "^3.1.10", "fast-json-stable-stringify": "^2.1.0", - "jest-util": "^29.0.0", "json5": "^2.2.3", "lodash.memoize": "^4.1.2", "make-error": "^1.3.6", - "semver": "^7.7.1", - "type-fest": "^4.38.0", + "semver": "^7.7.2", + "type-fest": "^4.41.0", "yargs-parser": "^21.1.1" }, "bin": { @@ -25551,10 +25090,11 @@ }, "peerDependencies": { "@babel/core": ">=7.0.0-beta.0 <8", - "@jest/transform": "^29.0.0", - "@jest/types": "^29.0.0", - "babel-jest": "^29.0.0", - "jest": "^29.0.0", + "@jest/transform": "^29.0.0 || ^30.0.0", + "@jest/types": "^29.0.0 || ^30.0.0", + "babel-jest": "^29.0.0 || ^30.0.0", + "jest": "^29.0.0 || ^30.0.0", + "jest-util": "^29.0.0 || ^30.0.0", "typescript": ">=4.3 <6" }, "peerDependenciesMeta": { @@ -25572,26 +25112,18 @@ }, "esbuild": { "optional": true + }, + "jest-util": { + "optional": true } } }, - "node_modules/ts-jest/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/ts-jest/node_modules/type-fest": { - "version": "4.39.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.39.1.tgz", - "integrity": "sha512-uW9qzd66uyHYxwyVBYiwS4Oi0qZyUqwjU+Oevr6ZogYiXt99EOYtwvzMSLw1c3lYo2HzJsep/NB23iEVEgjG/w==", + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", + "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=16" }, @@ -25599,20 +25131,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ts-jest/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, "node_modules/ts-node": { "version": "10.9.2", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "devOptional": true, + "dev": true, + "license": "MIT", "dependencies": { "@cspotcode/source-map-support": "^0.8.0", "@tsconfig/node10": "^1.0.7", @@ -25655,26 +25179,56 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "devOptional": true, + "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" } }, + "node_modules/tsconfig-paths": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", + "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "json5": "^2.2.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tsconfig-paths/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" }, "node_modules/tsort": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/tsort/-/tsort-0.0.1.tgz", - "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==" + "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==", + "dev": true, + "license": "MIT" }, "node_modules/tsutils": { "version": "3.21.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, + "license": "MIT", "dependencies": { "tslib": "^1.8.1" }, @@ -25685,11 +25239,19 @@ "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" } }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, "node_modules/tuf-js": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz", "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==", "dev": true, + "license": "MIT", "dependencies": { "@tufjs/models": "2.0.1", "debug": "^4.3.4", @@ -25702,13 +25264,15 @@ "node_modules/tweetnacl": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==", + "license": "Unlicense" }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, + "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1" }, @@ -25717,17 +25281,20 @@ } }, "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", + "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", + "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" }, @@ -25740,6 +25307,7 @@ "resolved": "https://registry.npmjs.org/typechain/-/typechain-8.3.2.tgz", "integrity": "sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q==", "dev": true, + "license": "MIT", "dependencies": { "@types/prettier": "^2.1.1", "debug": "^4.3.1", @@ -25764,6 +25332,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "jsonfile": "^4.0.0", @@ -25777,7 +25346,9 @@ "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -25798,44 +25369,63 @@ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, + "license": "MIT", "optionalDependencies": { "graceful-fs": "^4.1.6" } }, + "node_modules/typechain/node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, "node_modules/typechain/node_modules/universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4.0.0" } }, "node_modules/typed-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", - "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", - "dev": true, + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" + "is-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" } }, "node_modules/typed-array-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", - "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -25845,17 +25435,19 @@ } }, "node_modules/typed-array-byte-offset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", - "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", "dev": true, + "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" }, "engines": { "node": ">= 0.4" @@ -25865,17 +25457,18 @@ } }, "node_modules/typed-array-length": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", - "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-proto": "^1.0.3", "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0" + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" }, "engines": { "node": ">= 0.4" @@ -25888,41 +25481,45 @@ "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "devOptional": true, + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=4.2.0" + "node": ">=14.17" } }, "node_modules/typical": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", - "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", - "dev": true, + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-7.3.0.tgz", + "integrity": "sha512-ya4mg/30vm+DOWfBg4YK3j2WD6TWtRkCbasOJr40CseYENzCUby/7rIvXA99JGsQHeNxLbnXdyLLxKSv3tauFw==", + "license": "MIT", "engines": { - "node": ">=8" + "node": ">=12.17" } }, "node_modules/u3": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/u3/-/u3-0.1.1.tgz", "integrity": "sha512-+J5D5ir763y+Am/QY6hXNRlwljIeRMZMGs0cT6qqZVVzzT3X3nFPXVyPOFRMOR4kupB0T8JnCdpWdp6Q/iXn3w==", + "license": "MIT", "optional": true }, "node_modules/uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "version": "3.19.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", + "integrity": "sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==", "dev": true, + "license": "BSD-2-Clause", "optional": true, "bin": { "uglifyjs": "bin/uglifyjs" @@ -25932,42 +25529,45 @@ } }, "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", + "call-bound": "^1.0.3", "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/undici": { - "version": "5.29.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", - "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, + "version": "6.21.3", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.21.3.tgz", + "integrity": "sha512-gBLkYIlEnSp8pFbT64yFgGE6UIB9tAkhukC23PmMDCe5Nd+cRqKxSjw5y54MK2AZMgZfJWMaNE4nYUHgi1XEOw==", + "license": "MIT", "engines": { - "node": ">=14.0" + "node": ">=18.17" } }, "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "dev": true + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", + "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==", + "license": "MIT" }, "node_modules/unique-filename": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", "dev": true, + "license": "ISC", "dependencies": { "unique-slug": "^4.0.0" }, @@ -25980,6 +25580,7 @@ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", "dev": true, + "license": "ISC", "dependencies": { "imurmurhash": "^0.1.4" }, @@ -25991,12 +25592,14 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz", "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/universalify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "license": "MIT", "engines": { "node": ">= 10.0.0" } @@ -26005,6 +25608,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -26014,15 +25619,16 @@ "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==", "dev": true, + "license": "MIT", "engines": { "node": ">=4", "yarn": "*" } }, "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", "dev": true, "funding": [ { @@ -26038,9 +25644,10 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "escalade": "^3.2.0", + "picocolors": "^1.1.1" }, "bin": { "update-browserslist-db": "cli.js" @@ -26053,6 +25660,7 @@ "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" } @@ -26061,17 +25669,25 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" }, "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", + "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", + "dev": true, + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", "bin": { "uuid": "dist/bin/uuid" } @@ -26080,13 +25696,15 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "devOptional": true + "dev": true, + "license": "MIT" }, "node_modules/v8-to-istanbul": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", - "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", "dev": true, + "license": "ISC", "dependencies": { "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", @@ -26101,6 +25719,7 @@ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, + "license": "Apache-2.0", "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -26111,6 +25730,7 @@ "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", "dev": true, + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -26119,13 +25739,15 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz", "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, + "license": "Apache-2.0", "dependencies": { "makeerror": "1.0.12" } @@ -26135,6 +25757,7 @@ "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, + "license": "MIT", "dependencies": { "defaults": "^1.0.3" } @@ -26144,6 +25767,7 @@ "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.10.4.tgz", "integrity": "sha512-tsu8FiKJLk2PzhDl9fXbGUWTkkVXYhtTA+SmEFkKft+9BgwLxfCRpU96sWv7ICC8zixBNd3JURVoiR3dUXgP8A==", "dev": true, + "license": "LGPL-3.0", "dependencies": { "@ethereumjs/util": "^8.1.0", "bn.js": "^5.2.1", @@ -26158,71 +25782,23 @@ "node": ">=8.0.0" } }, - "node_modules/web3-utils/node_modules/@noble/hashes": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz", - "integrity": "sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==", - "dev": true, - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/web3-utils/node_modules/@scure/bip32": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.3.3.tgz", - "integrity": "sha512-LJaN3HwRbfQK0X1xFSi0Q9amqOgzQnnDngIt+ZlsBC3Bm7/nE7K0kwshZHyaru79yIVRv/e1mQAjZyuZG6jOFQ==", - "dev": true, - "dependencies": { - "@noble/curves": "~1.3.0", - "@noble/hashes": "~1.3.2", - "@scure/base": "~1.1.4" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/web3-utils/node_modules/@scure/bip39": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.2.2.tgz", - "integrity": "sha512-HYf9TUXG80beW+hGAt3TRM8wU6pQoYur9iNypTROm42dorCGmLnFe3eWjz3gOq6G62H2WRh0FCzAR1PI+29zIA==", - "dev": true, - "dependencies": { - "@noble/hashes": "~1.3.2", - "@scure/base": "~1.1.4" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/web3-utils/node_modules/ethereum-cryptography": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.1.3.tgz", - "integrity": "sha512-BlwbIL7/P45W8FGW2r7LGuvoEZ+7PWsniMvQ4p5s2xCyw9tmaDlpfsN9HjAucbF+t/qpVHwZUisgfK24TCW8aA==", - "dev": true, - "dependencies": { - "@noble/curves": "1.3.0", - "@noble/hashes": "1.3.3", - "@scure/bip32": "1.3.3", - "@scure/bip39": "1.2.2" - } - }, "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause" }, "node_modules/whatwg-fetch": { "version": "3.6.20", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", - "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==" + "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==", + "license": "MIT" }, "node_modules/whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", "dependencies": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" @@ -26233,6 +25809,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, + "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -26244,31 +25821,91 @@ } }, "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/which-collection": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, + "license": "MIT", "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/which-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", - "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", - "dev": true, + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", + "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", "has-tostringtag": "^1.0.2" }, "engines": { @@ -26283,6 +25920,7 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "dev": true, + "license": "ISC", "dependencies": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -26291,6 +25929,8 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dev": true, + "license": "MIT", "dependencies": { "string-width": "^4.0.0" }, @@ -26302,6 +25942,7 @@ "version": "3.3.3", "resolved": "https://registry.npmjs.org/winston/-/winston-3.3.3.tgz", "integrity": "sha512-oEXTISQnC8VlSAKf1KYSSd7J6IWuRPQqDdo8eoRNaYKLvwSb5+79Z3Yi1lrl6KDpU6/VWaxpakDAtb1oQ4n9aw==", + "license": "MIT", "dependencies": { "@dabh/diagnostics": "^2.0.2", "async": "^3.1.0", @@ -26318,12 +25959,13 @@ } }, "node_modules/winston-transport": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.0.tgz", - "integrity": "sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", + "license": "MIT", "dependencies": { - "logform": "^2.3.2", - "readable-stream": "^3.6.0", + "logform": "^2.7.0", + "readable-stream": "^3.6.2", "triple-beam": "^1.3.0" }, "engines": { @@ -26335,6 +25977,7 @@ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -26343,49 +25986,38 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", - "dev": true - }, - "node_modules/wordwrapjs": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz", - "integrity": "sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==", "dev": true, - "dependencies": { - "reduce-flatten": "^2.0.0", - "typical": "^5.2.0" - }, - "engines": { - "node": ">=8.0.0" - } + "license": "MIT" }, - "node_modules/wordwrapjs/node_modules/typical": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", - "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", - "dev": true, + "node_modules/wordwrapjs": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-5.1.0.tgz", + "integrity": "sha512-JNjcULU2e4KJwUNv6CHgI46UvDGitb6dGryHajXTDiLgg1/RiGoPSDw4kZfYnwGtEXf2ZMeIewDQgFGzkCB2Sg==", + "license": "MIT", "engines": { - "node": ">=8" + "node": ">=12.17" } }, "node_modules/workerpool": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", - "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==" + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "dev": true, + "license": "Apache-2.0" }, "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "node": ">=8" } }, "node_modules/wrap-ansi-cjs": { @@ -26394,6 +26026,7 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -26406,85 +26039,38 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "devOptional": true, + "license": "ISC" }, "node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", "dev": true, + "license": "ISC", "dependencies": { "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" + "signal-exit": "^4.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/write-file-atomic/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/write-json-file": { @@ -26492,6 +26078,7 @@ "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-3.2.0.tgz", "integrity": "sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ==", "dev": true, + "license": "MIT", "dependencies": { "detect-indent": "^5.0.0", "graceful-fs": "^4.1.15", @@ -26509,6 +26096,7 @@ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", "dev": true, + "license": "MIT", "dependencies": { "pify": "^4.0.1", "semver": "^5.6.0" @@ -26522,6 +26110,7 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -26531,6 +26120,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver" } @@ -26540,6 +26130,7 @@ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", "dev": true, + "license": "ISC", "dependencies": { "graceful-fs": "^4.1.11", "imurmurhash": "^0.1.4", @@ -26551,6 +26142,7 @@ "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-4.0.0.tgz", "integrity": "sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA==", "dev": true, + "license": "MIT", "dependencies": { "sort-keys": "^2.0.0", "type-fest": "^0.4.1", @@ -26565,6 +26157,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.4.1.tgz", "integrity": "sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw==", "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=6" } @@ -26573,6 +26166,7 @@ "version": "7.5.10", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "license": "MIT", "engines": { "node": ">=8.3.0" }, @@ -26593,6 +26187,7 @@ "version": "11.14.0", "resolved": "https://registry.npmjs.org/xstream/-/xstream-11.14.0.tgz", "integrity": "sha512-1bLb+kKKtKPbgTK6i/BaoAn03g47PpFstlbe1BA+y3pNS/LfvcaghS5BFf9+EE1J+KwSQsEpfJvFN5GqFtiNmw==", + "license": "MIT", "dependencies": { "globalthis": "^1.0.1", "symbol-observable": "^2.0.3" @@ -26603,6 +26198,7 @@ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.4" } @@ -26611,25 +26207,29 @@ "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", "engines": { "node": ">=10" } }, "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "devOptional": true, + "license": "ISC" }, "node_modules/yaml": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz", - "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.0.tgz", + "integrity": "sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==", + "license": "ISC", "bin": { "yaml": "bin.mjs" }, "engines": { - "node": ">= 14" + "node": ">= 14.6" } }, "node_modules/yargs": { @@ -26637,6 +26237,7 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, + "license": "MIT", "dependencies": { "cliui": "^8.0.1", "escalade": "^3.1.1", @@ -26651,18 +26252,21 @@ } }, "node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, + "license": "ISC", "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/yargs-unparser": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "dev": true, + "license": "MIT", "dependencies": { "camelcase": "^6.0.0", "decamelize": "^4.0.0", @@ -26673,10 +26277,25 @@ "node": ">=10" } }, + "node_modules/yargs-unparser/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/yargs-unparser/node_modules/decamelize": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -26688,38 +26307,18 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, + "license": "MIT", "engines": { - "node": ">=12" + "node": ">=8" } }, "node_modules/yn": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "devOptional": true, + "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -26728,6 +26327,8 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -26763,7 +26364,7 @@ "@typescript-eslint/eslint-plugin": "^5.41.0", "@typescript-eslint/parser": "^5.41.0", "chai": "^4.3.6", - "eslint": "^9.24.0", + "eslint": "^8.57.0", "hardhat": "^2.22.19", "hardhat-gas-reporter": "^1.0.8", "jest": "^29.2.2", @@ -26804,7 +26405,6 @@ "@cosmjs/cosmwasm-stargate": "^0.31.1", "@cosmjs/stargate": "^0.31.1", "@metamask/abi-utils": "^3.0.0", - "@nomiclabs/hardhat-ethers": "^2.0.6", "@types/sinon": "^17.0.2", "bech32": "^2.0.0", "docker-compose": "^0.24.3", @@ -26832,7 +26432,7 @@ "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "dotenv": "^16.5.0", - "ethers": "5", + "ethers": "^5.6.5", "hardhat": "^2.23.0", "hardhat-gas-reporter": "^1.0.8", "jest": "^29.7.0", @@ -26847,8 +26447,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/@noble/curves": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz", - "integrity": "sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==", "dev": true, "license": "MIT", "dependencies": { @@ -26860,8 +26458,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/@noble/hashes": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.2.tgz", - "integrity": "sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==", "dev": true, "license": "MIT", "engines": { @@ -26873,8 +26469,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/@nomicfoundation/hardhat-chai-matchers": { "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-chai-matchers/-/hardhat-chai-matchers-2.0.9.tgz", - "integrity": "sha512-AbCoBuTKMlwlf1lesSmi/4VvJHNG9EP13EmkCJ+MJS1SBdtVtU4YrBbdYmnYPEvRFcAIMFB/cwcQGmuBYeCoVg==", "dev": true, "license": "MIT", "dependencies": { @@ -26892,8 +26486,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/@nomicfoundation/hardhat-ethers": { "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ethers/-/hardhat-ethers-3.0.9.tgz", - "integrity": "sha512-xBJdRUiCwKpr0OYrOzPwAyNGtsVzoBx32HFPJVv6S+sFA9TmBIBDaqNlFPmBH58ZjgNnGhEr/4oBZvGr4q4TjQ==", "dev": true, "license": "MIT", "dependencies": { @@ -26907,8 +26499,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/@nomicfoundation/hardhat-ignition-ethers": { "version": "0.15.13", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ignition-ethers/-/hardhat-ignition-ethers-0.15.13.tgz", - "integrity": "sha512-fJuImb0KBbsylTL5M1DdlChIO/GZoms2NUVJhU+AvfhlgB0jzRH+9jSXE9izYPktd8//tdVSC4kJloJPrR+BlA==", "dev": true, "license": "MIT", "peerDependencies": { @@ -26921,8 +26511,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/@nomicfoundation/hardhat-toolbox": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-toolbox/-/hardhat-toolbox-5.0.0.tgz", - "integrity": "sha512-FnUtUC5PsakCbwiVNsqlXVIWG5JIb5CEZoSXbJUsEBun22Bivx2jhF1/q9iQbzuaGpJKFQyOhemPB2+XlEE6pQ==", "dev": true, "license": "MIT", "peerDependencies": { @@ -26946,91 +26534,8 @@ "typescript": ">=4.5.0" } }, - "packages/axelar-local-dev-cosmos/node_modules/@scure/base": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz", - "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "packages/axelar-local-dev-cosmos/node_modules/@scure/bip32": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.7.0.tgz", - "integrity": "sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/curves": "~1.9.0", - "@noble/hashes": "~1.8.0", - "@scure/base": "~1.2.5" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "packages/axelar-local-dev-cosmos/node_modules/@scure/bip32/node_modules/@noble/curves": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.2.tgz", - "integrity": "sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.8.0" - }, - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "packages/axelar-local-dev-cosmos/node_modules/@scure/bip32/node_modules/@noble/hashes": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", - "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "packages/axelar-local-dev-cosmos/node_modules/@scure/bip39": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.6.0.tgz", - "integrity": "sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "~1.8.0", - "@scure/base": "~1.2.5" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "packages/axelar-local-dev-cosmos/node_modules/@scure/bip39/node_modules/@noble/hashes": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", - "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, "packages/axelar-local-dev-cosmos/node_modules/@typechain/ethers-v6": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/@typechain/ethers-v6/-/ethers-v6-0.5.1.tgz", - "integrity": "sha512-F+GklO8jBWlsaVV+9oHaPh5NJdd6rAKN4tklGfInX1Q7h0xPgVLP39Jl3eCulPB5qexI71ZFHwbljx4ZXNfouA==", "dev": true, "license": "MIT", "dependencies": { @@ -27045,8 +26550,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/@typechain/hardhat": { "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@typechain/hardhat/-/hardhat-9.1.0.tgz", - "integrity": "sha512-mtaUlzLlkqTlfPwB3FORdejqBskSnh+Jl8AIJGjXNAQfRQ4ofHADPl1+oU7Z3pAJzmZbUXII8MhOLQltcHgKnA==", "dev": true, "license": "MIT", "dependencies": { @@ -27059,10 +26562,16 @@ "typechain": "^8.3.2" } }, + "packages/axelar-local-dev-cosmos/node_modules/@types/node": { + "version": "22.7.5", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, "packages/axelar-local-dev-cosmos/node_modules/abitype": { "version": "1.0.8", - "resolved": "https://registry.npmjs.org/abitype/-/abitype-1.0.8.tgz", - "integrity": "sha512-ZeiI6h3GnW06uYDLx0etQtX/p8E24UaHHBj57RSjK7YBFe7iuVn07EDpOeP451D06sF27VOz9JJPlIKJmXgkEg==", "dev": true, "license": "MIT", "funding": { @@ -27083,8 +26592,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/aes-js": { "version": "4.0.0-beta.5", - "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-4.0.0-beta.5.tgz", - "integrity": "sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==", "dev": true, "license": "MIT" }, @@ -27094,8 +26601,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/dotenv": { "version": "16.6.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", - "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -27107,8 +26612,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/ethers": { "version": "6.14.4", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-6.14.4.tgz", - "integrity": "sha512-Jm/dzRs2Z9iBrT6e9TvGxyb5YVKAPLlpna7hjxH7KH/++DSh2T/JVmQUv7iHI5E55hDbp/gEVvstWYXVxXFzsA==", "dev": true, "funding": [ { @@ -27136,15 +26639,11 @@ }, "packages/axelar-local-dev-cosmos/node_modules/eventemitter3": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", - "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", "dev": true, "license": "MIT" }, "packages/axelar-local-dev-cosmos/node_modules/fs-extra": { "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, "license": "MIT", "dependencies": { @@ -27177,8 +26676,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/ox": { "version": "0.8.1", - "resolved": "https://registry.npmjs.org/ox/-/ox-0.8.1.tgz", - "integrity": "sha512-e+z5epnzV+Zuz91YYujecW8cF01mzmrUtWotJ0oEPym/G82uccs7q0WDHTYL3eiONbTUEvcZrptAKLgTBD3u2A==", "dev": true, "funding": [ { @@ -27208,15 +26705,11 @@ }, "packages/axelar-local-dev-cosmos/node_modules/ox/node_modules/@adraffy/ens-normalize": { "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.11.0.tgz", - "integrity": "sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg==", "dev": true, "license": "MIT" }, "packages/axelar-local-dev-cosmos/node_modules/ox/node_modules/@noble/curves": { "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.2.tgz", - "integrity": "sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g==", "dev": true, "license": "MIT", "dependencies": { @@ -27231,8 +26724,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/ox/node_modules/@noble/hashes": { "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", - "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", "dev": true, "license": "MIT", "engines": { @@ -27244,29 +26735,16 @@ }, "packages/axelar-local-dev-cosmos/node_modules/tslib": { "version": "2.7.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", - "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", "dev": true, "license": "0BSD" }, - "packages/axelar-local-dev-cosmos/node_modules/typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "packages/axelar-local-dev-cosmos/node_modules/undici-types": { + "version": "6.19.8", "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } + "license": "MIT" }, "packages/axelar-local-dev-cosmos/node_modules/viem": { "version": "2.31.6", - "resolved": "https://registry.npmjs.org/viem/-/viem-2.31.6.tgz", - "integrity": "sha512-2PPbXL/8bHQxUzaLFDk4R6WHifTcXxAqMC8/j6RBgXl/OexQ1HU8r9OukwfDTqrFoHtWWiYz5fktHATy7+U9nQ==", "dev": true, "funding": [ { @@ -27296,8 +26774,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/viem/node_modules/@noble/curves": { "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.2.tgz", - "integrity": "sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g==", "dev": true, "license": "MIT", "dependencies": { @@ -27312,8 +26788,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/viem/node_modules/@noble/hashes": { "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", - "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", "dev": true, "license": "MIT", "engines": { @@ -27325,8 +26799,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/viem/node_modules/ws": { "version": "8.18.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.2.tgz", - "integrity": "sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==", "dev": true, "license": "MIT", "engines": { @@ -27347,8 +26819,6 @@ }, "packages/axelar-local-dev-cosmos/node_modules/ws": { "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "dev": true, "license": "MIT", "engines": { @@ -27404,8 +26874,7 @@ }, "packages/axelar-local-dev/node_modules/@axelar-network/axelar-cgp-solidity": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/@axelar-network/axelar-cgp-solidity/-/axelar-cgp-solidity-6.3.0.tgz", - "integrity": "sha512-dHE2UgaFZvQvL0ythMi+aBsr4t+eR6zrVGmCU5BxslEqi6Tx+Wmjwg1O1p15EqoztalSqRKj+r57n3GtgeUpig==", + "license": "MIT", "dependencies": { "@axelar-network/axelar-gmp-sdk-solidity": "5.7.0" }, @@ -27413,11 +26882,17 @@ "node": ">=18" } }, + "packages/axelar-local-dev/node_modules/@axelar-network/axelar-gmp-sdk-solidity": { + "version": "5.7.0", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "packages/axelar-local-dev/node_modules/@eslint/eslintrc": { "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", - "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", "dev": true, + "license": "MIT", "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", @@ -27438,18 +26913,16 @@ }, "packages/axelar-local-dev/node_modules/@eslint/js": { "version": "9.24.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.24.0.tgz", - "integrity": "sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==", "dev": true, + "license": "MIT", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, "packages/axelar-local-dev/node_modules/@typechain/ethers-v5": { "version": "11.1.2", - "resolved": "https://registry.npmjs.org/@typechain/ethers-v5/-/ethers-v5-11.1.2.tgz", - "integrity": "sha512-ID6pqWkao54EuUQa0P5RgjvfA3MYqxUQKpbGKERbsjBW5Ra7EIXvbMlPp2pcP5IAdUkyMCFYsP2SN5q7mPdLDQ==", "dev": true, + "license": "MIT", "dependencies": { "lodash": "^4.17.15", "ts-essentials": "^7.0.1" @@ -27470,72 +26943,10 @@ "undici-types": "~5.26.4" } }, - "packages/axelar-local-dev/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "packages/axelar-local-dev/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "packages/axelar-local-dev/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "packages/axelar-local-dev/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "packages/axelar-local-dev/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "packages/axelar-local-dev/node_modules/eslint": { "version": "9.24.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.24.0.tgz", - "integrity": "sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==", "dev": true, + "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", @@ -27593,9 +27004,8 @@ }, "packages/axelar-local-dev/node_modules/eslint-scope": { "version": "8.3.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", - "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" @@ -27609,9 +27019,8 @@ }, "packages/axelar-local-dev/node_modules/eslint-visitor-keys": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", - "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", "dev": true, + "license": "Apache-2.0", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -27621,9 +27030,8 @@ }, "packages/axelar-local-dev/node_modules/espree": { "version": "10.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", - "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "acorn": "^8.14.0", "acorn-jsx": "^5.3.2", @@ -27636,20 +27044,10 @@ "url": "https://opencollective.com/eslint" } }, - "packages/axelar-local-dev/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "packages/axelar-local-dev/node_modules/file-entry-cache": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", - "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", "dev": true, + "license": "MIT", "dependencies": { "flat-cache": "^4.0.0" }, @@ -27659,9 +27057,8 @@ }, "packages/axelar-local-dev/node_modules/flat-cache": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", - "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", "dev": true, + "license": "MIT", "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.4" @@ -27672,9 +27069,8 @@ }, "packages/axelar-local-dev/node_modules/globals": { "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=18" }, @@ -27682,41 +27078,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "packages/axelar-local-dev/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "packages/axelar-local-dev/node_modules/prettier": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", - "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", + "packages/axelar-local-dev/node_modules/typescript": { + "version": "4.9.5", "dev": true, + "license": "Apache-2.0", "bin": { - "prettier": "bin/prettier.cjs" + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" + "node": ">=4.2.0" } }, - "packages/axelar-local-dev/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "packages/axelar-local-dev/node_modules/undici-types": { + "version": "5.26.5", "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } + "license": "MIT" } } } diff --git a/package.json b/package.json index 69cabfe6..adfaac27 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,8 @@ }, "devDependencies": { "lerna": "^8.2.1", - "lerna-update-wizard": "^1.1.2" + "lerna-update-wizard": "^1.1.2", + "eslint": "^8.57.0" }, "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e" } diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index 93a5769b..c31bf04e 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -33,7 +33,6 @@ "@cosmjs/cosmwasm-stargate": "^0.31.1", "@cosmjs/stargate": "^0.31.1", "@metamask/abi-utils": "^3.0.0", - "@nomiclabs/hardhat-ethers": "^2.0.6", "@types/sinon": "^17.0.2", "bech32": "^2.0.0", "docker-compose": "^0.24.3", @@ -64,7 +63,7 @@ "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", "dotenv": "^16.5.0", - "ethers": "5", + "ethers": "^5.6.5", "hardhat": "^2.23.0", "hardhat-gas-reporter": "^1.0.8", "jest": "^29.7.0", diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts index 563e069e..a1ebc0bc 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts @@ -107,7 +107,7 @@ describe("AgoricProxy", () => { const receipt = await provider.getTransactionReceipt(tx.hash); const iface = (await ethers.getContractFactory("AgoricProxy")).interface; - const receivedEvent = receipt.logs + const receivedEvent = receipt?.logs .map((log) => { try { return iface.parseLog(log); @@ -118,8 +118,8 @@ describe("AgoricProxy", () => { .find((parsed) => parsed && parsed.name === "Received"); expect(receivedEvent).to.not.be.undefined; - expect(receivedEvent.args.sender).to.equal(owner.address); - expect(receivedEvent.args.amount).to.equal(ethers.parseEther("5.0")); + expect(receivedEvent?.args.sender).to.equal(owner.address); + expect(receivedEvent?.args.amount).to.equal(ethers.parseEther("5.0")); const balanceAfter = await provider.getBalance(agoricProxyAddress); expect(balanceAfter).to.equal(ethers.parseEther("5.0")); diff --git a/packages/axelar-local-dev-cosmos/tsconfig.json b/packages/axelar-local-dev-cosmos/tsconfig.json index 4e37de3e..b38e1c14 100644 --- a/packages/axelar-local-dev-cosmos/tsconfig.json +++ b/packages/axelar-local-dev-cosmos/tsconfig.json @@ -34,7 +34,7 @@ /* Completeness */ "skipDefaultLibCheck": true /* Skip type checking .d.ts files that are included with TypeScript. */, "skipLibCheck": true /* Skip type checking all .d.ts files. */, - "types": ["@nomicfoundation/hardhat-chai-matchers", "mocha"] + "types": ["@nomicfoundation/hardhat-chai-matchers"] }, "include": ["src"], "exclude": ["node_modules", "dist", "src/__tests__/"] diff --git a/packages/axelar-local-dev/package.json b/packages/axelar-local-dev/package.json index 649ed6e5..942ce4d0 100644 --- a/packages/axelar-local-dev/package.json +++ b/packages/axelar-local-dev/package.json @@ -56,7 +56,7 @@ "@typescript-eslint/eslint-plugin": "^5.41.0", "@typescript-eslint/parser": "^5.41.0", "chai": "^4.3.6", - "eslint": "^9.24.0", + "eslint": "^8.57.0", "hardhat": "^2.22.19", "hardhat-gas-reporter": "^1.0.8", "jest": "^29.2.2", From e8d5a07d2e51d83ef110a8e13495c73a39a977be Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 2 Jul 2025 16:44:00 +0500 Subject: [PATCH 53/93] fix: ensure cosmos package build is successful --- .github/workflows/test-cosmos.yml | 2 +- package-lock.json | 55 +++++++++++++++++++ package.json | 5 +- packages/axelar-local-dev-cosmos/.solcover.js | 2 +- packages/axelar-local-dev-cosmos/package.json | 1 + .../src/__tests__/AgoricProxy.spec.ts | 33 +++++------ .../contracts/AxelarImportsForTest.sol | 6 ++ .../contracts/ContractCallWithToken.sol | 3 +- .../src/__tests__/contracts/Multicall.sol | 2 +- .../src/__tests__/contracts/SendReceive.sol | 2 +- .../__tests__/contracts/StakingContract.sol | 2 +- .../contracts/importer/axelar-contracts.sol | 19 ------- 12 files changed, 89 insertions(+), 43 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/contracts/AxelarImportsForTest.sol delete mode 100644 packages/axelar-local-dev-cosmos/src/__tests__/contracts/importer/axelar-contracts.sol diff --git a/.github/workflows/test-cosmos.yml b/.github/workflows/test-cosmos.yml index af51f6b2..dbb16145 100644 --- a/.github/workflows/test-cosmos.yml +++ b/.github/workflows/test-cosmos.yml @@ -31,4 +31,4 @@ jobs: - name: Test timeout-minutes: 15 run: | - npm run test:cosmos + npm run test:proxy diff --git a/package-lock.json b/package-lock.json index 7773cf61..b8963a58 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "packages/*" ], "devDependencies": { + "chai-as-promised": "^8.0.1", "eslint": "^8.57.0", "lerna": "^8.2.1", "lerna-update-wizard": "^1.1.2" @@ -5967,6 +5968,16 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/chai-as-promised": { + "version": "7.1.8", + "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz", + "integrity": "sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/chai": "*" + } + }, "node_modules/@types/command-line-args": { "version": "5.2.3", "resolved": "https://registry.npmjs.org/@types/command-line-args/-/command-line-args-5.2.3.tgz", @@ -7980,6 +7991,29 @@ "node": ">=4" } }, + "node_modules/chai-as-promised": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-8.0.1.tgz", + "integrity": "sha512-OIEJtOL8xxJSH8JJWbIoRjybbzR52iFuDHuF8eb+nTPD6tgXLjRqsgnUGqQfFODxYvq5QdirT0pN9dZ0+Gz6rA==", + "dev": true, + "license": "MIT", + "dependencies": { + "check-error": "^2.0.0" + }, + "peerDependencies": { + "chai": ">= 2.1.2 < 6" + } + }, + "node_modules/chai-as-promised/node_modules/check-error": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz", + "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + } + }, "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -20946,6 +20980,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/ordinal": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ordinal/-/ordinal-1.0.3.tgz", + "integrity": "sha512-cMddMgb2QElm8G7vdaa02jhUNbTSrhsgAGUz1OokD83uJTwSUn+nKoNoKVVaRa08yF6sgfO7Maou1+bgLd9rdQ==", + "dev": true, + "license": "MIT" + }, "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -26431,6 +26472,7 @@ "@types/mocha": "^10.0.10", "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", + "chai-as-promised": "^7.1.2", "dotenv": "^16.5.0", "ethers": "^5.6.5", "hardhat": "^2.23.0", @@ -26599,6 +26641,19 @@ "version": "2.0.0", "license": "MIT" }, + "packages/axelar-local-dev-cosmos/node_modules/chai-as-promised": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.2.tgz", + "integrity": "sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==", + "dev": true, + "license": "WTFPL", + "dependencies": { + "check-error": "^1.0.2" + }, + "peerDependencies": { + "chai": ">= 2.1.2 < 6" + } + }, "packages/axelar-local-dev-cosmos/node_modules/dotenv": { "version": "16.6.1", "dev": true, diff --git a/package.json b/package.json index adfaac27..c4394bf5 100644 --- a/package.json +++ b/package.json @@ -34,9 +34,10 @@ "coverage:proxy": "lerna exec --scope=@axelar-network/axelar-local-dev-cosmos npm run coverage:proxy" }, "devDependencies": { + "chai-as-promised": "^8.0.1", + "eslint": "^8.57.0", "lerna": "^8.2.1", - "lerna-update-wizard": "^1.1.2", - "eslint": "^8.57.0" + "lerna-update-wizard": "^1.1.2" }, "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e" } diff --git a/packages/axelar-local-dev-cosmos/.solcover.js b/packages/axelar-local-dev-cosmos/.solcover.js index df494a9c..b28ba4b6 100644 --- a/packages/axelar-local-dev-cosmos/.solcover.js +++ b/packages/axelar-local-dev-cosmos/.solcover.js @@ -1,7 +1,7 @@ module.exports = { skipFiles: [ "ContractCallWithToken.sol", - "importer/axelar-contracts.sol", + "AxelarImportsForTest.sol", "Multicall.sol", "Ownable.sol", "SendReceive.sol", diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index c31bf04e..4963f5e5 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -62,6 +62,7 @@ "@types/mocha": "^10.0.10", "@types/node-fetch": "^2.6.5", "@updated-axelar-network/axelar-gmp-sdk-solidity": "npm:@axelar-network/axelar-gmp-sdk-solidity@^6.0.4", + "chai-as-promised": "^7.1.2", "dotenv": "^16.5.0", "ethers": "^5.6.5", "hardhat": "^2.23.0", diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts index a1ebc0bc..ea33c791 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts @@ -1,3 +1,4 @@ +import AxelarGasService from "@axelar-network/axelar-cgp-solidity/artifacts/contracts/gas-service/AxelarGasService.sol/AxelarGasService.json"; import { expect } from "chai"; import { ethers } from "hardhat"; import { keccak256, stringToHex, toBytes } from "viem"; @@ -13,13 +14,13 @@ import { const createRemoteEVMAccount = async ( axelarGatewayMock, ownerAddress, - sourceAddress + sourceAddress, ) => { const WalletFactory = await ethers.getContractFactory("Wallet"); const wallet = await WalletFactory.deploy( axelarGatewayMock.target, ownerAddress, - sourceAddress + sourceAddress, ); await wallet.waitForDeployment(); return wallet; @@ -45,36 +46,36 @@ describe("AgoricProxy", () => { [owner, addr1] = await ethers.getSigners(); const GasServiceFactory = await ethers.getContractFactory( - "AxelarGasService" + AxelarGasService.abi, + AxelarGasService.bytecode, ); + const axelarGasServiceMock = await GasServiceFactory.deploy(owner.address); - const TokenDeployerFactory = await ethers.getContractFactory( - "TokenDeployer" - ); + const TokenDeployerFactory = + await ethers.getContractFactory("TokenDeployer"); const tokenDeployer = await TokenDeployerFactory.deploy(); const AuthFactory = await ethers.getContractFactory("AxelarAuthWeighted"); const authContract = await AuthFactory.deploy([ abiCoder.encode( ["address[]", "uint256[]", "uint256"], - [[owner.address], [1], 1] + [[owner.address], [1], 1], ), ]); - const AxelarGatewayFactory = await ethers.getContractFactory( - "AxelarGateway" - ); + const AxelarGatewayFactory = + await ethers.getContractFactory("AxelarGateway"); axelarGatewayMock = await AxelarGatewayFactory.deploy( authContract.target, - tokenDeployer.target + tokenDeployer.target, ); const Contract = await ethers.getContractFactory("AgoricProxy"); agoricProxy = await Contract.deploy( axelarGatewayMock.target, axelarGasServiceMock.target, - "Ethereum" + "Ethereum", ); await agoricProxy.waitForDeployment(); @@ -147,7 +148,7 @@ describe("AgoricProxy", () => { commandId, sourceContract, sourceAddress, - payload + payload, ); await expect(tx) @@ -165,7 +166,7 @@ describe("AgoricProxy", () => { const wallet = await createRemoteEVMAccount( axelarGatewayMock, owner.address, - sourceAddress + sourceAddress, ); // Test ContractCall @@ -201,7 +202,7 @@ describe("AgoricProxy", () => { commandId1, sourceContract, sourceAddress, - multicallPayload + multicallPayload, ); expect(execTx).to.emit(wallet, "MulticallExecuted"); @@ -239,7 +240,7 @@ describe("AgoricProxy", () => { sourceAddress, multicallPayload2, "USDC", - 5000 + 5000, ); expect(execWithTokenTx).to.emit(wallet, "MulticallExecuted"); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AxelarImportsForTest.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AxelarImportsForTest.sol new file mode 100644 index 00000000..bc8f7ee0 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AxelarImportsForTest.sol @@ -0,0 +1,6 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.0; + +import {TokenDeployer} from "@axelar-network/axelar-cgp-solidity/contracts/TokenDeployer.sol"; +import {AxelarGateway} from "@axelar-network/axelar-cgp-solidity/contracts/AxelarGateway.sol"; +import {AxelarAuthWeighted} from "@axelar-network/axelar-cgp-solidity/contracts/auth/AxelarAuthWeighted.sol"; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol index 43df67c5..0e930392 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol @@ -1,5 +1,5 @@ //SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity ^0.8.20; import {AxelarExecutableWithToken} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol"; import {IERC20} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol"; @@ -33,6 +33,7 @@ contract CallContractWithToken is AxelarExecutableWithToken { } Message public storedMessage; // message received from _execute + /** * * @param _gateway address of axl gateway on deployed chain diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol index 37a4dbcc..e9f3e0dc 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity ^0.8.20; contract Multicall { uint256 private value; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/SendReceive.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/SendReceive.sol index 36584000..23f64455 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/SendReceive.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/SendReceive.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.9; +pragma solidity ^0.8.20; import {AxelarExecutable} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol"; import {IAxelarGateway} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol"; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol index 3c57a8f4..07821577 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; +pragma solidity ^0.8.20; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/importer/axelar-contracts.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/importer/axelar-contracts.sol deleted file mode 100644 index 5282b7c4..00000000 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/importer/axelar-contracts.sol +++ /dev/null @@ -1,19 +0,0 @@ -// SPDX-License-Identifier: MIT - -pragma solidity ^0.8.0; - -// File required for tests -// It imports the Axelar contracts from the node_modules directory -// and uses them in the test cases. - -// Axelar CGP SDK -import {TokenDeployer} from "@axelar-network/axelar-cgp-solidity/contracts/TokenDeployer.sol"; -import {AxelarGateway} from "@axelar-network/axelar-cgp-solidity/contracts/AxelarGateway.sol"; -import {AxelarAuthWeighted} from "@axelar-network/axelar-cgp-solidity/contracts/auth/AxelarAuthWeighted.sol"; -import {AxelarGatewayProxy} from "@axelar-network/axelar-cgp-solidity/contracts/AxelarGatewayProxy.sol"; -import {AxelarGasService} from "@axelar-network/axelar-cgp-solidity/contracts/gas-service/AxelarGasService.sol"; -import {AxelarGasServiceProxy} from "@axelar-network/axelar-cgp-solidity/contracts/gas-service/AxelarGasServiceProxy.sol"; - -// Axelar GMP SDK -import {IAxelarExecutable} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol"; -import {AxelarExpressExecutable} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/express/AxelarExpressExecutable.sol"; From 643be63dd771d7229160223511b9fa3901e5a473 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 3 Jul 2025 12:18:26 +0500 Subject: [PATCH 54/93] feat: add script for deploying contracts --- package.json | 2 + .../axelar-local-dev-cosmos/hardhat.config.ts | 27 + .../0bb454ad7489296ae41dd1df125d914d.json | 82808 ++++++++++++++++ .../chain-84532/deployed_addresses.json | 3 + .../deployments/chain-84532/journal.jsonl | 8 + .../ignition/modules/deployAgoricProxy.ts | 27 + .../axelar-local-dev-cosmos/scripts/deploy.sh | 47 + .../axelar-local-dev-cosmos/tsconfig.json | 2 +- 8 files changed, 82923 insertions(+), 1 deletion(-) create mode 100644 packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/build-info/0bb454ad7489296ae41dd1df125d914d.json create mode 100644 packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/deployed_addresses.json create mode 100644 packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/journal.jsonl create mode 100644 packages/axelar-local-dev-cosmos/ignition/modules/deployAgoricProxy.ts create mode 100755 packages/axelar-local-dev-cosmos/scripts/deploy.sh diff --git a/package.json b/package.json index c4394bf5..bf071509 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,8 @@ "access": "public" }, "scripts": { + "deploy-fuji": "cd packages/axelar-local-dev-cosmos && ./scripts/deploy.sh fuji", + "deploy-base": "cd packages/axelar-local-dev-cosmos && ./scripts/deploy.sh base", "publish": "lerna publish from-package --yes", "version": "lerna version --yes --exact --no-git-tag-version", "link": "lerna link", diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index 52a3e135..3e6bcb36 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -4,6 +4,12 @@ import { HardhatUserConfig } from "hardhat/config"; envConfig(); +const { PRIVATE_KEY } = process.env; + +if (!PRIVATE_KEY) { + throw new Error("PRIVATE_KEY is not defined in the environment variables"); +} + const config: HardhatUserConfig = { solidity: { compilers: [ @@ -33,6 +39,27 @@ const config: HardhatUserConfig = { }, ], }, + networks: { + hardhat: { + chainId: 31337, + }, + localhost: { + url: "http://127.0.0.1:8545", + chainId: 31337, + }, + fuji: { + url: "https://api.avax-test.network/ext/bc/C/rpc", + gasPrice: 225000000000, + chainId: 43113, + accounts: [`0x${PRIVATE_KEY}`], + }, + base: { + url: "https://sepolia.base.org/", + gasPrice: 225000000000, + chainId: 84532, + accounts: [`0x${PRIVATE_KEY}`], + }, + }, paths: { sources: "./src/__tests__/contracts", }, diff --git a/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/build-info/0bb454ad7489296ae41dd1df125d914d.json b/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/build-info/0bb454ad7489296ae41dd1df125d914d.json new file mode 100644 index 00000000..3c443f79 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/build-info/0bb454ad7489296ae41dd1df125d914d.json @@ -0,0 +1,82808 @@ +{ + "id": "0bb454ad7489296ae41dd1df125d914d", + "_format": "hh-sol-build-info-1", + "solcVersion": "0.8.20", + "solcLongVersion": "0.8.20+commit.a1b79de6", + "input": { + "language": "Solidity", + "sources": { + "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IAxelarGateway } from '../interfaces/IAxelarGateway.sol';\nimport { IAxelarExecutable } from '../interfaces/IAxelarExecutable.sol';\n\ncontract AxelarExecutable is IAxelarExecutable {\n IAxelarGateway public immutable gateway;\n\n constructor(address gateway_) {\n if (gateway_ == address(0)) revert InvalidAddress();\n\n gateway = IAxelarGateway(gateway_);\n }\n\n function execute(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload\n ) external {\n bytes32 payloadHash = keccak256(payload);\n\n if (!gateway.validateContractCall(commandId, sourceChain, sourceAddress, payloadHash))\n revert NotApprovedByGateway();\n\n _execute(sourceChain, sourceAddress, payload);\n }\n\n function executeWithToken(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload,\n string calldata tokenSymbol,\n uint256 amount\n ) external {\n bytes32 payloadHash = keccak256(payload);\n\n if (\n !gateway.validateContractCallAndMint(\n commandId,\n sourceChain,\n sourceAddress,\n payloadHash,\n tokenSymbol,\n amount\n )\n ) revert NotApprovedByGateway();\n\n _executeWithToken(sourceChain, sourceAddress, payload, tokenSymbol, amount);\n }\n\n function _execute(\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload\n ) internal virtual {}\n\n function _executeWithToken(\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload,\n string calldata tokenSymbol,\n uint256 amount\n ) internal virtual {}\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IAxelarGateway } from './IAxelarGateway.sol';\n\ninterface IAxelarExecutable {\n error InvalidAddress();\n error NotApprovedByGateway();\n\n function gateway() external view returns (IAxelarGateway);\n\n function execute(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload\n ) external;\n\n function executeWithToken(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload,\n string calldata tokenSymbol,\n uint256 amount\n ) external;\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { GasInfo } from '../types/GasEstimationTypes.sol';\nimport { IInterchainGasEstimation } from './IInterchainGasEstimation.sol';\nimport { IUpgradable } from './IUpgradable.sol';\n\n/**\n * @title IAxelarGasService Interface\n * @notice This is an interface for the AxelarGasService contract which manages gas payments\n * and refunds for cross-chain communication on the Axelar network.\n * @dev This interface inherits IUpgradable\n */\ninterface IAxelarGasService is IInterchainGasEstimation, IUpgradable {\n error InvalidAddress();\n error NotCollector();\n error InvalidAmounts();\n error InvalidGasUpdates();\n error InvalidParams();\n error InsufficientGasPayment(uint256 required, uint256 provided);\n\n event GasPaidForContractCall(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event GasPaidForContractCallWithToken(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasPaidForContractCall(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasPaidForContractCallWithToken(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event GasPaidForExpressCall(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event GasPaidForExpressCallWithToken(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasPaidForExpressCall(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasPaidForExpressCallWithToken(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event GasAdded(\n bytes32 indexed txHash,\n uint256 indexed logIndex,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasAdded(bytes32 indexed txHash, uint256 indexed logIndex, uint256 gasFeeAmount, address refundAddress);\n\n event ExpressGasAdded(\n bytes32 indexed txHash,\n uint256 indexed logIndex,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeExpressGasAdded(\n bytes32 indexed txHash,\n uint256 indexed logIndex,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event Refunded(\n bytes32 indexed txHash,\n uint256 indexed logIndex,\n address payable receiver,\n address token,\n uint256 amount\n );\n\n /**\n * @notice Pay for gas for any type of contract execution on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @dev If estimateOnChain is true, the function will estimate the gas cost and revert if the payment is insufficient.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param executionGasLimit The gas limit for the contract call\n * @param estimateOnChain Flag to enable on-chain gas estimation\n * @param refundAddress The address where refunds, if any, should be sent\n * @param params Additional parameters for gas payment. This can be left empty for normal contract call payments.\n */\n function payGas(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n uint256 executionGasLimit,\n bool estimateOnChain,\n address refundAddress,\n bytes calldata params\n ) external payable;\n\n /**\n * @notice Pay for gas using ERC20 tokens for a contract call on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param gasToken The address of the ERC20 token used to pay for gas\n * @param gasFeeAmount The amount of tokens to pay for gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payGasForContractCall(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Pay for gas using ERC20 tokens for a contract call with tokens on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call with tokens will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call with tokens\n * @param symbol The symbol of the token to be sent with the call\n * @param amount The amount of tokens to be sent with the call\n * @param gasToken The address of the ERC20 token used to pay for gas\n * @param gasFeeAmount The amount of tokens to pay for gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payGasForContractCallWithToken(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Pay for gas using native currency for a contract call on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payNativeGasForContractCall(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Pay for gas using native currency for a contract call with tokens on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call with tokens will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call with tokens\n * @param symbol The symbol of the token to be sent with the call\n * @param amount The amount of tokens to be sent with the call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payNativeGasForContractCallWithToken(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Pay for gas using ERC20 tokens for an express contract call on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to express execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param gasToken The address of the ERC20 token used to pay for gas\n * @param gasFeeAmount The amount of tokens to pay for gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payGasForExpressCall(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Pay for gas using ERC20 tokens for an express contract call with tokens on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to express execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call with tokens will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call with tokens\n * @param symbol The symbol of the token to be sent with the call\n * @param amount The amount of tokens to be sent with the call\n * @param gasToken The address of the ERC20 token used to pay for gas\n * @param gasFeeAmount The amount of tokens to pay for gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payGasForExpressCallWithToken(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Pay for gas using native currency for an express contract call on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payNativeGasForExpressCall(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Pay for gas using native currency for an express contract call with tokens on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call with tokens will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call with tokens\n * @param symbol The symbol of the token to be sent with the call\n * @param amount The amount of tokens to be sent with the call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payNativeGasForExpressCallWithToken(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Add additional gas payment using ERC20 tokens after initiating a cross-chain call.\n * @dev This function can be called on the source chain after calling the gateway to execute a remote contract.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param gasToken The ERC20 token address used to add gas\n * @param gasFeeAmount The amount of tokens to add as gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function addGas(\n bytes32 txHash,\n uint256 logIndex,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Add additional gas payment using native currency after initiating a cross-chain call.\n * @dev This function can be called on the source chain after calling the gateway to execute a remote contract.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function addNativeGas(\n bytes32 txHash,\n uint256 logIndex,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Add additional gas payment using ERC20 tokens after initiating an express cross-chain call.\n * @dev This function can be called on the source chain after calling the gateway to express execute a remote contract.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param gasToken The ERC20 token address used to add gas\n * @param gasFeeAmount The amount of tokens to add as gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function addExpressGas(\n bytes32 txHash,\n uint256 logIndex,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Add additional gas payment using native currency after initiating an express cross-chain call.\n * @dev This function can be called on the source chain after calling the gateway to express execute a remote contract.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function addNativeExpressGas(\n bytes32 txHash,\n uint256 logIndex,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Updates the gas price for a specific chain.\n * @dev This function is called by the gas oracle to update the gas prices for a specific chains.\n * @param chains Array of chain names\n * @param gasUpdates Array of gas updates\n */\n function updateGasInfo(string[] calldata chains, GasInfo[] calldata gasUpdates) external;\n\n /**\n * @notice Allows the gasCollector to collect accumulated fees from the contract.\n * @dev Use address(0) as the token address for native currency.\n * @param receiver The address to receive the collected fees\n * @param tokens Array of token addresses to be collected\n * @param amounts Array of amounts to be collected for each respective token address\n */\n function collectFees(\n address payable receiver,\n address[] calldata tokens,\n uint256[] calldata amounts\n ) external;\n\n /**\n * @notice Refunds gas payment to the receiver in relation to a specific cross-chain transaction.\n * @dev Only callable by the gasCollector.\n * @dev Use address(0) as the token address to refund native currency.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param receiver The address to receive the refund\n * @param token The token address to be refunded\n * @param amount The amount to refund\n */\n function refund(\n bytes32 txHash,\n uint256 logIndex,\n address payable receiver,\n address token,\n uint256 amount\n ) external;\n\n /**\n * @notice Returns the address of the designated gas collector.\n * @return address of the gas collector\n */\n function gasCollector() external returns (address);\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IGovernable } from './IGovernable.sol';\nimport { IImplementation } from './IImplementation.sol';\n\ninterface IAxelarGateway is IImplementation, IGovernable {\n /**********\\\n |* Errors *|\n \\**********/\n\n error NotSelf();\n error InvalidCodeHash();\n error SetupFailed();\n error InvalidAuthModule();\n error InvalidTokenDeployer();\n error InvalidAmount();\n error InvalidChainId();\n error InvalidCommands();\n error TokenDoesNotExist(string symbol);\n error TokenAlreadyExists(string symbol);\n error TokenDeployFailed(string symbol);\n error TokenContractDoesNotExist(address token);\n error BurnFailed(string symbol);\n error MintFailed(string symbol);\n error InvalidSetMintLimitsParams();\n error ExceedMintLimit(string symbol);\n\n /**********\\\n |* Events *|\n \\**********/\n\n event TokenSent(\n address indexed sender,\n string destinationChain,\n string destinationAddress,\n string symbol,\n uint256 amount\n );\n\n event ContractCall(\n address indexed sender,\n string destinationChain,\n string destinationContractAddress,\n bytes32 indexed payloadHash,\n bytes payload\n );\n\n event ContractCallWithToken(\n address indexed sender,\n string destinationChain,\n string destinationContractAddress,\n bytes32 indexed payloadHash,\n bytes payload,\n string symbol,\n uint256 amount\n );\n\n event Executed(bytes32 indexed commandId);\n\n event TokenDeployed(string symbol, address tokenAddresses);\n\n event ContractCallApproved(\n bytes32 indexed commandId,\n string sourceChain,\n string sourceAddress,\n address indexed contractAddress,\n bytes32 indexed payloadHash,\n bytes32 sourceTxHash,\n uint256 sourceEventIndex\n );\n\n event ContractCallApprovedWithMint(\n bytes32 indexed commandId,\n string sourceChain,\n string sourceAddress,\n address indexed contractAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n bytes32 sourceTxHash,\n uint256 sourceEventIndex\n );\n\n event ContractCallExecuted(bytes32 indexed commandId);\n\n event TokenMintLimitUpdated(string symbol, uint256 limit);\n\n event OperatorshipTransferred(bytes newOperatorsData);\n\n event Upgraded(address indexed implementation);\n\n /********************\\\n |* Public Functions *|\n \\********************/\n\n function sendToken(\n string calldata destinationChain,\n string calldata destinationAddress,\n string calldata symbol,\n uint256 amount\n ) external;\n\n function callContract(\n string calldata destinationChain,\n string calldata contractAddress,\n bytes calldata payload\n ) external;\n\n function callContractWithToken(\n string calldata destinationChain,\n string calldata contractAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount\n ) external;\n\n function isContractCallApproved(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n address contractAddress,\n bytes32 payloadHash\n ) external view returns (bool);\n\n function isContractCallAndMintApproved(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n address contractAddress,\n bytes32 payloadHash,\n string calldata symbol,\n uint256 amount\n ) external view returns (bool);\n\n function validateContractCall(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes32 payloadHash\n ) external returns (bool);\n\n function validateContractCallAndMint(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes32 payloadHash,\n string calldata symbol,\n uint256 amount\n ) external returns (bool);\n\n /***********\\\n |* Getters *|\n \\***********/\n\n function authModule() external view returns (address);\n\n function tokenDeployer() external view returns (address);\n\n function tokenMintLimit(string memory symbol) external view returns (uint256);\n\n function tokenMintAmount(string memory symbol) external view returns (uint256);\n\n function allTokensFrozen() external view returns (bool);\n\n function implementation() external view returns (address);\n\n function tokenAddresses(string memory symbol) external view returns (address);\n\n function tokenFrozen(string memory symbol) external view returns (bool);\n\n function isCommandExecuted(bytes32 commandId) external view returns (bool);\n\n /************************\\\n |* Governance Functions *|\n \\************************/\n\n function setTokenMintLimits(string[] calldata symbols, uint256[] calldata limits) external;\n\n function upgrade(\n address newImplementation,\n bytes32 newImplementationCodeHash,\n bytes calldata setupParams\n ) external;\n\n /**********************\\\n |* External Functions *|\n \\**********************/\n\n function execute(bytes calldata input) external;\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n// General interface for upgradable contracts\ninterface IContractIdentifier {\n /**\n * @notice Returns the contract ID. It can be used as a check during upgrades.\n * @dev Meant to be overridden in derived contracts.\n * @return bytes32 The contract ID\n */\n function contractId() external pure returns (bytes32);\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Interface of the ERC20 standard as defined in the EIP.\n */\ninterface IERC20 {\n error InvalidAccount();\n\n /**\n * @dev Returns the amount of tokens in existence.\n */\n function totalSupply() external view returns (uint256);\n\n /**\n * @dev Returns the amount of tokens owned by `account`.\n */\n function balanceOf(address account) external view returns (uint256);\n\n /**\n * @dev Moves `amount` tokens from the caller's account to `recipient`.\n *\n * Returns a boolean value indicating whether the operation succeeded.\n *\n * Emits a {Transfer} event.\n */\n function transfer(address recipient, uint256 amount) external returns (bool);\n\n /**\n * @dev Returns the remaining number of tokens that `spender` will be\n * allowed to spend on behalf of `owner` through {transferFrom}. This is\n * zero by default.\n *\n * This value changes when {approve} or {transferFrom} are called.\n */\n function allowance(address owner, address spender) external view returns (uint256);\n\n /**\n * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n *\n * Returns a boolean value indicating whether the operation succeeded.\n *\n * IMPORTANT: Beware that changing an allowance with this method brings the risk\n * that someone may use both the old and the new allowance by unfortunate\n * transaction ordering. One possible solution to mitigate this race\n * condition is to first reduce the spender's allowance to 0 and set the\n * desired value afterwards:\n * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n *\n * Emits an {Approval} event.\n */\n function approve(address spender, uint256 amount) external returns (bool);\n\n /**\n * @dev Moves `amount` tokens from `sender` to `recipient` using the\n * allowance mechanism. `amount` is then deducted from the caller's\n * allowance.\n *\n * Returns a boolean value indicating whether the operation succeeded.\n *\n * Emits a {Transfer} event.\n */\n function transferFrom(\n address sender,\n address recipient,\n uint256 amount\n ) external returns (bool);\n\n /**\n * @dev Emitted when `value` tokens are moved from one account (`from`) to\n * another (`to`).\n *\n * Note that `value` may be zero.\n */\n event Transfer(address indexed from, address indexed to, uint256 value);\n\n /**\n * @dev Emitted when the allowance of a `spender` for an `owner` is set by\n * a call to {approve}. `value` is the new allowance.\n */\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n/**\n * @title IGovernable Interface\n * @notice This is an interface used by the AxelarGateway contract to manage governance and mint limiter roles.\n */\ninterface IGovernable {\n error NotGovernance();\n error NotMintLimiter();\n error InvalidGovernance();\n error InvalidMintLimiter();\n\n event GovernanceTransferred(address indexed previousGovernance, address indexed newGovernance);\n event MintLimiterTransferred(address indexed previousGovernance, address indexed newGovernance);\n\n /**\n * @notice Returns the governance address.\n * @return address of the governance\n */\n function governance() external view returns (address);\n\n /**\n * @notice Returns the mint limiter address.\n * @return address of the mint limiter\n */\n function mintLimiter() external view returns (address);\n\n /**\n * @notice Transfer the governance role to another address.\n * @param newGovernance The new governance address\n */\n function transferGovernance(address newGovernance) external;\n\n /**\n * @notice Transfer the mint limiter role to another address.\n * @param newGovernance The new mint limiter address\n */\n function transferMintLimiter(address newGovernance) external;\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IContractIdentifier } from './IContractIdentifier.sol';\n\ninterface IImplementation is IContractIdentifier {\n error NotProxy();\n\n function setup(bytes calldata data) external;\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { GasEstimationType, GasInfo } from '../types/GasEstimationTypes.sol';\n\n/**\n * @title IInterchainGasEstimation Interface\n * @notice This is an interface for the InterchainGasEstimation contract\n * which allows for estimating gas fees for cross-chain communication on the Axelar network.\n */\ninterface IInterchainGasEstimation {\n error UnsupportedEstimationType(GasEstimationType gasEstimationType);\n\n /**\n * @notice Event emitted when the gas price for a specific chain is updated.\n * @param chain The name of the chain\n * @param info The gas info for the chain\n */\n event GasInfoUpdated(string chain, GasInfo info);\n\n /**\n * @notice Returns the gas price for a specific chain.\n * @param chain The name of the chain\n * @return gasInfo The gas info for the chain\n */\n function getGasInfo(string calldata chain) external view returns (GasInfo memory);\n\n /**\n * @notice Estimates the gas fee for a cross-chain contract call.\n * @param destinationChain Axelar registered name of the destination chain\n * @param destinationAddress Destination contract address being called\n * @param executionGasLimit The gas limit to be used for the destination contract execution,\n * e.g. pass in 200k if your app consumes needs upto 200k for this contract call\n * @param params Additional parameters for the gas estimation\n * @return gasEstimate The cross-chain gas estimate, in terms of source chain's native gas token that should be forwarded to the gas service.\n */\n function estimateGasFee(\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n uint256 executionGasLimit,\n bytes calldata params\n ) external view returns (uint256 gasEstimate);\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n/**\n * @title IOwnable Interface\n * @notice IOwnable is an interface that abstracts the implementation of a\n * contract with ownership control features. It's commonly used in upgradable\n * contracts and includes the functionality to get current owner, transfer\n * ownership, and propose and accept ownership.\n */\ninterface IOwnable {\n error NotOwner();\n error InvalidOwner();\n error InvalidOwnerAddress();\n\n event OwnershipTransferStarted(address indexed newOwner);\n event OwnershipTransferred(address indexed newOwner);\n\n /**\n * @notice Returns the current owner of the contract.\n * @return address The address of the current owner\n */\n function owner() external view returns (address);\n\n /**\n * @notice Returns the address of the pending owner of the contract.\n * @return address The address of the pending owner\n */\n function pendingOwner() external view returns (address);\n\n /**\n * @notice Transfers ownership of the contract to a new address\n * @param newOwner The address to transfer ownership to\n */\n function transferOwnership(address newOwner) external;\n\n /**\n * @notice Proposes to transfer the contract's ownership to a new address.\n * The new owner needs to accept the ownership explicitly.\n * @param newOwner The address to transfer ownership to\n */\n function proposeOwnership(address newOwner) external;\n\n /**\n * @notice Transfers ownership to the pending owner.\n * @dev Can only be called by the pending owner\n */\n function acceptOwnership() external;\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IOwnable } from './IOwnable.sol';\nimport { IImplementation } from './IImplementation.sol';\n\n// General interface for upgradable contracts\ninterface IUpgradable is IOwnable, IImplementation {\n error InvalidCodeHash();\n error InvalidImplementation();\n error SetupFailed();\n\n event Upgraded(address indexed newImplementation);\n\n function implementation() external view returns (address);\n\n function upgrade(\n address newImplementation,\n bytes32 newImplementationCodeHash,\n bytes calldata params\n ) external;\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nlibrary StringToAddress {\n error InvalidAddressString();\n\n function toAddress(string memory addressString) internal pure returns (address) {\n bytes memory stringBytes = bytes(addressString);\n uint160 addressNumber = 0;\n uint8 stringByte;\n\n if (stringBytes.length != 42 || stringBytes[0] != '0' || stringBytes[1] != 'x') revert InvalidAddressString();\n\n for (uint256 i = 2; i < 42; ++i) {\n stringByte = uint8(stringBytes[i]);\n\n if ((stringByte >= 97) && (stringByte <= 102)) stringByte -= 87;\n else if ((stringByte >= 65) && (stringByte <= 70)) stringByte -= 55;\n else if ((stringByte >= 48) && (stringByte <= 57)) stringByte -= 48;\n else revert InvalidAddressString();\n\n addressNumber |= uint160(uint256(stringByte) << ((41 - i) << 2));\n }\n\n return address(addressNumber);\n }\n}\n\nlibrary AddressToString {\n function toString(address address_) internal pure returns (string memory) {\n bytes memory addressBytes = abi.encodePacked(address_);\n bytes memory characters = '0123456789abcdef';\n bytes memory stringBytes = new bytes(42);\n\n stringBytes[0] = '0';\n stringBytes[1] = 'x';\n\n for (uint256 i; i < 20; ++i) {\n stringBytes[2 + i * 2] = characters[uint8(addressBytes[i] >> 4)];\n stringBytes[3 + i * 2] = characters[uint8(addressBytes[i] & 0x0f)];\n }\n\n return string(stringBytes);\n }\n}\n" + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol": { + "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n/**\n * @title GasEstimationType\n * @notice This enum represents the gas estimation types for different chains.\n */\nenum GasEstimationType {\n Default,\n OptimismEcotone,\n OptimismBedrock,\n Arbitrum,\n Scroll\n}\n\n/**\n * @title GasInfo\n * @notice This struct represents the gas pricing information for a specific chain.\n * @dev Smaller uint types are used for efficient struct packing to save storage costs.\n */\nstruct GasInfo {\n /// @dev Custom gas pricing rule, such as L1 data fee on L2s\n uint64 gasEstimationType;\n /// @dev Scalar value needed for specific gas estimation types, expected to be less than 1e10\n uint64 l1FeeScalar;\n /// @dev Axelar base fee for cross-chain message approval on destination, in terms of source native gas token\n uint128 axelarBaseFee;\n /// @dev Gas price of destination chain, in terms of the source chain token, i.e dest_gas_price * dest_token_market_price / src_token_market_price\n uint128 relativeGasPrice;\n /// @dev Needed for specific gas estimation types. Blob base fee of destination chain, in terms of the source chain token, i.e dest_blob_base_fee * dest_token_market_price / src_token_market_price\n uint128 relativeBlobBaseFee;\n /// @dev Axelar express fee for express execution, in terms of source chain token\n uint128 expressFee;\n}\n" + }, + "src/__tests__/contracts/AgoricProxy.sol": { + "content": "// SPDX-License-Identifier: Apache-2.0\npragma solidity ^0.8.20;\n\nimport {AxelarExecutable} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\";\nimport {IAxelarGasService} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\";\nimport {IERC20} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\";\nimport {StringToAddress, AddressToString} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\";\nimport {Ownable} from \"./Ownable.sol\";\n\nstruct CallResult {\n bool success;\n bytes result;\n}\n\nstruct AgoricResponse {\n // false if this is a smart wallet creation, true if it's a contract call\n bool isContractCallResult;\n CallResult[] data;\n}\n\nstruct CallParams {\n address target;\n bytes data;\n}\n\ncontract Wallet is AxelarExecutable, Ownable {\n IAxelarGasService public gasService;\n\n event MulticallExecuted(address indexed executor, CallResult[] results);\n event Received(address indexed sender, uint256 amount);\n\n constructor(\n address gateway_,\n address gasReceiver_,\n string memory owner_\n ) AxelarExecutable(gateway_) Ownable(owner_) {\n gasService = IAxelarGasService(gasReceiver_);\n }\n\n function _multicall(\n bytes calldata payload\n ) internal returns (CallResult[] memory) {\n CallParams[] memory calls = abi.decode(payload, (CallParams[]));\n\n CallResult[] memory results = new CallResult[](calls.length);\n\n for (uint256 i = 0; i < calls.length; i++) {\n (bool success, bytes memory result) = calls[i].target.call(\n calls[i].data\n );\n require(success, \"Contract call failed\");\n results[i] = CallResult(success, result);\n }\n\n emit MulticallExecuted(msg.sender, results);\n return results;\n }\n\n function _execute(\n string calldata /*sourceChain*/,\n string calldata sourceAddress,\n bytes calldata payload\n ) internal override onlyOwner(sourceAddress) {\n _multicall(payload);\n }\n\n function _executeWithToken(\n string calldata /*sourceChain*/,\n string calldata /*sourceAddress*/,\n bytes calldata payload,\n string calldata /*tokenSymbol*/,\n uint256 /*amount*/\n ) internal override {\n _multicall(payload);\n }\n\n receive() external payable {\n emit Received(msg.sender, msg.value);\n }\n\n fallback() external payable {\n emit Received(msg.sender, msg.value);\n }\n}\n\ncontract AgoricProxy is AxelarExecutable {\n using StringToAddress for string;\n using AddressToString for address;\n\n address _gateway;\n IAxelarGasService public immutable gasService;\n string public chainName;\n\n event SmartWalletCreated(\n address indexed wallet,\n string owner,\n string sourceChain,\n string sourceAddress\n );\n event CrossChainCallSent(\n string destinationChain,\n string destinationAddress,\n bytes payload\n );\n event Received(address indexed sender, uint256 amount);\n\n constructor(\n address gateway_,\n address gasReceiver_,\n string memory chainName_\n ) AxelarExecutable(gateway_) {\n gasService = IAxelarGasService(gasReceiver_);\n _gateway = gateway_;\n chainName = chainName_;\n }\n\n function createSmartWallet(string memory owner) public returns (address) {\n address newWallet = address(\n new Wallet(_gateway, address(gasService), owner)\n );\n return newWallet;\n }\n\n function _execute(\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata /*payload*/\n ) internal override {\n address smartWalletAddress = createSmartWallet(sourceAddress);\n emit SmartWalletCreated(\n smartWalletAddress,\n sourceAddress,\n sourceChain,\n sourceAddress\n );\n CallResult[] memory results = new CallResult[](1);\n\n results[0] = CallResult(true, abi.encode(smartWalletAddress));\n\n bytes memory msgPayload = abi.encodePacked(\n bytes4(0x00000000),\n abi.encode(AgoricResponse(false, results))\n );\n _send(sourceChain, sourceAddress, msgPayload);\n }\n\n function _send(\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes memory payload\n ) internal {\n gasService.payNativeGasForContractCall{value: 1000000000000000}(\n address(this),\n destinationChain,\n destinationAddress,\n payload,\n address(this)\n );\n\n gateway.callContract(destinationChain, destinationAddress, payload);\n emit CrossChainCallSent(destinationChain, destinationAddress, payload);\n }\n\n receive() external payable {\n emit Received(msg.sender, msg.value);\n }\n\n fallback() external payable {\n emit Received(msg.sender, msg.value);\n }\n}\n" + }, + "src/__tests__/contracts/Ownable.sol": { + "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)\n\npragma solidity ^0.8.20;\n\n/**\n * @dev Contract module which provides a basic access control mechanism, where\n * there is an account (an owner) that can be granted exclusive access to\n * specific functions.\n *\n * The initial owner is set to the address provided by the deployer. This can\n * later be changed with {transferOwnership}.\n *\n * This module is used through inheritance. It will make available the modifier\n * `onlyOwner`, which can be applied to your functions to restrict their use to\n * the owner.\n */\nabstract contract Ownable {\n string private _owner;\n\n /**\n * @dev The caller account is not authorized to perform an operation.\n */\n error OwnableUnauthorizedAccount(string account);\n\n /**\n * @dev The owner is not a valid owner account. (eg. `address(0)`)\n */\n error OwnableInvalidOwner(string owner);\n\n event OwnershipTransferred(\n string indexed previousOwner,\n string indexed newOwner\n );\n\n /**\n * @dev Initializes the contract setting the address provided by the deployer as the initial owner.\n */\n constructor(string memory initialOwner) {\n // if (initialOwner == address(0)) {\n // revert OwnableInvalidOwner(address(0));\n // }\n _transferOwnership(initialOwner);\n }\n\n /**\n * @dev Throws if called by any account other than the owner.\n */\n modifier onlyOwner(string calldata incomingAddress) {\n _checkOwner(incomingAddress);\n _;\n }\n\n /**\n * @dev Returns the address of the current owner.\n */\n function owner() public view virtual returns (string memory) {\n return _owner;\n }\n\n /**\n * @dev Throws if the sender is not the owner.\n */\n function _checkOwner(\n string calldata incomingAddress\n ) internal view virtual {\n if (keccak256(bytes(owner())) != keccak256(bytes(incomingAddress))) {\n revert OwnableUnauthorizedAccount(incomingAddress);\n }\n }\n\n /**\n * @dev Leaves the contract without owner. It will not be possible to call\n * `onlyOwner` functions. Can only be called by the current owner.\n *\n * NOTE: Renouncing ownership will leave the contract without an owner,\n * thereby disabling any functionality that is only available to the owner.\n */\n function renounceOwnership(\n string calldata currentOwner\n ) public virtual onlyOwner(currentOwner) {\n _transferOwnership(\n string(\n abi.encodePacked(\"0x0000000000000000000000000000000000000000\")\n )\n );\n }\n\n /**\n * @dev Transfers ownership of the contract to a new account (`newOwner`).\n * Can only be called by the current owner.\n */\n function transferOwnership(\n string calldata oldOwner,\n string calldata newOwner\n ) public virtual onlyOwner(oldOwner) {\n // if (newOwner == address(0)) {\n // revert OwnableInvalidOwner(address(0));\n // }\n _transferOwnership(newOwner);\n }\n\n /**\n * @dev Transfers ownership of the contract to a new account (`newOwner`).\n * Internal function without access restriction.\n */\n function _transferOwnership(string memory newOwner) internal virtual {\n string memory oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner, newOwner);\n }\n}\n" + }, + "src/__tests__/contracts/SendReceive.sol": { + "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.9;\n\nimport {AxelarExecutable} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\";\nimport {IAxelarGateway} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\";\nimport {IAxelarGasService} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\";\nimport {StringToAddress, AddressToString} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\";\n\ncontract SendReceive is AxelarExecutable {\n using StringToAddress for string;\n using AddressToString for address;\n\n IAxelarGasService public immutable gasService;\n string public chainName; // name of the chain this contract is deployed to\n\n struct Message {\n string sender;\n string message;\n }\n\n Message public storedMessage; // message received from _execute\n\n constructor(\n address gateway_,\n address gasReceiver_,\n string memory chainName_\n ) AxelarExecutable(gateway_) {\n gasService = IAxelarGasService(gasReceiver_);\n chainName = chainName_;\n }\n\n function send(\n string calldata destinationChain,\n string calldata destinationAddress,\n string calldata message\n ) external payable {\n // 1. Generate GMP payload\n bytes memory executeMsgPayload = abi.encode(\n msg.sender.toString(),\n message\n );\n bytes memory payload = _encodePayloadToCosmWasm(executeMsgPayload);\n\n // 2. Pay for gas\n gasService.payNativeGasForContractCall{value: msg.value}(\n address(this),\n destinationChain,\n destinationAddress,\n payload,\n msg.sender\n );\n\n // 3. Make GMP call\n gateway.callContract(destinationChain, destinationAddress, payload);\n }\n\n function _encodePayloadToCosmWasm(\n bytes memory executeMsgPayload\n ) internal view returns (bytes memory) {\n // Schema\n // bytes4 version number (0x00000001)\n // bytes ABI-encoded payload, indicating function name and arguments:\n // string CosmWasm contract method name\n // dynamic array of string CosmWasm contract argument name array\n // dynamic array of string argument abi type array\n // bytes abi encoded argument values\n\n // contract call arguments for ExecuteMsg::receive_message_evm{ source_chain, source_address, payload }\n bytes memory argValues = abi.encode(\n chainName,\n address(this).toString(),\n executeMsgPayload\n );\n\n string[] memory argumentNameArray = new string[](3);\n argumentNameArray[0] = \"source_chain\";\n argumentNameArray[1] = \"source_address\";\n argumentNameArray[2] = \"payload\";\n\n string[] memory abiTypeArray = new string[](3);\n abiTypeArray[0] = \"string\";\n abiTypeArray[1] = \"string\";\n abiTypeArray[2] = \"bytes\";\n\n bytes memory gmpPayload;\n gmpPayload = abi.encode(\n \"receive_message_evm\",\n argumentNameArray,\n abiTypeArray,\n argValues\n );\n\n return abi.encodePacked(bytes4(0x00000001), gmpPayload);\n }\n\n function _execute(\n string calldata /*sourceChain*/,\n string calldata /*sourceAddress*/,\n bytes calldata payload\n ) internal override {\n (string memory sender, string memory message) = abi.decode(\n payload,\n (string, string)\n );\n storedMessage = Message(sender, message);\n }\n}\n" + } + }, + "settings": { + "optimizer": { + "enabled": true, + "runs": 10000, + "details": { + "yul": true + } + }, + "evmVersion": "paris", + "outputSelection": { + "*": { + "*": [ + "abi", + "evm.bytecode", + "evm.deployedBytecode", + "evm.methodIdentifiers", + "metadata" + ], + "": [ + "ast" + ] + } + } + } + }, + "output": { + "sources": { + "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", + "exportedSymbols": { + "AxelarExecutable": [ + 137 + ], + "IAxelarExecutable": [ + 178 + ], + "IAxelarGateway": [ + 991 + ] + }, + "id": 138, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:0" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", + "file": "../interfaces/IAxelarGateway.sol", + "id": 3, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 138, + "sourceUnit": 992, + "src": "58:66:0", + "symbolAliases": [ + { + "foreign": { + "id": 2, + "name": "IAxelarGateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 991, + "src": "67:14:0", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol", + "file": "../interfaces/IAxelarExecutable.sol", + "id": 5, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 138, + "sourceUnit": 179, + "src": "125:72:0", + "symbolAliases": [ + { + "foreign": { + "id": 4, + "name": "IAxelarExecutable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 178, + "src": "134:17:0", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 6, + "name": "IAxelarExecutable", + "nameLocations": [ + "228:17:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 178, + "src": "228:17:0" + }, + "id": 7, + "nodeType": "InheritanceSpecifier", + "src": "228:17:0" + } + ], + "canonicalName": "AxelarExecutable", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 137, + "linearizedBaseContracts": [ + 137, + 178 + ], + "name": "AxelarExecutable", + "nameLocation": "208:16:0", + "nodeType": "ContractDefinition", + "nodes": [ + { + "baseFunctions": [ + 151 + ], + "constant": false, + "functionSelector": "116191b6", + "id": 10, + "mutability": "immutable", + "name": "gateway", + "nameLocation": "284:7:0", + "nodeType": "VariableDeclaration", + "scope": 137, + "src": "252:39:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + }, + "typeName": { + "id": 9, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 8, + "name": "IAxelarGateway", + "nameLocations": [ + "252:14:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 991, + "src": "252:14:0" + }, + "referencedDeclaration": 991, + "src": "252:14:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + } + }, + "visibility": "public" + }, + { + "body": { + "id": 31, + "nodeType": "Block", + "src": "328:113:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 20, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 15, + "name": "gateway_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12, + "src": "342:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 18, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "362:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 17, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "354:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 16, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "354:7:0", + "typeDescriptions": {} + } + }, + "id": 19, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "354:10:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "342:22:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 24, + "nodeType": "IfStatement", + "src": "338:51:0", + "trueBody": { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 21, + "name": "InvalidAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 143, + "src": "373:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 22, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "373:16:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 23, + "nodeType": "RevertStatement", + "src": "366:23:0" + } + }, + { + "expression": { + "id": 29, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 25, + "name": "gateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10, + "src": "400:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 27, + "name": "gateway_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12, + "src": "425:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 26, + "name": "IAxelarGateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 991, + "src": "410:14:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IAxelarGateway_$991_$", + "typeString": "type(contract IAxelarGateway)" + } + }, + "id": 28, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "410:24:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + } + }, + "src": "400:34:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + } + }, + "id": 30, + "nodeType": "ExpressionStatement", + "src": "400:34:0" + } + ] + }, + "id": 32, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 13, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12, + "mutability": "mutable", + "name": "gateway_", + "nameLocation": "318:8:0", + "nodeType": "VariableDeclaration", + "scope": 32, + "src": "310:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "310:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "309:18:0" + }, + "returnParameters": { + "id": 14, + "nodeType": "ParameterList", + "parameters": [], + "src": "328:0:0" + }, + "scope": 137, + "src": "298:143:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 162 + ], + "body": { + "id": 67, + "nodeType": "Block", + "src": "614:252:0", + "statements": [ + { + "assignments": [ + 44 + ], + "declarations": [ + { + "constant": false, + "id": 44, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "632:11:0", + "nodeType": "VariableDeclaration", + "scope": 67, + "src": "624:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 43, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "624:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 48, + "initialValue": { + "arguments": [ + { + "id": 46, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 40, + "src": "656:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 45, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "646:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 47, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "646:18:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "624:40:0" + }, + { + "condition": { + "id": 56, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "679:81:0", + "subExpression": { + "arguments": [ + { + "id": 51, + "name": "commandId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 34, + "src": "709:9:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 52, + "name": "sourceChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 36, + "src": "720:11:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 53, + "name": "sourceAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38, + "src": "733:13:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 54, + "name": "payloadHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 44, + "src": "748:11:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 49, + "name": "gateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10, + "src": "680:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + } + }, + "id": 50, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "688:20:0", + "memberName": "validateContractCall", + "nodeType": "MemberAccess", + "referencedDeclaration": 895, + "src": "680:28:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$returns$_t_bool_$", + "typeString": "function (bytes32,string memory,string memory,bytes32) external returns (bool)" + } + }, + "id": 55, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "680:80:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 60, + "nodeType": "IfStatement", + "src": "675:128:0", + "trueBody": { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 57, + "name": "NotApprovedByGateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 145, + "src": "781:20:0", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 58, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "781:22:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 59, + "nodeType": "RevertStatement", + "src": "774:29:0" + } + }, + { + "expression": { + "arguments": [ + { + "id": 62, + "name": "sourceChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 36, + "src": "823:11:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 63, + "name": "sourceAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38, + "src": "836:13:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 64, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 40, + "src": "851:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 61, + "name": "_execute", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 122, + "src": "814:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_calldata_ptr_$_t_string_calldata_ptr_$_t_bytes_calldata_ptr_$returns$__$", + "typeString": "function (string calldata,string calldata,bytes calldata)" + } + }, + "id": 65, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "814:45:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 66, + "nodeType": "ExpressionStatement", + "src": "814:45:0" + } + ] + }, + "functionSelector": "49160658", + "id": 68, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "execute", + "nameLocation": "456:7:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 41, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 34, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "481:9:0", + "nodeType": "VariableDeclaration", + "scope": 68, + "src": "473:17:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 33, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "473:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 36, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "516:11:0", + "nodeType": "VariableDeclaration", + "scope": 68, + "src": "500:27:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 35, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "500:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 38, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "553:13:0", + "nodeType": "VariableDeclaration", + "scope": 68, + "src": "537:29:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 37, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "537:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 40, + "mutability": "mutable", + "name": "payload", + "nameLocation": "591:7:0", + "nodeType": "VariableDeclaration", + "scope": 68, + "src": "576:22:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 39, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "576:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "463:141:0" + }, + "returnParameters": { + "id": 42, + "nodeType": "ParameterList", + "parameters": [], + "src": "614:0:0" + }, + "scope": 137, + "src": "447:419:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 177 + ], + "body": { + "id": 111, + "nodeType": "Block", + "src": "1109:430:0", + "statements": [ + { + "assignments": [ + 84 + ], + "declarations": [ + { + "constant": false, + "id": 84, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "1127:11:0", + "nodeType": "VariableDeclaration", + "scope": 111, + "src": "1119:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 83, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1119:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 88, + "initialValue": { + "arguments": [ + { + "id": 86, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 76, + "src": "1151:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 85, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1141:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 87, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1141:18:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1119:40:0" + }, + { + "condition": { + "id": 98, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "1187:219:0", + "subExpression": { + "arguments": [ + { + "id": 91, + "name": "commandId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 70, + "src": "1241:9:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 92, + "name": "sourceChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 72, + "src": "1268:11:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 93, + "name": "sourceAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "1297:13:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 94, + "name": "payloadHash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 84, + "src": "1328:11:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 95, + "name": "tokenSymbol", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 78, + "src": "1357:11:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 96, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "1386:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 89, + "name": "gateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10, + "src": "1188:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + } + }, + "id": 90, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1196:27:0", + "memberName": "validateContractCallAndMint", + "nodeType": "MemberAccess", + "referencedDeclaration": 912, + "src": "1188:35:0", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (bytes32,string memory,string memory,bytes32,string memory,uint256) external returns (bool)" + } + }, + "id": 97, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1188:218:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 102, + "nodeType": "IfStatement", + "src": "1170:276:0", + "trueBody": { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 99, + "name": "NotApprovedByGateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 145, + "src": "1424:20:0", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 100, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1424:22:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 101, + "nodeType": "RevertStatement", + "src": "1417:29:0" + } + }, + { + "expression": { + "arguments": [ + { + "id": 104, + "name": "sourceChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 72, + "src": "1475:11:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 105, + "name": "sourceAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "1488:13:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 106, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 76, + "src": "1503:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 107, + "name": "tokenSymbol", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 78, + "src": "1512:11:0", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 108, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "1525:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 103, + "name": "_executeWithToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 136, + "src": "1457:17:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_calldata_ptr_$_t_string_calldata_ptr_$_t_bytes_calldata_ptr_$_t_string_calldata_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string calldata,string calldata,bytes calldata,string calldata,uint256)" + } + }, + "id": 109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1457:75:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 110, + "nodeType": "ExpressionStatement", + "src": "1457:75:0" + } + ] + }, + "functionSelector": "1a98b2e0", + "id": 112, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "executeWithToken", + "nameLocation": "881:16:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 81, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 70, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "915:9:0", + "nodeType": "VariableDeclaration", + "scope": 112, + "src": "907:17:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 69, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "907:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 72, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "950:11:0", + "nodeType": "VariableDeclaration", + "scope": 112, + "src": "934:27:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 71, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "934:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 74, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "987:13:0", + "nodeType": "VariableDeclaration", + "scope": 112, + "src": "971:29:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 73, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "971:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 76, + "mutability": "mutable", + "name": "payload", + "nameLocation": "1025:7:0", + "nodeType": "VariableDeclaration", + "scope": 112, + "src": "1010:22:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 75, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1010:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 78, + "mutability": "mutable", + "name": "tokenSymbol", + "nameLocation": "1058:11:0", + "nodeType": "VariableDeclaration", + "scope": 112, + "src": "1042:27:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 77, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1042:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 80, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1087:6:0", + "nodeType": "VariableDeclaration", + "scope": 112, + "src": "1079:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 79, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1079:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "897:202:0" + }, + "returnParameters": { + "id": 82, + "nodeType": "ParameterList", + "parameters": [], + "src": "1109:0:0" + }, + "scope": 137, + "src": "872:667:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 121, + "nodeType": "Block", + "src": "1694:2:0", + "statements": [] + }, + "id": 122, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_execute", + "nameLocation": "1554:8:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 119, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 114, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "1588:11:0", + "nodeType": "VariableDeclaration", + "scope": 122, + "src": "1572:27:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 113, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1572:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 116, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "1625:13:0", + "nodeType": "VariableDeclaration", + "scope": 122, + "src": "1609:29:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 115, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1609:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 118, + "mutability": "mutable", + "name": "payload", + "nameLocation": "1663:7:0", + "nodeType": "VariableDeclaration", + "scope": 122, + "src": "1648:22:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 117, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1648:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1562:114:0" + }, + "returnParameters": { + "id": 120, + "nodeType": "ParameterList", + "parameters": [], + "src": "1694:0:0" + }, + "scope": 137, + "src": "1545:151:0", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 135, + "nodeType": "Block", + "src": "1921:2:0", + "statements": [] + }, + "id": 136, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_executeWithToken", + "nameLocation": "1711:17:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 133, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 124, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "1754:11:0", + "nodeType": "VariableDeclaration", + "scope": 136, + "src": "1738:27:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 123, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1738:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 126, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "1791:13:0", + "nodeType": "VariableDeclaration", + "scope": 136, + "src": "1775:29:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 125, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1775:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 128, + "mutability": "mutable", + "name": "payload", + "nameLocation": "1829:7:0", + "nodeType": "VariableDeclaration", + "scope": 136, + "src": "1814:22:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 127, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1814:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 130, + "mutability": "mutable", + "name": "tokenSymbol", + "nameLocation": "1862:11:0", + "nodeType": "VariableDeclaration", + "scope": 136, + "src": "1846:27:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 129, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1846:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 132, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1891:6:0", + "nodeType": "VariableDeclaration", + "scope": 136, + "src": "1883:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 131, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1883:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1728:175:0" + }, + "returnParameters": { + "id": 134, + "nodeType": "ParameterList", + "parameters": [], + "src": "1921:0:0" + }, + "scope": 137, + "src": "1702:221:0", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "scope": 138, + "src": "199:1726:0", + "usedErrors": [ + 143, + 145 + ], + "usedEvents": [] + } + ], + "src": "33:1893:0" + }, + "id": 0 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol", + "exportedSymbols": { + "IAxelarExecutable": [ + 178 + ], + "IAxelarGateway": [ + 991 + ] + }, + "id": 179, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 139, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:1" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", + "file": "./IAxelarGateway.sol", + "id": 141, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 179, + "sourceUnit": 992, + "src": "58:54:1", + "symbolAliases": [ + { + "foreign": { + "id": 140, + "name": "IAxelarGateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 991, + "src": "67:14:1", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IAxelarExecutable", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 178, + "linearizedBaseContracts": [ + 178 + ], + "name": "IAxelarExecutable", + "nameLocation": "124:17:1", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "e6c4247b", + "id": 143, + "name": "InvalidAddress", + "nameLocation": "154:14:1", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 142, + "nodeType": "ParameterList", + "parameters": [], + "src": "168:2:1" + }, + "src": "148:23:1" + }, + { + "errorSelector": "500c44b4", + "id": 145, + "name": "NotApprovedByGateway", + "nameLocation": "182:20:1", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 144, + "nodeType": "ParameterList", + "parameters": [], + "src": "202:2:1" + }, + "src": "176:29:1" + }, + { + "functionSelector": "116191b6", + "id": 151, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "gateway", + "nameLocation": "220:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 146, + "nodeType": "ParameterList", + "parameters": [], + "src": "227:2:1" + }, + "returnParameters": { + "id": 150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 149, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 151, + "src": "253:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + }, + "typeName": { + "id": 148, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 147, + "name": "IAxelarGateway", + "nameLocations": [ + "253:14:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 991, + "src": "253:14:1" + }, + "referencedDeclaration": 991, + "src": "253:14:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + } + }, + "visibility": "internal" + } + ], + "src": "252:16:1" + }, + "scope": 178, + "src": "211:58:1", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "49160658", + "id": 162, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "execute", + "nameLocation": "284:7:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 160, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 153, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "309:9:1", + "nodeType": "VariableDeclaration", + "scope": 162, + "src": "301:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 152, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "301:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 155, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "344:11:1", + "nodeType": "VariableDeclaration", + "scope": 162, + "src": "328:27:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 154, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "328:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 157, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "381:13:1", + "nodeType": "VariableDeclaration", + "scope": 162, + "src": "365:29:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 156, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "365:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 159, + "mutability": "mutable", + "name": "payload", + "nameLocation": "419:7:1", + "nodeType": "VariableDeclaration", + "scope": 162, + "src": "404:22:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 158, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "404:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "291:141:1" + }, + "returnParameters": { + "id": 161, + "nodeType": "ParameterList", + "parameters": [], + "src": "441:0:1" + }, + "scope": 178, + "src": "275:167:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1a98b2e0", + "id": 177, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "executeWithToken", + "nameLocation": "457:16:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 175, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 164, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "491:9:1", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "483:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 163, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "483:7:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 166, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "526:11:1", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "510:27:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 165, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "510:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 168, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "563:13:1", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "547:29:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 167, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "547:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 170, + "mutability": "mutable", + "name": "payload", + "nameLocation": "601:7:1", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "586:22:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 169, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "586:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 172, + "mutability": "mutable", + "name": "tokenSymbol", + "nameLocation": "634:11:1", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "618:27:1", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 171, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "618:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 174, + "mutability": "mutable", + "name": "amount", + "nameLocation": "663:6:1", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "655:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 173, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "655:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "473:202:1" + }, + "returnParameters": { + "id": 176, + "nodeType": "ParameterList", + "parameters": [], + "src": "684:0:1" + }, + "scope": 178, + "src": "448:237:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 179, + "src": "114:573:1", + "usedErrors": [ + 143, + 145 + ], + "usedEvents": [] + } + ], + "src": "33:655:1" + }, + "id": 1 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", + "exportedSymbols": { + "GasInfo": [ + 1526 + ], + "IAxelarGasService": [ + 655 + ], + "IInterchainGasEstimation": [ + 1187 + ], + "IUpgradable": [ + 1268 + ] + }, + "id": 656, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 180, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:2" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol", + "file": "../types/GasEstimationTypes.sol", + "id": 182, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 656, + "sourceUnit": 1527, + "src": "58:58:2", + "symbolAliases": [ + { + "foreign": { + "id": 181, + "name": "GasInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1526, + "src": "67:7:2", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol", + "file": "./IInterchainGasEstimation.sol", + "id": 184, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 656, + "sourceUnit": 1188, + "src": "117:74:2", + "symbolAliases": [ + { + "foreign": { + "id": 183, + "name": "IInterchainGasEstimation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1187, + "src": "126:24:2", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol", + "file": "./IUpgradable.sol", + "id": 186, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 656, + "sourceUnit": 1269, + "src": "192:48:2", + "symbolAliases": [ + { + "foreign": { + "id": 185, + "name": "IUpgradable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1268, + "src": "201:11:2", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 188, + "name": "IInterchainGasEstimation", + "nameLocations": [ + "524:24:2" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1187, + "src": "524:24:2" + }, + "id": 189, + "nodeType": "InheritanceSpecifier", + "src": "524:24:2" + }, + { + "baseName": { + "id": 190, + "name": "IUpgradable", + "nameLocations": [ + "550:11:2" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1268, + "src": "550:11:2" + }, + "id": 191, + "nodeType": "InheritanceSpecifier", + "src": "550:11:2" + } + ], + "canonicalName": "IAxelarGasService", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 187, + "nodeType": "StructuredDocumentation", + "src": "242:250:2", + "text": " @title IAxelarGasService Interface\n @notice This is an interface for the AxelarGasService contract which manages gas payments\n and refunds for cross-chain communication on the Axelar network.\n @dev This interface inherits IUpgradable" + }, + "fullyImplemented": false, + "id": 655, + "linearizedBaseContracts": [ + 655, + 1268, + 1142, + 1000, + 1233, + 1187 + ], + "name": "IAxelarGasService", + "nameLocation": "503:17:2", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "e6c4247b", + "id": 193, + "name": "InvalidAddress", + "nameLocation": "574:14:2", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 192, + "nodeType": "ParameterList", + "parameters": [], + "src": "588:2:2" + }, + "src": "568:23:2" + }, + { + "errorSelector": "77620600", + "id": 195, + "name": "NotCollector", + "nameLocation": "602:12:2", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 194, + "nodeType": "ParameterList", + "parameters": [], + "src": "614:2:2" + }, + "src": "596:21:2" + }, + { + "errorSelector": "d856fc5a", + "id": 197, + "name": "InvalidAmounts", + "nameLocation": "628:14:2", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 196, + "nodeType": "ParameterList", + "parameters": [], + "src": "642:2:2" + }, + "src": "622:23:2" + }, + { + "errorSelector": "a5f1efe3", + "id": 199, + "name": "InvalidGasUpdates", + "nameLocation": "656:17:2", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 198, + "nodeType": "ParameterList", + "parameters": [], + "src": "673:2:2" + }, + "src": "650:26:2" + }, + { + "errorSelector": "a86b6512", + "id": 201, + "name": "InvalidParams", + "nameLocation": "687:13:2", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 200, + "nodeType": "ParameterList", + "parameters": [], + "src": "700:2:2" + }, + "src": "681:22:2" + }, + { + "errorSelector": "5b1fe5fc", + "id": 207, + "name": "InsufficientGasPayment", + "nameLocation": "714:22:2", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 206, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 203, + "mutability": "mutable", + "name": "required", + "nameLocation": "745:8:2", + "nodeType": "VariableDeclaration", + "scope": 207, + "src": "737:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 202, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "737:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 205, + "mutability": "mutable", + "name": "provided", + "nameLocation": "763:8:2", + "nodeType": "VariableDeclaration", + "scope": 207, + "src": "755:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 204, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "755:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "736:36:2" + }, + "src": "708:65:2" + }, + { + "anonymous": false, + "eventSelector": "99206760f0be19dd093729bd35e5924daff5e217bcedc5223ed067b60008cf8a", + "id": 223, + "name": "GasPaidForContractCall", + "nameLocation": "785:22:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 222, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 209, + "indexed": true, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "833:13:2", + "nodeType": "VariableDeclaration", + "scope": 223, + "src": "817:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 208, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "817:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 211, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "863:16:2", + "nodeType": "VariableDeclaration", + "scope": 223, + "src": "856:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 210, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "856:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 213, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "896:18:2", + "nodeType": "VariableDeclaration", + "scope": 223, + "src": "889:25:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 212, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "889:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 215, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "940:11:2", + "nodeType": "VariableDeclaration", + "scope": 223, + "src": "924:27:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 214, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "924:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 217, + "indexed": false, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "969:8:2", + "nodeType": "VariableDeclaration", + "scope": 223, + "src": "961:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 216, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "961:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 219, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "995:12:2", + "nodeType": "VariableDeclaration", + "scope": 223, + "src": "987:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 218, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "987:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 221, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "1025:13:2", + "nodeType": "VariableDeclaration", + "scope": 223, + "src": "1017:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 220, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1017:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "807:237:2" + }, + "src": "779:266:2" + }, + { + "anonymous": false, + "eventSelector": "8875f9764f28fa82d3e7ff1b80bd5c8f665e1f42fcd8c2faebc7c400a4ba1bbd", + "id": 243, + "name": "GasPaidForContractCallWithToken", + "nameLocation": "1057:31:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 242, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 225, + "indexed": true, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "1114:13:2", + "nodeType": "VariableDeclaration", + "scope": 243, + "src": "1098:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 224, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1098:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 227, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "1144:16:2", + "nodeType": "VariableDeclaration", + "scope": 243, + "src": "1137:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 226, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1137:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 229, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "1177:18:2", + "nodeType": "VariableDeclaration", + "scope": 243, + "src": "1170:25:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 228, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1170:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 231, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "1221:11:2", + "nodeType": "VariableDeclaration", + "scope": 243, + "src": "1205:27:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 230, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1205:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 233, + "indexed": false, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "1249:6:2", + "nodeType": "VariableDeclaration", + "scope": 243, + "src": "1242:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 232, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1242:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 235, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1273:6:2", + "nodeType": "VariableDeclaration", + "scope": 243, + "src": "1265:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 234, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1265:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 237, + "indexed": false, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "1297:8:2", + "nodeType": "VariableDeclaration", + "scope": 243, + "src": "1289:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 236, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1289:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 239, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "1323:12:2", + "nodeType": "VariableDeclaration", + "scope": 243, + "src": "1315:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 238, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1315:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 241, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "1353:13:2", + "nodeType": "VariableDeclaration", + "scope": 243, + "src": "1345:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 240, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1345:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1088:284:2" + }, + "src": "1051:322:2" + }, + { + "anonymous": false, + "eventSelector": "617332c1832058df6ee45fcbdf471251474c9945a8e5d229287a21a5f67ccf0a", + "id": 257, + "name": "NativeGasPaidForContractCall", + "nameLocation": "1385:28:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 256, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 245, + "indexed": true, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "1439:13:2", + "nodeType": "VariableDeclaration", + "scope": 257, + "src": "1423:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 244, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1423:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 247, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "1469:16:2", + "nodeType": "VariableDeclaration", + "scope": 257, + "src": "1462:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 246, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1462:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 249, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "1502:18:2", + "nodeType": "VariableDeclaration", + "scope": 257, + "src": "1495:25:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 248, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1495:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 251, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "1546:11:2", + "nodeType": "VariableDeclaration", + "scope": 257, + "src": "1530:27:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 250, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1530:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 253, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "1575:12:2", + "nodeType": "VariableDeclaration", + "scope": 257, + "src": "1567:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 252, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1567:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 255, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "1605:13:2", + "nodeType": "VariableDeclaration", + "scope": 257, + "src": "1597:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 254, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1597:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1413:211:2" + }, + "src": "1379:246:2" + }, + { + "anonymous": false, + "eventSelector": "999d431b58761213cf53af96262b67a069cbd963499fd8effd1e21556217b841", + "id": 275, + "name": "NativeGasPaidForContractCallWithToken", + "nameLocation": "1637:37:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 274, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 259, + "indexed": true, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "1700:13:2", + "nodeType": "VariableDeclaration", + "scope": 275, + "src": "1684:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 258, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1684:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 261, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "1730:16:2", + "nodeType": "VariableDeclaration", + "scope": 275, + "src": "1723:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 260, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1723:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 263, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "1763:18:2", + "nodeType": "VariableDeclaration", + "scope": 275, + "src": "1756:25:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 262, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1756:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 265, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "1807:11:2", + "nodeType": "VariableDeclaration", + "scope": 275, + "src": "1791:27:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 264, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1791:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 267, + "indexed": false, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "1835:6:2", + "nodeType": "VariableDeclaration", + "scope": 275, + "src": "1828:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 266, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1828:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 269, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1859:6:2", + "nodeType": "VariableDeclaration", + "scope": 275, + "src": "1851:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 268, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1851:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 271, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "1883:12:2", + "nodeType": "VariableDeclaration", + "scope": 275, + "src": "1875:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 270, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1875:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 273, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "1913:13:2", + "nodeType": "VariableDeclaration", + "scope": 275, + "src": "1905:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 272, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1905:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1674:258:2" + }, + "src": "1631:302:2" + }, + { + "anonymous": false, + "eventSelector": "d171a7eb157e548ca493dd0a16016d125963a369ac5ae3c275ec12c96d527702", + "id": 291, + "name": "GasPaidForExpressCall", + "nameLocation": "1945:21:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 290, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 277, + "indexed": true, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "1992:13:2", + "nodeType": "VariableDeclaration", + "scope": 291, + "src": "1976:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 276, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1976:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 279, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "2022:16:2", + "nodeType": "VariableDeclaration", + "scope": 291, + "src": "2015:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 278, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2015:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 281, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "2055:18:2", + "nodeType": "VariableDeclaration", + "scope": 291, + "src": "2048:25:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 280, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2048:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 283, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "2099:11:2", + "nodeType": "VariableDeclaration", + "scope": 291, + "src": "2083:27:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 282, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2083:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 285, + "indexed": false, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "2128:8:2", + "nodeType": "VariableDeclaration", + "scope": 291, + "src": "2120:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 284, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2120:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 287, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "2154:12:2", + "nodeType": "VariableDeclaration", + "scope": 291, + "src": "2146:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 286, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2146:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 289, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "2184:13:2", + "nodeType": "VariableDeclaration", + "scope": 291, + "src": "2176:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 288, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2176:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1966:237:2" + }, + "src": "1939:265:2" + }, + { + "anonymous": false, + "eventSelector": "da4ed638a7ffe9e814722efdb9ad6058c152c19c8564ceffe52e11dda1ca3223", + "id": 311, + "name": "GasPaidForExpressCallWithToken", + "nameLocation": "2216:30:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 310, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 293, + "indexed": true, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "2272:13:2", + "nodeType": "VariableDeclaration", + "scope": 311, + "src": "2256:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 292, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2256:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 295, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "2302:16:2", + "nodeType": "VariableDeclaration", + "scope": 311, + "src": "2295:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 294, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2295:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 297, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "2335:18:2", + "nodeType": "VariableDeclaration", + "scope": 311, + "src": "2328:25:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 296, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2328:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 299, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "2379:11:2", + "nodeType": "VariableDeclaration", + "scope": 311, + "src": "2363:27:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 298, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2363:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 301, + "indexed": false, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "2407:6:2", + "nodeType": "VariableDeclaration", + "scope": 311, + "src": "2400:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 300, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2400:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 303, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "2431:6:2", + "nodeType": "VariableDeclaration", + "scope": 311, + "src": "2423:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 302, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2423:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 305, + "indexed": false, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "2455:8:2", + "nodeType": "VariableDeclaration", + "scope": 311, + "src": "2447:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 304, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2447:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 307, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "2481:12:2", + "nodeType": "VariableDeclaration", + "scope": 311, + "src": "2473:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 306, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2473:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 309, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "2511:13:2", + "nodeType": "VariableDeclaration", + "scope": 311, + "src": "2503:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 308, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2503:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2246:284:2" + }, + "src": "2210:321:2" + }, + { + "anonymous": false, + "eventSelector": "5cf48f121a0fecaa2c4a64b3eaf482c8c308d5387e161535970f3e9e4363eff6", + "id": 325, + "name": "NativeGasPaidForExpressCall", + "nameLocation": "2543:27:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 324, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 313, + "indexed": true, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "2596:13:2", + "nodeType": "VariableDeclaration", + "scope": 325, + "src": "2580:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 312, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2580:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 315, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "2626:16:2", + "nodeType": "VariableDeclaration", + "scope": 325, + "src": "2619:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 314, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2619:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 317, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "2659:18:2", + "nodeType": "VariableDeclaration", + "scope": 325, + "src": "2652:25:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 316, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2652:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 319, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "2703:11:2", + "nodeType": "VariableDeclaration", + "scope": 325, + "src": "2687:27:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 318, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2687:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 321, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "2732:12:2", + "nodeType": "VariableDeclaration", + "scope": 325, + "src": "2724:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 320, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2724:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 323, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "2762:13:2", + "nodeType": "VariableDeclaration", + "scope": 325, + "src": "2754:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 322, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2754:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2570:211:2" + }, + "src": "2537:245:2" + }, + { + "anonymous": false, + "eventSelector": "8c092067e86e85e8cfbaf187202ef580cdfd7ec37fbec89191607de73ca80005", + "id": 343, + "name": "NativeGasPaidForExpressCallWithToken", + "nameLocation": "2794:36:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 342, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 327, + "indexed": true, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "2856:13:2", + "nodeType": "VariableDeclaration", + "scope": 343, + "src": "2840:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 326, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2840:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 329, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "2886:16:2", + "nodeType": "VariableDeclaration", + "scope": 343, + "src": "2879:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 328, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2879:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 331, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "2919:18:2", + "nodeType": "VariableDeclaration", + "scope": 343, + "src": "2912:25:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 330, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2912:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 333, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "2963:11:2", + "nodeType": "VariableDeclaration", + "scope": 343, + "src": "2947:27:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 332, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2947:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 335, + "indexed": false, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "2991:6:2", + "nodeType": "VariableDeclaration", + "scope": 343, + "src": "2984:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 334, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2984:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 337, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "3015:6:2", + "nodeType": "VariableDeclaration", + "scope": 343, + "src": "3007:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 336, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 339, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "3039:12:2", + "nodeType": "VariableDeclaration", + "scope": 343, + "src": "3031:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 338, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3031:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 341, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "3069:13:2", + "nodeType": "VariableDeclaration", + "scope": 343, + "src": "3061:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 340, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3061:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2830:258:2" + }, + "src": "2788:301:2" + }, + { + "anonymous": false, + "eventSelector": "2275e75614080f9782f72563c2c1688c901c5339c7f9f436d323f9386fed700a", + "id": 355, + "name": "GasAdded", + "nameLocation": "3101:8:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 354, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 345, + "indexed": true, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "3135:6:2", + "nodeType": "VariableDeclaration", + "scope": 355, + "src": "3119:22:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 344, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3119:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 347, + "indexed": true, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "3167:8:2", + "nodeType": "VariableDeclaration", + "scope": 355, + "src": "3151:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 346, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3151:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 349, + "indexed": false, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "3193:8:2", + "nodeType": "VariableDeclaration", + "scope": 355, + "src": "3185:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 348, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3185:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 351, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "3219:12:2", + "nodeType": "VariableDeclaration", + "scope": 355, + "src": "3211:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 350, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3211:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 353, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "3249:13:2", + "nodeType": "VariableDeclaration", + "scope": 355, + "src": "3241:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 352, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3241:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3109:159:2" + }, + "src": "3095:174:2" + }, + { + "anonymous": false, + "eventSelector": "feb6b00343feee0f29a1a4345f8bf93ca1c73ee922248a4237a4e50d6447604e", + "id": 365, + "name": "NativeGasAdded", + "nameLocation": "3281:14:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 364, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 357, + "indexed": true, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "3312:6:2", + "nodeType": "VariableDeclaration", + "scope": 365, + "src": "3296:22:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 356, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3296:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 359, + "indexed": true, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "3336:8:2", + "nodeType": "VariableDeclaration", + "scope": 365, + "src": "3320:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 358, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3320:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 361, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "3354:12:2", + "nodeType": "VariableDeclaration", + "scope": 365, + "src": "3346:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 360, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3346:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 363, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "3376:13:2", + "nodeType": "VariableDeclaration", + "scope": 365, + "src": "3368:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 362, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3368:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3295:95:2" + }, + "src": "3275:116:2" + }, + { + "anonymous": false, + "eventSelector": "f0b09bf969e7958967e0968e22596f647dd6efa09f4778e0393967b881f4b09f", + "id": 377, + "name": "ExpressGasAdded", + "nameLocation": "3403:15:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 376, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 367, + "indexed": true, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "3444:6:2", + "nodeType": "VariableDeclaration", + "scope": 377, + "src": "3428:22:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 366, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3428:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 369, + "indexed": true, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "3476:8:2", + "nodeType": "VariableDeclaration", + "scope": 377, + "src": "3460:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 368, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3460:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 371, + "indexed": false, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "3502:8:2", + "nodeType": "VariableDeclaration", + "scope": 377, + "src": "3494:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 370, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3494:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 373, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "3528:12:2", + "nodeType": "VariableDeclaration", + "scope": 377, + "src": "3520:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 372, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3520:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 375, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "3558:13:2", + "nodeType": "VariableDeclaration", + "scope": 377, + "src": "3550:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 374, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3550:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3418:159:2" + }, + "src": "3397:181:2" + }, + { + "anonymous": false, + "eventSelector": "b26db521e067acd5c6e345ad92fa1ed06bc7fb2aedd68f35dc7a2e10d636fc98", + "id": 387, + "name": "NativeExpressGasAdded", + "nameLocation": "3590:21:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 386, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 379, + "indexed": true, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "3637:6:2", + "nodeType": "VariableDeclaration", + "scope": 387, + "src": "3621:22:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 378, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3621:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 381, + "indexed": true, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "3669:8:2", + "nodeType": "VariableDeclaration", + "scope": 387, + "src": "3653:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 380, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3653:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 383, + "indexed": false, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "3695:12:2", + "nodeType": "VariableDeclaration", + "scope": 387, + "src": "3687:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 382, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3687:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 385, + "indexed": false, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "3725:13:2", + "nodeType": "VariableDeclaration", + "scope": 387, + "src": "3717:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 384, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3717:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3611:133:2" + }, + "src": "3584:161:2" + }, + { + "anonymous": false, + "eventSelector": "d5df103822011013c8c940930e5180419111c65abadd6525ca7e740d56b4703f", + "id": 399, + "name": "Refunded", + "nameLocation": "3757:8:2", + "nodeType": "EventDefinition", + "parameters": { + "id": 398, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 389, + "indexed": true, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "3791:6:2", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "3775:22:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 388, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3775:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 391, + "indexed": true, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "3823:8:2", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "3807:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 390, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3807:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 393, + "indexed": false, + "mutability": "mutable", + "name": "receiver", + "nameLocation": "3857:8:2", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "3841:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + "typeName": { + "id": 392, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3841:15:2", + "stateMutability": "payable", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 395, + "indexed": false, + "mutability": "mutable", + "name": "token", + "nameLocation": "3883:5:2", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "3875:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 394, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3875:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 397, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "3906:6:2", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "3898:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 396, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3898:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3765:153:2" + }, + "src": "3751:168:2" + }, + { + "documentation": { + "id": 400, + "nodeType": "StructuredDocumentation", + "src": "3925:937:2", + "text": " @notice Pay for gas for any type of contract execution on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @dev If estimateOnChain is true, the function will estimate the gas cost and revert if the payment is insufficient.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param executionGasLimit The gas limit for the contract call\n @param estimateOnChain Flag to enable on-chain gas estimation\n @param refundAddress The address where refunds, if any, should be sent\n @param params Additional parameters for gas payment. This can be left empty for normal contract call payments." + }, + "functionSelector": "edf936f2", + "id": 419, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payGas", + "nameLocation": "4876:6:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 417, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 402, + "mutability": "mutable", + "name": "sender", + "nameLocation": "4900:6:2", + "nodeType": "VariableDeclaration", + "scope": 419, + "src": "4892:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 401, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4892:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 404, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "4932:16:2", + "nodeType": "VariableDeclaration", + "scope": 419, + "src": "4916:32:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 403, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4916:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 406, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "4974:18:2", + "nodeType": "VariableDeclaration", + "scope": 419, + "src": "4958:34:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 405, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4958:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 408, + "mutability": "mutable", + "name": "payload", + "nameLocation": "5017:7:2", + "nodeType": "VariableDeclaration", + "scope": 419, + "src": "5002:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 407, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5002:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 410, + "mutability": "mutable", + "name": "executionGasLimit", + "nameLocation": "5042:17:2", + "nodeType": "VariableDeclaration", + "scope": 419, + "src": "5034:25:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 409, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5034:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 412, + "mutability": "mutable", + "name": "estimateOnChain", + "nameLocation": "5074:15:2", + "nodeType": "VariableDeclaration", + "scope": 419, + "src": "5069:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 411, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5069:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 414, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "5107:13:2", + "nodeType": "VariableDeclaration", + "scope": 419, + "src": "5099:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 413, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5099:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 416, + "mutability": "mutable", + "name": "params", + "nameLocation": "5145:6:2", + "nodeType": "VariableDeclaration", + "scope": 419, + "src": "5130:21:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 415, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5130:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4882:275:2" + }, + "returnParameters": { + "id": 418, + "nodeType": "ParameterList", + "parameters": [], + "src": "5174:0:2" + }, + "scope": 655, + "src": "4867:308:2", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 420, + "nodeType": "StructuredDocumentation", + "src": "5181:700:2", + "text": " @notice Pay for gas using ERC20 tokens for a contract call on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param gasToken The address of the ERC20 token used to pay for gas\n @param gasFeeAmount The amount of tokens to pay for gas\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "fd09e3bd", + "id": 437, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payGasForContractCall", + "nameLocation": "5895:21:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 435, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 422, + "mutability": "mutable", + "name": "sender", + "nameLocation": "5934:6:2", + "nodeType": "VariableDeclaration", + "scope": 437, + "src": "5926:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 421, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5926:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 424, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "5966:16:2", + "nodeType": "VariableDeclaration", + "scope": 437, + "src": "5950:32:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 423, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5950:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 426, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "6008:18:2", + "nodeType": "VariableDeclaration", + "scope": 437, + "src": "5992:34:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 425, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5992:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 428, + "mutability": "mutable", + "name": "payload", + "nameLocation": "6051:7:2", + "nodeType": "VariableDeclaration", + "scope": 437, + "src": "6036:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 427, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6036:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 430, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "6076:8:2", + "nodeType": "VariableDeclaration", + "scope": 437, + "src": "6068:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 429, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6068:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 432, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "6102:12:2", + "nodeType": "VariableDeclaration", + "scope": 437, + "src": "6094:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 431, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6094:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 434, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "6132:13:2", + "nodeType": "VariableDeclaration", + "scope": 437, + "src": "6124:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 433, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6124:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5916:235:2" + }, + "returnParameters": { + "id": 436, + "nodeType": "ParameterList", + "parameters": [], + "src": "6160:0:2" + }, + "scope": 655, + "src": "5886:275:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 438, + "nodeType": "StructuredDocumentation", + "src": "6167:873:2", + "text": " @notice Pay for gas using ERC20 tokens for a contract call with tokens on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call with tokens will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call with tokens\n @param symbol The symbol of the token to be sent with the call\n @param amount The amount of tokens to be sent with the call\n @param gasToken The address of the ERC20 token used to pay for gas\n @param gasFeeAmount The amount of tokens to pay for gas\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "edb6b3a5", + "id": 459, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payGasForContractCallWithToken", + "nameLocation": "7054:30:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 457, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 440, + "mutability": "mutable", + "name": "sender", + "nameLocation": "7102:6:2", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "7094:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 439, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7094:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 442, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "7134:16:2", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "7118:32:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 441, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7118:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 444, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "7176:18:2", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "7160:34:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 443, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7160:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 446, + "mutability": "mutable", + "name": "payload", + "nameLocation": "7219:7:2", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "7204:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 445, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7204:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 448, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "7252:6:2", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "7236:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 447, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7236:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 450, + "mutability": "mutable", + "name": "amount", + "nameLocation": "7276:6:2", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "7268:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 449, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7268:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 452, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "7300:8:2", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "7292:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 451, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7292:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 454, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "7326:12:2", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "7318:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 453, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7318:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 456, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "7356:13:2", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "7348:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 455, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7348:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7084:291:2" + }, + "returnParameters": { + "id": 458, + "nodeType": "ParameterList", + "parameters": [], + "src": "7384:0:2" + }, + "scope": 655, + "src": "7045:340:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 460, + "nodeType": "StructuredDocumentation", + "src": "7391:566:2", + "text": " @notice Pay for gas using native currency for a contract call on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "0c93e3bb", + "id": 473, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payNativeGasForContractCall", + "nameLocation": "7971:27:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 471, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 462, + "mutability": "mutable", + "name": "sender", + "nameLocation": "8016:6:2", + "nodeType": "VariableDeclaration", + "scope": 473, + "src": "8008:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 461, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8008:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 464, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "8048:16:2", + "nodeType": "VariableDeclaration", + "scope": 473, + "src": "8032:32:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 463, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8032:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 466, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "8090:18:2", + "nodeType": "VariableDeclaration", + "scope": 473, + "src": "8074:34:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 465, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8074:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 468, + "mutability": "mutable", + "name": "payload", + "nameLocation": "8133:7:2", + "nodeType": "VariableDeclaration", + "scope": 473, + "src": "8118:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 467, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8118:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 470, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "8158:13:2", + "nodeType": "VariableDeclaration", + "scope": 473, + "src": "8150:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 469, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8150:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7998:179:2" + }, + "returnParameters": { + "id": 472, + "nodeType": "ParameterList", + "parameters": [], + "src": "8194:0:2" + }, + "scope": 655, + "src": "7962:233:2", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 474, + "nodeType": "StructuredDocumentation", + "src": "8201:739:2", + "text": " @notice Pay for gas using native currency for a contract call with tokens on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call with tokens will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call with tokens\n @param symbol The symbol of the token to be sent with the call\n @param amount The amount of tokens to be sent with the call\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "c62c2002", + "id": 491, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payNativeGasForContractCallWithToken", + "nameLocation": "8954:36:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 489, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 476, + "mutability": "mutable", + "name": "sender", + "nameLocation": "9008:6:2", + "nodeType": "VariableDeclaration", + "scope": 491, + "src": "9000:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 475, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9000:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 478, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "9040:16:2", + "nodeType": "VariableDeclaration", + "scope": 491, + "src": "9024:32:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 477, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9024:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 480, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "9082:18:2", + "nodeType": "VariableDeclaration", + "scope": 491, + "src": "9066:34:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 479, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9066:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 482, + "mutability": "mutable", + "name": "payload", + "nameLocation": "9125:7:2", + "nodeType": "VariableDeclaration", + "scope": 491, + "src": "9110:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 481, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "9110:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 484, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "9158:6:2", + "nodeType": "VariableDeclaration", + "scope": 491, + "src": "9142:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 483, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9142:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 486, + "mutability": "mutable", + "name": "amount", + "nameLocation": "9182:6:2", + "nodeType": "VariableDeclaration", + "scope": 491, + "src": "9174:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 485, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9174:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 488, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "9206:13:2", + "nodeType": "VariableDeclaration", + "scope": 491, + "src": "9198:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 487, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9198:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8990:235:2" + }, + "returnParameters": { + "id": 490, + "nodeType": "ParameterList", + "parameters": [], + "src": "9242:0:2" + }, + "scope": 655, + "src": "8945:298:2", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 492, + "nodeType": "StructuredDocumentation", + "src": "9249:717:2", + "text": " @notice Pay for gas using ERC20 tokens for an express contract call on a destination chain.\n @dev This function is called on the source chain before calling the gateway to express execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param gasToken The address of the ERC20 token used to pay for gas\n @param gasFeeAmount The amount of tokens to pay for gas\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "ba9ddc8d", + "id": 509, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payGasForExpressCall", + "nameLocation": "9980:20:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 507, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 494, + "mutability": "mutable", + "name": "sender", + "nameLocation": "10018:6:2", + "nodeType": "VariableDeclaration", + "scope": 509, + "src": "10010:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 493, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10010:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 496, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "10050:16:2", + "nodeType": "VariableDeclaration", + "scope": 509, + "src": "10034:32:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 495, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10034:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 498, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "10092:18:2", + "nodeType": "VariableDeclaration", + "scope": 509, + "src": "10076:34:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 497, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10076:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 500, + "mutability": "mutable", + "name": "payload", + "nameLocation": "10135:7:2", + "nodeType": "VariableDeclaration", + "scope": 509, + "src": "10120:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 499, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "10120:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 502, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "10160:8:2", + "nodeType": "VariableDeclaration", + "scope": 509, + "src": "10152:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 501, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10152:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 504, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "10186:12:2", + "nodeType": "VariableDeclaration", + "scope": 509, + "src": "10178:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 503, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10178:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 506, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "10216:13:2", + "nodeType": "VariableDeclaration", + "scope": 509, + "src": "10208:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 505, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10208:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10000:235:2" + }, + "returnParameters": { + "id": 508, + "nodeType": "ParameterList", + "parameters": [], + "src": "10244:0:2" + }, + "scope": 655, + "src": "9971:274:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 510, + "nodeType": "StructuredDocumentation", + "src": "10251:890:2", + "text": " @notice Pay for gas using ERC20 tokens for an express contract call with tokens on a destination chain.\n @dev This function is called on the source chain before calling the gateway to express execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call with tokens will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call with tokens\n @param symbol The symbol of the token to be sent with the call\n @param amount The amount of tokens to be sent with the call\n @param gasToken The address of the ERC20 token used to pay for gas\n @param gasFeeAmount The amount of tokens to pay for gas\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "17a49f7c", + "id": 531, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payGasForExpressCallWithToken", + "nameLocation": "11155:29:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 529, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 512, + "mutability": "mutable", + "name": "sender", + "nameLocation": "11202:6:2", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "11194:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 511, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11194:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 514, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "11234:16:2", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "11218:32:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 513, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11218:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 516, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "11276:18:2", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "11260:34:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 515, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11260:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 518, + "mutability": "mutable", + "name": "payload", + "nameLocation": "11319:7:2", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "11304:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 517, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11304:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 520, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "11352:6:2", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "11336:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 519, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11336:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 522, + "mutability": "mutable", + "name": "amount", + "nameLocation": "11376:6:2", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "11368:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 521, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11368:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 524, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "11400:8:2", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "11392:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 523, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11392:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 526, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "11426:12:2", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "11418:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 525, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11418:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 528, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "11456:13:2", + "nodeType": "VariableDeclaration", + "scope": 531, + "src": "11448:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 527, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11448:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "11184:291:2" + }, + "returnParameters": { + "id": 530, + "nodeType": "ParameterList", + "parameters": [], + "src": "11484:0:2" + }, + "scope": 655, + "src": "11146:339:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 532, + "nodeType": "StructuredDocumentation", + "src": "11491:575:2", + "text": " @notice Pay for gas using native currency for an express contract call on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "f61ed218", + "id": 545, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payNativeGasForExpressCall", + "nameLocation": "12080:26:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 543, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 534, + "mutability": "mutable", + "name": "sender", + "nameLocation": "12124:6:2", + "nodeType": "VariableDeclaration", + "scope": 545, + "src": "12116:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 533, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12116:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 536, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "12156:16:2", + "nodeType": "VariableDeclaration", + "scope": 545, + "src": "12140:32:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 535, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12140:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 538, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "12198:18:2", + "nodeType": "VariableDeclaration", + "scope": 545, + "src": "12182:34:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 537, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12182:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 540, + "mutability": "mutable", + "name": "payload", + "nameLocation": "12241:7:2", + "nodeType": "VariableDeclaration", + "scope": 545, + "src": "12226:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 539, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "12226:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 542, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "12266:13:2", + "nodeType": "VariableDeclaration", + "scope": 545, + "src": "12258:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 541, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12258:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "12106:179:2" + }, + "returnParameters": { + "id": 544, + "nodeType": "ParameterList", + "parameters": [], + "src": "12302:0:2" + }, + "scope": 655, + "src": "12071:232:2", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 546, + "nodeType": "StructuredDocumentation", + "src": "12309:748:2", + "text": " @notice Pay for gas using native currency for an express contract call with tokens on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call with tokens will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call with tokens\n @param symbol The symbol of the token to be sent with the call\n @param amount The amount of tokens to be sent with the call\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "2e9b7470", + "id": 563, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "payNativeGasForExpressCallWithToken", + "nameLocation": "13071:35:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 561, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 548, + "mutability": "mutable", + "name": "sender", + "nameLocation": "13124:6:2", + "nodeType": "VariableDeclaration", + "scope": 563, + "src": "13116:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 547, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13116:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 550, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "13156:16:2", + "nodeType": "VariableDeclaration", + "scope": 563, + "src": "13140:32:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 549, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13140:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 552, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "13198:18:2", + "nodeType": "VariableDeclaration", + "scope": 563, + "src": "13182:34:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 551, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13182:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 554, + "mutability": "mutable", + "name": "payload", + "nameLocation": "13241:7:2", + "nodeType": "VariableDeclaration", + "scope": 563, + "src": "13226:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 553, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13226:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 556, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "13274:6:2", + "nodeType": "VariableDeclaration", + "scope": 563, + "src": "13258:22:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 555, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13258:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 558, + "mutability": "mutable", + "name": "amount", + "nameLocation": "13298:6:2", + "nodeType": "VariableDeclaration", + "scope": 563, + "src": "13290:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 557, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13290:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 560, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "13322:13:2", + "nodeType": "VariableDeclaration", + "scope": 563, + "src": "13314:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 559, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13314:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "13106:235:2" + }, + "returnParameters": { + "id": 562, + "nodeType": "ParameterList", + "parameters": [], + "src": "13358:0:2" + }, + "scope": 655, + "src": "13062:297:2", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 564, + "nodeType": "StructuredDocumentation", + "src": "13365:556:2", + "text": " @notice Add additional gas payment using ERC20 tokens after initiating a cross-chain call.\n @dev This function can be called on the source chain after calling the gateway to execute a remote contract.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param gasToken The ERC20 token address used to add gas\n @param gasFeeAmount The amount of tokens to add as gas\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "ab1999ba", + "id": 577, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addGas", + "nameLocation": "13935:6:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 575, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 566, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "13959:6:2", + "nodeType": "VariableDeclaration", + "scope": 577, + "src": "13951:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 565, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "13951:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 568, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "13983:8:2", + "nodeType": "VariableDeclaration", + "scope": 577, + "src": "13975:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 567, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13975:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 570, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "14009:8:2", + "nodeType": "VariableDeclaration", + "scope": 577, + "src": "14001:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 569, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14001:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 572, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "14035:12:2", + "nodeType": "VariableDeclaration", + "scope": 577, + "src": "14027:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 571, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14027:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 574, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "14065:13:2", + "nodeType": "VariableDeclaration", + "scope": 577, + "src": "14057:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 573, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14057:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "13941:143:2" + }, + "returnParameters": { + "id": 576, + "nodeType": "ParameterList", + "parameters": [], + "src": "14093:0:2" + }, + "scope": 655, + "src": "13926:168:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 578, + "nodeType": "StructuredDocumentation", + "src": "14100:434:2", + "text": " @notice Add additional gas payment using native currency after initiating a cross-chain call.\n @dev This function can be called on the source chain after calling the gateway to execute a remote contract.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "cd433ada", + "id": 587, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addNativeGas", + "nameLocation": "14548:12:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 585, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 580, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "14578:6:2", + "nodeType": "VariableDeclaration", + "scope": 587, + "src": "14570:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 579, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14570:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 582, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "14602:8:2", + "nodeType": "VariableDeclaration", + "scope": 587, + "src": "14594:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 581, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14594:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 584, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "14628:13:2", + "nodeType": "VariableDeclaration", + "scope": 587, + "src": "14620:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 583, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14620:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "14560:87:2" + }, + "returnParameters": { + "id": 586, + "nodeType": "ParameterList", + "parameters": [], + "src": "14664:0:2" + }, + "scope": 655, + "src": "14539:126:2", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 588, + "nodeType": "StructuredDocumentation", + "src": "14671:573:2", + "text": " @notice Add additional gas payment using ERC20 tokens after initiating an express cross-chain call.\n @dev This function can be called on the source chain after calling the gateway to express execute a remote contract.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param gasToken The ERC20 token address used to add gas\n @param gasFeeAmount The amount of tokens to add as gas\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "2edd2aa8", + "id": 601, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addExpressGas", + "nameLocation": "15258:13:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 599, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 590, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "15289:6:2", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "15281:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 589, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "15281:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 592, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "15313:8:2", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "15305:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 591, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15305:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 594, + "mutability": "mutable", + "name": "gasToken", + "nameLocation": "15339:8:2", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "15331:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 593, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15331:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 596, + "mutability": "mutable", + "name": "gasFeeAmount", + "nameLocation": "15365:12:2", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "15357:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 595, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15357:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 598, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "15395:13:2", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "15387:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 597, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15387:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "15271:143:2" + }, + "returnParameters": { + "id": 600, + "nodeType": "ParameterList", + "parameters": [], + "src": "15423:0:2" + }, + "scope": 655, + "src": "15249:175:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 602, + "nodeType": "StructuredDocumentation", + "src": "15430:451:2", + "text": " @notice Add additional gas payment using native currency after initiating an express cross-chain call.\n @dev This function can be called on the source chain after calling the gateway to express execute a remote contract.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param refundAddress The address where refunds, if any, should be sent" + }, + "functionSelector": "4d238489", + "id": 611, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addNativeExpressGas", + "nameLocation": "15895:19:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 609, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 604, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "15932:6:2", + "nodeType": "VariableDeclaration", + "scope": 611, + "src": "15924:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 603, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "15924:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 606, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "15956:8:2", + "nodeType": "VariableDeclaration", + "scope": 611, + "src": "15948:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 605, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15948:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 608, + "mutability": "mutable", + "name": "refundAddress", + "nameLocation": "15982:13:2", + "nodeType": "VariableDeclaration", + "scope": 611, + "src": "15974:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 607, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15974:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "15914:87:2" + }, + "returnParameters": { + "id": 610, + "nodeType": "ParameterList", + "parameters": [], + "src": "16018:0:2" + }, + "scope": 655, + "src": "15886:133:2", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 612, + "nodeType": "StructuredDocumentation", + "src": "16025:260:2", + "text": " @notice Updates the gas price for a specific chain.\n @dev This function is called by the gas oracle to update the gas prices for a specific chains.\n @param chains Array of chain names\n @param gasUpdates Array of gas updates" + }, + "functionSelector": "d3b81f0c", + "id": 622, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "updateGasInfo", + "nameLocation": "16299:13:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 620, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 615, + "mutability": "mutable", + "name": "chains", + "nameLocation": "16331:6:2", + "nodeType": "VariableDeclaration", + "scope": 622, + "src": "16313:24:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 613, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "16313:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 614, + "nodeType": "ArrayTypeName", + "src": "16313:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 619, + "mutability": "mutable", + "name": "gasUpdates", + "nameLocation": "16358:10:2", + "nodeType": "VariableDeclaration", + "scope": 622, + "src": "16339:29:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_GasInfo_$1526_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct GasInfo[]" + }, + "typeName": { + "baseType": { + "id": 617, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 616, + "name": "GasInfo", + "nameLocations": [ + "16339:7:2" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1526, + "src": "16339:7:2" + }, + "referencedDeclaration": 1526, + "src": "16339:7:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_GasInfo_$1526_storage_ptr", + "typeString": "struct GasInfo" + } + }, + "id": 618, + "nodeType": "ArrayTypeName", + "src": "16339:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_GasInfo_$1526_storage_$dyn_storage_ptr", + "typeString": "struct GasInfo[]" + } + }, + "visibility": "internal" + } + ], + "src": "16312:57:2" + }, + "returnParameters": { + "id": 621, + "nodeType": "ParameterList", + "parameters": [], + "src": "16378:0:2" + }, + "scope": 655, + "src": "16290:89:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 623, + "nodeType": "StructuredDocumentation", + "src": "16385:382:2", + "text": " @notice Allows the gasCollector to collect accumulated fees from the contract.\n @dev Use address(0) as the token address for native currency.\n @param receiver The address to receive the collected fees\n @param tokens Array of token addresses to be collected\n @param amounts Array of amounts to be collected for each respective token address" + }, + "functionSelector": "1055eaaf", + "id": 634, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "collectFees", + "nameLocation": "16781:11:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 632, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 625, + "mutability": "mutable", + "name": "receiver", + "nameLocation": "16818:8:2", + "nodeType": "VariableDeclaration", + "scope": 634, + "src": "16802:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + "typeName": { + "id": 624, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16802:15:2", + "stateMutability": "payable", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 628, + "mutability": "mutable", + "name": "tokens", + "nameLocation": "16855:6:2", + "nodeType": "VariableDeclaration", + "scope": 634, + "src": "16836:25:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 626, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16836:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 627, + "nodeType": "ArrayTypeName", + "src": "16836:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 631, + "mutability": "mutable", + "name": "amounts", + "nameLocation": "16890:7:2", + "nodeType": "VariableDeclaration", + "scope": 634, + "src": "16871:26:2", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 629, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16871:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 630, + "nodeType": "ArrayTypeName", + "src": "16871:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "16792:111:2" + }, + "returnParameters": { + "id": 633, + "nodeType": "ParameterList", + "parameters": [], + "src": "16912:0:2" + }, + "scope": 655, + "src": "16772:141:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 635, + "nodeType": "StructuredDocumentation", + "src": "16919:515:2", + "text": " @notice Refunds gas payment to the receiver in relation to a specific cross-chain transaction.\n @dev Only callable by the gasCollector.\n @dev Use address(0) as the token address to refund native currency.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param receiver The address to receive the refund\n @param token The token address to be refunded\n @param amount The amount to refund" + }, + "functionSelector": "36504721", + "id": 648, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "refund", + "nameLocation": "17448:6:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 646, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 637, + "mutability": "mutable", + "name": "txHash", + "nameLocation": "17472:6:2", + "nodeType": "VariableDeclaration", + "scope": 648, + "src": "17464:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 636, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17464:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 639, + "mutability": "mutable", + "name": "logIndex", + "nameLocation": "17496:8:2", + "nodeType": "VariableDeclaration", + "scope": 648, + "src": "17488:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 638, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17488:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 641, + "mutability": "mutable", + "name": "receiver", + "nameLocation": "17530:8:2", + "nodeType": "VariableDeclaration", + "scope": 648, + "src": "17514:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + "typeName": { + "id": 640, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17514:15:2", + "stateMutability": "payable", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 643, + "mutability": "mutable", + "name": "token", + "nameLocation": "17556:5:2", + "nodeType": "VariableDeclaration", + "scope": 648, + "src": "17548:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 642, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17548:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 645, + "mutability": "mutable", + "name": "amount", + "nameLocation": "17579:6:2", + "nodeType": "VariableDeclaration", + "scope": 648, + "src": "17571:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 644, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17571:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "17454:137:2" + }, + "returnParameters": { + "id": 647, + "nodeType": "ParameterList", + "parameters": [], + "src": "17600:0:2" + }, + "scope": 655, + "src": "17439:162:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 649, + "nodeType": "StructuredDocumentation", + "src": "17607:123:2", + "text": " @notice Returns the address of the designated gas collector.\n @return address of the gas collector" + }, + "functionSelector": "892b5007", + "id": 654, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "gasCollector", + "nameLocation": "17744:12:2", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 650, + "nodeType": "ParameterList", + "parameters": [], + "src": "17756:2:2" + }, + "returnParameters": { + "id": 653, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 652, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 654, + "src": "17777:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 651, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17777:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "17776:9:2" + }, + "scope": 655, + "src": "17735:51:2", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 656, + "src": "493:17295:2", + "usedErrors": [ + 193, + 195, + 197, + 199, + 201, + 207, + 1136, + 1153, + 1192, + 1194, + 1196, + 1245, + 1247, + 1249 + ], + "usedEvents": [ + 223, + 243, + 257, + 275, + 291, + 311, + 325, + 343, + 355, + 365, + 377, + 387, + 399, + 1161, + 1200, + 1204, + 1253 + ] + } + ], + "src": "33:17756:2" + }, + "id": 2 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", + "exportedSymbols": { + "IAxelarGateway": [ + 991 + ], + "IGovernable": [ + 1128 + ], + "IImplementation": [ + 1142 + ] + }, + "id": 992, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 657, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:3" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol", + "file": "./IGovernable.sol", + "id": 659, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 992, + "sourceUnit": 1129, + "src": "58:48:3", + "symbolAliases": [ + { + "foreign": { + "id": 658, + "name": "IGovernable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1128, + "src": "67:11:3", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol", + "file": "./IImplementation.sol", + "id": 661, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 992, + "sourceUnit": 1143, + "src": "107:56:3", + "symbolAliases": [ + { + "foreign": { + "id": 660, + "name": "IImplementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1142, + "src": "116:15:3", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 662, + "name": "IImplementation", + "nameLocations": [ + "193:15:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1142, + "src": "193:15:3" + }, + "id": 663, + "nodeType": "InheritanceSpecifier", + "src": "193:15:3" + }, + { + "baseName": { + "id": 664, + "name": "IGovernable", + "nameLocations": [ + "210:11:3" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1128, + "src": "210:11:3" + }, + "id": 665, + "nodeType": "InheritanceSpecifier", + "src": "210:11:3" + } + ], + "canonicalName": "IAxelarGateway", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 991, + "linearizedBaseContracts": [ + 991, + 1128, + 1142, + 1000 + ], + "name": "IAxelarGateway", + "nameLocation": "175:14:3", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "29c3b7ee", + "id": 667, + "name": "NotSelf", + "nameLocation": "286:7:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 666, + "nodeType": "ParameterList", + "parameters": [], + "src": "293:2:3" + }, + "src": "280:16:3" + }, + { + "errorSelector": "8f84fb24", + "id": 669, + "name": "InvalidCodeHash", + "nameLocation": "307:15:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 668, + "nodeType": "ParameterList", + "parameters": [], + "src": "322:2:3" + }, + "src": "301:24:3" + }, + { + "errorSelector": "97905dfb", + "id": 671, + "name": "SetupFailed", + "nameLocation": "336:11:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 670, + "nodeType": "ParameterList", + "parameters": [], + "src": "347:2:3" + }, + "src": "330:20:3" + }, + { + "errorSelector": "735326ab", + "id": 673, + "name": "InvalidAuthModule", + "nameLocation": "361:17:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 672, + "nodeType": "ParameterList", + "parameters": [], + "src": "378:2:3" + }, + "src": "355:26:3" + }, + { + "errorSelector": "6426d5f8", + "id": 675, + "name": "InvalidTokenDeployer", + "nameLocation": "392:20:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 674, + "nodeType": "ParameterList", + "parameters": [], + "src": "412:2:3" + }, + "src": "386:29:3" + }, + { + "errorSelector": "2c5211c6", + "id": 677, + "name": "InvalidAmount", + "nameLocation": "426:13:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 676, + "nodeType": "ParameterList", + "parameters": [], + "src": "439:2:3" + }, + "src": "420:22:3" + }, + { + "errorSelector": "7a47c9a2", + "id": 679, + "name": "InvalidChainId", + "nameLocation": "453:14:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 678, + "nodeType": "ParameterList", + "parameters": [], + "src": "467:2:3" + }, + "src": "447:23:3" + }, + { + "errorSelector": "ca9a28f5", + "id": 681, + "name": "InvalidCommands", + "nameLocation": "481:15:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 680, + "nodeType": "ParameterList", + "parameters": [], + "src": "496:2:3" + }, + "src": "475:24:3" + }, + { + "errorSelector": "72ba137e", + "id": 685, + "name": "TokenDoesNotExist", + "nameLocation": "510:17:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 684, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 683, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "535:6:3", + "nodeType": "VariableDeclaration", + "scope": 685, + "src": "528:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 682, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "528:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "527:15:3" + }, + "src": "504:39:3" + }, + { + "errorSelector": "aa7e8b32", + "id": 689, + "name": "TokenAlreadyExists", + "nameLocation": "554:18:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 688, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 687, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "580:6:3", + "nodeType": "VariableDeclaration", + "scope": 689, + "src": "573:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 686, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "573:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "572:15:3" + }, + "src": "548:40:3" + }, + { + "errorSelector": "86d52743", + "id": 693, + "name": "TokenDeployFailed", + "nameLocation": "599:17:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 692, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 691, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "624:6:3", + "nodeType": "VariableDeclaration", + "scope": 693, + "src": "617:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 690, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "617:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "616:15:3" + }, + "src": "593:39:3" + }, + { + "errorSelector": "c5ccddde", + "id": 697, + "name": "TokenContractDoesNotExist", + "nameLocation": "643:25:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 696, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 695, + "mutability": "mutable", + "name": "token", + "nameLocation": "677:5:3", + "nodeType": "VariableDeclaration", + "scope": 697, + "src": "669:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 694, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "669:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "668:15:3" + }, + "src": "637:47:3" + }, + { + "errorSelector": "e217b0ad", + "id": 701, + "name": "BurnFailed", + "nameLocation": "695:10:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 700, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 699, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "713:6:3", + "nodeType": "VariableDeclaration", + "scope": 701, + "src": "706:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 698, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "706:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "705:15:3" + }, + "src": "689:32:3" + }, + { + "errorSelector": "90c52ed7", + "id": 705, + "name": "MintFailed", + "nameLocation": "732:10:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 704, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 703, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "750:6:3", + "nodeType": "VariableDeclaration", + "scope": 705, + "src": "743:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 702, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "743:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "742:15:3" + }, + "src": "726:32:3" + }, + { + "errorSelector": "14a2275f", + "id": 707, + "name": "InvalidSetMintLimitsParams", + "nameLocation": "769:26:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 706, + "nodeType": "ParameterList", + "parameters": [], + "src": "795:2:3" + }, + "src": "763:35:3" + }, + { + "errorSelector": "037f60e5", + "id": 711, + "name": "ExceedMintLimit", + "nameLocation": "809:15:3", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 710, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 709, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "832:6:3", + "nodeType": "VariableDeclaration", + "scope": 711, + "src": "825:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 708, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "825:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "824:15:3" + }, + "src": "803:37:3" + }, + { + "anonymous": false, + "eventSelector": "651d93f66c4329630e8d0f62488eff599e3be484da587335e8dc0fcf46062726", + "id": 723, + "name": "TokenSent", + "nameLocation": "904:9:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 722, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 713, + "indexed": true, + "mutability": "mutable", + "name": "sender", + "nameLocation": "939:6:3", + "nodeType": "VariableDeclaration", + "scope": 723, + "src": "923:22:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 712, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "923:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 715, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "962:16:3", + "nodeType": "VariableDeclaration", + "scope": 723, + "src": "955:23:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 714, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "955:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 717, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "995:18:3", + "nodeType": "VariableDeclaration", + "scope": 723, + "src": "988:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 716, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "988:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 719, + "indexed": false, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "1030:6:3", + "nodeType": "VariableDeclaration", + "scope": 723, + "src": "1023:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 718, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1023:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 721, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1054:6:3", + "nodeType": "VariableDeclaration", + "scope": 723, + "src": "1046:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 720, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1046:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "913:153:3" + }, + "src": "898:169:3" + }, + { + "anonymous": false, + "eventSelector": "30ae6cc78c27e651745bf2ad08a11de83910ac1e347a52f7ac898c0fbef94dae", + "id": 735, + "name": "ContractCall", + "nameLocation": "1079:12:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 734, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 725, + "indexed": true, + "mutability": "mutable", + "name": "sender", + "nameLocation": "1117:6:3", + "nodeType": "VariableDeclaration", + "scope": 735, + "src": "1101:22:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 724, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1101:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 727, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "1140:16:3", + "nodeType": "VariableDeclaration", + "scope": 735, + "src": "1133:23:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 726, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1133:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 729, + "indexed": false, + "mutability": "mutable", + "name": "destinationContractAddress", + "nameLocation": "1173:26:3", + "nodeType": "VariableDeclaration", + "scope": 735, + "src": "1166:33:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 728, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1166:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 731, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "1225:11:3", + "nodeType": "VariableDeclaration", + "scope": 735, + "src": "1209:27:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 730, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1209:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 733, + "indexed": false, + "mutability": "mutable", + "name": "payload", + "nameLocation": "1252:7:3", + "nodeType": "VariableDeclaration", + "scope": 735, + "src": "1246:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 732, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1246:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1091:174:3" + }, + "src": "1073:193:3" + }, + { + "anonymous": false, + "eventSelector": "7e50569d26be643bda7757722291ec66b1be66d8283474ae3fab5a98f878a7a2", + "id": 751, + "name": "ContractCallWithToken", + "nameLocation": "1278:21:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 750, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 737, + "indexed": true, + "mutability": "mutable", + "name": "sender", + "nameLocation": "1325:6:3", + "nodeType": "VariableDeclaration", + "scope": 751, + "src": "1309:22:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 736, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1309:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 739, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "1348:16:3", + "nodeType": "VariableDeclaration", + "scope": 751, + "src": "1341:23:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 738, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1341:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 741, + "indexed": false, + "mutability": "mutable", + "name": "destinationContractAddress", + "nameLocation": "1381:26:3", + "nodeType": "VariableDeclaration", + "scope": 751, + "src": "1374:33:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 740, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1374:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 743, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "1433:11:3", + "nodeType": "VariableDeclaration", + "scope": 751, + "src": "1417:27:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 742, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1417:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 745, + "indexed": false, + "mutability": "mutable", + "name": "payload", + "nameLocation": "1460:7:3", + "nodeType": "VariableDeclaration", + "scope": 751, + "src": "1454:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 744, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1454:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 747, + "indexed": false, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "1484:6:3", + "nodeType": "VariableDeclaration", + "scope": 751, + "src": "1477:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 746, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1477:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 749, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1508:6:3", + "nodeType": "VariableDeclaration", + "scope": 751, + "src": "1500:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 748, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1500:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1299:221:3" + }, + "src": "1272:249:3" + }, + { + "anonymous": false, + "eventSelector": "a74c8847d513feba22a0f0cb38d53081abf97562cdb293926ba243689e7c41ca", + "id": 755, + "name": "Executed", + "nameLocation": "1533:8:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 754, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 753, + "indexed": true, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "1558:9:3", + "nodeType": "VariableDeclaration", + "scope": 755, + "src": "1542:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 752, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1542:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1541:27:3" + }, + "src": "1527:42:3" + }, + { + "anonymous": false, + "eventSelector": "bf90b5a1ec9763e8bf4b9245cef0c28db92bab309fc2c5177f17814f38246938", + "id": 761, + "name": "TokenDeployed", + "nameLocation": "1581:13:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 760, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 757, + "indexed": false, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "1602:6:3", + "nodeType": "VariableDeclaration", + "scope": 761, + "src": "1595:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 756, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1595:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 759, + "indexed": false, + "mutability": "mutable", + "name": "tokenAddresses", + "nameLocation": "1618:14:3", + "nodeType": "VariableDeclaration", + "scope": 761, + "src": "1610:22:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 758, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1610:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1594:39:3" + }, + "src": "1575:59:3" + }, + { + "anonymous": false, + "eventSelector": "44e4f8f6bd682c5a3aeba93601ab07cb4d1f21b2aab1ae4880d9577919309aa4", + "id": 777, + "name": "ContractCallApproved", + "nameLocation": "1646:20:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 776, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 763, + "indexed": true, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "1692:9:3", + "nodeType": "VariableDeclaration", + "scope": 777, + "src": "1676:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 762, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1676:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 765, + "indexed": false, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "1718:11:3", + "nodeType": "VariableDeclaration", + "scope": 777, + "src": "1711:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 764, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1711:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 767, + "indexed": false, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "1746:13:3", + "nodeType": "VariableDeclaration", + "scope": 777, + "src": "1739:20:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 766, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1739:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 769, + "indexed": true, + "mutability": "mutable", + "name": "contractAddress", + "nameLocation": "1785:15:3", + "nodeType": "VariableDeclaration", + "scope": 777, + "src": "1769:31:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 768, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1769:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 771, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "1826:11:3", + "nodeType": "VariableDeclaration", + "scope": 777, + "src": "1810:27:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 770, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1810:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 773, + "indexed": false, + "mutability": "mutable", + "name": "sourceTxHash", + "nameLocation": "1855:12:3", + "nodeType": "VariableDeclaration", + "scope": 777, + "src": "1847:20:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 772, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1847:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 775, + "indexed": false, + "mutability": "mutable", + "name": "sourceEventIndex", + "nameLocation": "1885:16:3", + "nodeType": "VariableDeclaration", + "scope": 777, + "src": "1877:24:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 774, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1877:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1666:241:3" + }, + "src": "1640:268:3" + }, + { + "anonymous": false, + "eventSelector": "9991faa1f435675159ffae64b66d7ecfdb55c29755869a18db8497b4392347e0", + "id": 797, + "name": "ContractCallApprovedWithMint", + "nameLocation": "1920:28:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 796, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 779, + "indexed": true, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "1974:9:3", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "1958:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 778, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1958:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 781, + "indexed": false, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "2000:11:3", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "1993:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 780, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1993:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 783, + "indexed": false, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "2028:13:3", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "2021:20:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 782, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2021:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 785, + "indexed": true, + "mutability": "mutable", + "name": "contractAddress", + "nameLocation": "2067:15:3", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "2051:31:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 784, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2051:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 787, + "indexed": true, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "2108:11:3", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "2092:27:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 786, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2092:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 789, + "indexed": false, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "2136:6:3", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "2129:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 788, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2129:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 791, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "2160:6:3", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "2152:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 790, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2152:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 793, + "indexed": false, + "mutability": "mutable", + "name": "sourceTxHash", + "nameLocation": "2184:12:3", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "2176:20:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 792, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2176:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 795, + "indexed": false, + "mutability": "mutable", + "name": "sourceEventIndex", + "nameLocation": "2214:16:3", + "nodeType": "VariableDeclaration", + "scope": 797, + "src": "2206:24:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 794, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2206:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1948:288:3" + }, + "src": "1914:323:3" + }, + { + "anonymous": false, + "eventSelector": "91057b069763121972ce22b18b2f319b1520dd4c72f1f94a6395e81ceaf63f41", + "id": 801, + "name": "ContractCallExecuted", + "nameLocation": "2249:20:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 800, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 799, + "indexed": true, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "2286:9:3", + "nodeType": "VariableDeclaration", + "scope": 801, + "src": "2270:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 798, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2270:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "2269:27:3" + }, + "src": "2243:54:3" + }, + { + "anonymous": false, + "eventSelector": "d99446c1d76385bb5519ccfb5274abcfd5896dfc22405e40010fde217f018a18", + "id": 807, + "name": "TokenMintLimitUpdated", + "nameLocation": "2309:21:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 806, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 803, + "indexed": false, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "2338:6:3", + "nodeType": "VariableDeclaration", + "scope": 807, + "src": "2331:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 802, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2331:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 805, + "indexed": false, + "mutability": "mutable", + "name": "limit", + "nameLocation": "2354:5:3", + "nodeType": "VariableDeclaration", + "scope": 807, + "src": "2346:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 804, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2346:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2330:30:3" + }, + "src": "2303:58:3" + }, + { + "anonymous": false, + "eventSelector": "192e759e55f359cd9832b5c0c6e38e4b6df5c5ca33f3bd5c90738e865a521872", + "id": 811, + "name": "OperatorshipTransferred", + "nameLocation": "2373:23:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 810, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 809, + "indexed": false, + "mutability": "mutable", + "name": "newOperatorsData", + "nameLocation": "2403:16:3", + "nodeType": "VariableDeclaration", + "scope": 811, + "src": "2397:22:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 808, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2397:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2396:24:3" + }, + "src": "2367:54:3" + }, + { + "anonymous": false, + "eventSelector": "bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", + "id": 815, + "name": "Upgraded", + "nameLocation": "2433:8:3", + "nodeType": "EventDefinition", + "parameters": { + "id": 814, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 813, + "indexed": true, + "mutability": "mutable", + "name": "implementation", + "nameLocation": "2458:14:3", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "2442:30:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 812, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2442:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2441:32:3" + }, + "src": "2427:47:3" + }, + { + "functionSelector": "26ef699d", + "id": 826, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "sendToken", + "nameLocation": "2571:9:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 824, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 817, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "2606:16:3", + "nodeType": "VariableDeclaration", + "scope": 826, + "src": "2590:32:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 816, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2590:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 819, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "2648:18:3", + "nodeType": "VariableDeclaration", + "scope": 826, + "src": "2632:34:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 818, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2632:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 821, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "2692:6:3", + "nodeType": "VariableDeclaration", + "scope": 826, + "src": "2676:22:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 820, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2676:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 823, + "mutability": "mutable", + "name": "amount", + "nameLocation": "2716:6:3", + "nodeType": "VariableDeclaration", + "scope": 826, + "src": "2708:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 822, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2708:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2580:148:3" + }, + "returnParameters": { + "id": 825, + "nodeType": "ParameterList", + "parameters": [], + "src": "2737:0:3" + }, + "scope": 991, + "src": "2562:176:3", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1c92115f", + "id": 835, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "callContract", + "nameLocation": "2753:12:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 833, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 828, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "2791:16:3", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "2775:32:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 827, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2775:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 830, + "mutability": "mutable", + "name": "contractAddress", + "nameLocation": "2833:15:3", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "2817:31:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 829, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2817:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 832, + "mutability": "mutable", + "name": "payload", + "nameLocation": "2873:7:3", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "2858:22:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 831, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2858:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2765:121:3" + }, + "returnParameters": { + "id": 834, + "nodeType": "ParameterList", + "parameters": [], + "src": "2895:0:3" + }, + "scope": 991, + "src": "2744:152:3", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "b5417084", + "id": 848, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "callContractWithToken", + "nameLocation": "2911:21:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 837, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "2958:16:3", + "nodeType": "VariableDeclaration", + "scope": 848, + "src": "2942:32:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 836, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2942:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 839, + "mutability": "mutable", + "name": "contractAddress", + "nameLocation": "3000:15:3", + "nodeType": "VariableDeclaration", + "scope": 848, + "src": "2984:31:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 838, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2984:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 841, + "mutability": "mutable", + "name": "payload", + "nameLocation": "3040:7:3", + "nodeType": "VariableDeclaration", + "scope": 848, + "src": "3025:22:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 840, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3025:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 843, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "3073:6:3", + "nodeType": "VariableDeclaration", + "scope": 848, + "src": "3057:22:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 842, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3057:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 845, + "mutability": "mutable", + "name": "amount", + "nameLocation": "3097:6:3", + "nodeType": "VariableDeclaration", + "scope": 848, + "src": "3089:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 844, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3089:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2932:177:3" + }, + "returnParameters": { + "id": 847, + "nodeType": "ParameterList", + "parameters": [], + "src": "3118:0:3" + }, + "scope": 991, + "src": "2902:217:3", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "f6a5f9f5", + "id": 863, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isContractCallApproved", + "nameLocation": "3134:22:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 859, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 850, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "3174:9:3", + "nodeType": "VariableDeclaration", + "scope": 863, + "src": "3166:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 849, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3166:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 852, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "3209:11:3", + "nodeType": "VariableDeclaration", + "scope": 863, + "src": "3193:27:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 851, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3193:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 854, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "3246:13:3", + "nodeType": "VariableDeclaration", + "scope": 863, + "src": "3230:29:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 853, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3230:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 856, + "mutability": "mutable", + "name": "contractAddress", + "nameLocation": "3277:15:3", + "nodeType": "VariableDeclaration", + "scope": 863, + "src": "3269:23:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 855, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3269:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 858, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "3310:11:3", + "nodeType": "VariableDeclaration", + "scope": 863, + "src": "3302:19:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 857, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3302:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "3156:171:3" + }, + "returnParameters": { + "id": 862, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 861, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 863, + "src": "3351:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 860, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3351:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3350:6:3" + }, + "scope": 991, + "src": "3125:232:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "bc00c216", + "id": 882, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isContractCallAndMintApproved", + "nameLocation": "3372:29:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 878, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 865, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "3419:9:3", + "nodeType": "VariableDeclaration", + "scope": 882, + "src": "3411:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 864, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3411:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 867, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "3454:11:3", + "nodeType": "VariableDeclaration", + "scope": 882, + "src": "3438:27:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 866, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3438:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 869, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "3491:13:3", + "nodeType": "VariableDeclaration", + "scope": 882, + "src": "3475:29:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 868, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3475:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 871, + "mutability": "mutable", + "name": "contractAddress", + "nameLocation": "3522:15:3", + "nodeType": "VariableDeclaration", + "scope": 882, + "src": "3514:23:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 870, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3514:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 873, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "3555:11:3", + "nodeType": "VariableDeclaration", + "scope": 882, + "src": "3547:19:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 872, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3547:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 875, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "3592:6:3", + "nodeType": "VariableDeclaration", + "scope": 882, + "src": "3576:22:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 874, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3576:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 877, + "mutability": "mutable", + "name": "amount", + "nameLocation": "3616:6:3", + "nodeType": "VariableDeclaration", + "scope": 882, + "src": "3608:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 876, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3608:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3401:227:3" + }, + "returnParameters": { + "id": 881, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 880, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 882, + "src": "3652:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 879, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3652:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3651:6:3" + }, + "scope": 991, + "src": "3363:295:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "5f6970c3", + "id": 895, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "validateContractCall", + "nameLocation": "3673:20:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 891, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 884, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "3711:9:3", + "nodeType": "VariableDeclaration", + "scope": 895, + "src": "3703:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 883, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3703:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 886, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "3746:11:3", + "nodeType": "VariableDeclaration", + "scope": 895, + "src": "3730:27:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 885, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3730:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 888, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "3783:13:3", + "nodeType": "VariableDeclaration", + "scope": 895, + "src": "3767:29:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 887, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3767:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 890, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "3814:11:3", + "nodeType": "VariableDeclaration", + "scope": 895, + "src": "3806:19:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 889, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3806:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "3693:138:3" + }, + "returnParameters": { + "id": 894, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 893, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 895, + "src": "3850:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 892, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3850:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3849:6:3" + }, + "scope": 991, + "src": "3664:192:3", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "1876eed9", + "id": 912, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "validateContractCallAndMint", + "nameLocation": "3871:27:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 908, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 897, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "3916:9:3", + "nodeType": "VariableDeclaration", + "scope": 912, + "src": "3908:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 896, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3908:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 899, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "3951:11:3", + "nodeType": "VariableDeclaration", + "scope": 912, + "src": "3935:27:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 898, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3935:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 901, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "3988:13:3", + "nodeType": "VariableDeclaration", + "scope": 912, + "src": "3972:29:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 900, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3972:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 903, + "mutability": "mutable", + "name": "payloadHash", + "nameLocation": "4019:11:3", + "nodeType": "VariableDeclaration", + "scope": 912, + "src": "4011:19:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 902, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4011:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 905, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "4056:6:3", + "nodeType": "VariableDeclaration", + "scope": 912, + "src": "4040:22:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 904, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4040:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 907, + "mutability": "mutable", + "name": "amount", + "nameLocation": "4080:6:3", + "nodeType": "VariableDeclaration", + "scope": 912, + "src": "4072:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 906, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4072:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3898:194:3" + }, + "returnParameters": { + "id": 911, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 910, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 912, + "src": "4111:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 909, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4111:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4110:6:3" + }, + "scope": 991, + "src": "3862:255:3", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "64940c56", + "id": 917, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "authModule", + "nameLocation": "4187:10:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 913, + "nodeType": "ParameterList", + "parameters": [], + "src": "4197:2:3" + }, + "returnParameters": { + "id": 916, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 915, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 917, + "src": "4223:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 914, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4223:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4222:9:3" + }, + "scope": 991, + "src": "4178:54:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "2a2dae0a", + "id": 922, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "tokenDeployer", + "nameLocation": "4247:13:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 918, + "nodeType": "ParameterList", + "parameters": [], + "src": "4260:2:3" + }, + "returnParameters": { + "id": 921, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 920, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 922, + "src": "4286:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 919, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4286:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4285:9:3" + }, + "scope": 991, + "src": "4238:57:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "269eb65e", + "id": 929, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "tokenMintLimit", + "nameLocation": "4310:14:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 925, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 924, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "4339:6:3", + "nodeType": "VariableDeclaration", + "scope": 929, + "src": "4325:20:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 923, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4325:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4324:22:3" + }, + "returnParameters": { + "id": 928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 927, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 929, + "src": "4370:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 926, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4370:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4369:9:3" + }, + "scope": 991, + "src": "4301:78:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "cec7b359", + "id": 936, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "tokenMintAmount", + "nameLocation": "4394:15:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 932, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 931, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "4424:6:3", + "nodeType": "VariableDeclaration", + "scope": 936, + "src": "4410:20:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 930, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4410:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4409:22:3" + }, + "returnParameters": { + "id": 935, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 934, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 936, + "src": "4455:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 933, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4455:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4454:9:3" + }, + "scope": 991, + "src": "4385:79:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "aa1e1f0a", + "id": 941, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allTokensFrozen", + "nameLocation": "4479:15:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 937, + "nodeType": "ParameterList", + "parameters": [], + "src": "4494:2:3" + }, + "returnParameters": { + "id": 940, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 939, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 941, + "src": "4520:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 938, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4520:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4519:6:3" + }, + "scope": 991, + "src": "4470:56:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "5c60da1b", + "id": 946, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "implementation", + "nameLocation": "4541:14:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 942, + "nodeType": "ParameterList", + "parameters": [], + "src": "4555:2:3" + }, + "returnParameters": { + "id": 945, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 944, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 946, + "src": "4581:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 943, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4581:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4580:9:3" + }, + "scope": 991, + "src": "4532:58:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "935b13f6", + "id": 953, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "tokenAddresses", + "nameLocation": "4605:14:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 948, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "4634:6:3", + "nodeType": "VariableDeclaration", + "scope": 953, + "src": "4620:20:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 947, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4620:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4619:22:3" + }, + "returnParameters": { + "id": 952, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 951, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 953, + "src": "4665:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 950, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4665:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4664:9:3" + }, + "scope": 991, + "src": "4596:78:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "7b1b769e", + "id": 960, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "tokenFrozen", + "nameLocation": "4689:11:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 956, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 955, + "mutability": "mutable", + "name": "symbol", + "nameLocation": "4715:6:3", + "nodeType": "VariableDeclaration", + "scope": 960, + "src": "4701:20:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 954, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4701:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4700:22:3" + }, + "returnParameters": { + "id": 959, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 958, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 960, + "src": "4746:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 957, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4746:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4745:6:3" + }, + "scope": 991, + "src": "4680:72:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "d26ff210", + "id": 967, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "isCommandExecuted", + "nameLocation": "4767:17:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 963, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 962, + "mutability": "mutable", + "name": "commandId", + "nameLocation": "4793:9:3", + "nodeType": "VariableDeclaration", + "scope": 967, + "src": "4785:17:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 961, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4785:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4784:19:3" + }, + "returnParameters": { + "id": 966, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 965, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 967, + "src": "4827:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 964, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4827:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4826:6:3" + }, + "scope": 991, + "src": "4758:75:3", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "67ace8eb", + "id": 976, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setTokenMintLimits", + "nameLocation": "4942:18:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 974, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 970, + "mutability": "mutable", + "name": "symbols", + "nameLocation": "4979:7:3", + "nodeType": "VariableDeclaration", + "scope": 976, + "src": "4961:25:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 968, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4961:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 969, + "nodeType": "ArrayTypeName", + "src": "4961:8:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 973, + "mutability": "mutable", + "name": "limits", + "nameLocation": "5007:6:3", + "nodeType": "VariableDeclaration", + "scope": 976, + "src": "4988:25:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 971, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4988:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 972, + "nodeType": "ArrayTypeName", + "src": "4988:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "4960:54:3" + }, + "returnParameters": { + "id": 975, + "nodeType": "ParameterList", + "parameters": [], + "src": "5023:0:3" + }, + "scope": 991, + "src": "4933:91:3", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "a3499c73", + "id": 985, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "upgrade", + "nameLocation": "5039:7:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 983, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 978, + "mutability": "mutable", + "name": "newImplementation", + "nameLocation": "5064:17:3", + "nodeType": "VariableDeclaration", + "scope": 985, + "src": "5056:25:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 977, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5056:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 980, + "mutability": "mutable", + "name": "newImplementationCodeHash", + "nameLocation": "5099:25:3", + "nodeType": "VariableDeclaration", + "scope": 985, + "src": "5091:33:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 979, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5091:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 982, + "mutability": "mutable", + "name": "setupParams", + "nameLocation": "5149:11:3", + "nodeType": "VariableDeclaration", + "scope": 985, + "src": "5134:26:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 981, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5134:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5046:120:3" + }, + "returnParameters": { + "id": 984, + "nodeType": "ParameterList", + "parameters": [], + "src": "5175:0:3" + }, + "scope": 991, + "src": "5030:146:3", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "09c5eabe", + "id": 990, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "execute", + "nameLocation": "5279:7:3", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 988, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 987, + "mutability": "mutable", + "name": "input", + "nameLocation": "5302:5:3", + "nodeType": "VariableDeclaration", + "scope": 990, + "src": "5287:20:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 986, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5287:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5286:22:3" + }, + "returnParameters": { + "id": 989, + "nodeType": "ParameterList", + "parameters": [], + "src": "5317:0:3" + }, + "scope": 991, + "src": "5270:48:3", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 992, + "src": "165:5155:3", + "usedErrors": [ + 667, + 669, + 671, + 673, + 675, + 677, + 679, + 681, + 685, + 689, + 693, + 697, + 701, + 705, + 707, + 711, + 1085, + 1087, + 1089, + 1091, + 1136 + ], + "usedEvents": [ + 723, + 735, + 751, + 755, + 761, + 777, + 797, + 801, + 807, + 811, + 815, + 1097, + 1103 + ] + } + ], + "src": "33:5288:3" + }, + "id": 3 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol", + "exportedSymbols": { + "IContractIdentifier": [ + 1000 + ] + }, + "id": 1001, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 993, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:4" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IContractIdentifier", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 1000, + "linearizedBaseContracts": [ + 1000 + ], + "name": "IContractIdentifier", + "nameLocation": "114:19:4", + "nodeType": "ContractDefinition", + "nodes": [ + { + "documentation": { + "id": 994, + "nodeType": "StructuredDocumentation", + "src": "140:190:4", + "text": " @notice Returns the contract ID. It can be used as a check during upgrades.\n @dev Meant to be overridden in derived contracts.\n @return bytes32 The contract ID" + }, + "functionSelector": "8291286c", + "id": 999, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "contractId", + "nameLocation": "344:10:4", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 995, + "nodeType": "ParameterList", + "parameters": [], + "src": "354:2:4" + }, + "returnParameters": { + "id": 998, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 997, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 999, + "src": "380:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 996, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "380:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "379:9:4" + }, + "scope": 1000, + "src": "335:54:4", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1001, + "src": "104:287:4", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "33:359:4" + }, + "id": 4 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol", + "exportedSymbols": { + "IERC20": [ + 1080 + ] + }, + "id": 1081, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1002, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:5" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IERC20", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 1003, + "nodeType": "StructuredDocumentation", + "src": "58:70:5", + "text": " @dev Interface of the ERC20 standard as defined in the EIP." + }, + "fullyImplemented": false, + "id": 1080, + "linearizedBaseContracts": [ + 1080 + ], + "name": "IERC20", + "nameLocation": "139:6:5", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "6d187b28", + "id": 1005, + "name": "InvalidAccount", + "nameLocation": "158:14:5", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1004, + "nodeType": "ParameterList", + "parameters": [], + "src": "172:2:5" + }, + "src": "152:23:5" + }, + { + "documentation": { + "id": 1006, + "nodeType": "StructuredDocumentation", + "src": "181:66:5", + "text": " @dev Returns the amount of tokens in existence." + }, + "functionSelector": "18160ddd", + "id": 1011, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "totalSupply", + "nameLocation": "261:11:5", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1007, + "nodeType": "ParameterList", + "parameters": [], + "src": "272:2:5" + }, + "returnParameters": { + "id": 1010, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1009, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1011, + "src": "298:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1008, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "298:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "297:9:5" + }, + "scope": 1080, + "src": "252:55:5", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1012, + "nodeType": "StructuredDocumentation", + "src": "313:72:5", + "text": " @dev Returns the amount of tokens owned by `account`." + }, + "functionSelector": "70a08231", + "id": 1019, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nameLocation": "399:9:5", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1015, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1014, + "mutability": "mutable", + "name": "account", + "nameLocation": "417:7:5", + "nodeType": "VariableDeclaration", + "scope": 1019, + "src": "409:15:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1013, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "409:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "408:17:5" + }, + "returnParameters": { + "id": 1018, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1017, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1019, + "src": "449:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "449:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "448:9:5" + }, + "scope": 1080, + "src": "390:68:5", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1020, + "nodeType": "StructuredDocumentation", + "src": "464:209:5", + "text": " @dev Moves `amount` tokens from the caller's account to `recipient`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." + }, + "functionSelector": "a9059cbb", + "id": 1029, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transfer", + "nameLocation": "687:8:5", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1025, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1022, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "704:9:5", + "nodeType": "VariableDeclaration", + "scope": 1029, + "src": "696:17:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1021, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "696:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1024, + "mutability": "mutable", + "name": "amount", + "nameLocation": "723:6:5", + "nodeType": "VariableDeclaration", + "scope": 1029, + "src": "715:14:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1023, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "715:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "695:35:5" + }, + "returnParameters": { + "id": 1028, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1027, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1029, + "src": "749:4:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1026, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "749:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "748:6:5" + }, + "scope": 1080, + "src": "678:77:5", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1030, + "nodeType": "StructuredDocumentation", + "src": "761:264:5", + "text": " @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called." + }, + "functionSelector": "dd62ed3e", + "id": 1039, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "allowance", + "nameLocation": "1039:9:5", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1035, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1032, + "mutability": "mutable", + "name": "owner", + "nameLocation": "1057:5:5", + "nodeType": "VariableDeclaration", + "scope": 1039, + "src": "1049:13:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1031, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1049:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1034, + "mutability": "mutable", + "name": "spender", + "nameLocation": "1072:7:5", + "nodeType": "VariableDeclaration", + "scope": 1039, + "src": "1064:15:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1033, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1064:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1048:32:5" + }, + "returnParameters": { + "id": 1038, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1037, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1039, + "src": "1104:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1036, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1104:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1103:9:5" + }, + "scope": 1080, + "src": "1030:83:5", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1040, + "nodeType": "StructuredDocumentation", + "src": "1119:642:5", + "text": " @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event." + }, + "functionSelector": "095ea7b3", + "id": 1049, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "approve", + "nameLocation": "1775:7:5", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1045, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1042, + "mutability": "mutable", + "name": "spender", + "nameLocation": "1791:7:5", + "nodeType": "VariableDeclaration", + "scope": 1049, + "src": "1783:15:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1041, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1783:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1044, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1808:6:5", + "nodeType": "VariableDeclaration", + "scope": 1049, + "src": "1800:14:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1043, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1800:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1782:33:5" + }, + "returnParameters": { + "id": 1048, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1047, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1049, + "src": "1834:4:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1046, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1834:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1833:6:5" + }, + "scope": 1080, + "src": "1766:74:5", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1050, + "nodeType": "StructuredDocumentation", + "src": "1846:296:5", + "text": " @dev Moves `amount` tokens from `sender` to `recipient` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." + }, + "functionSelector": "23b872dd", + "id": 1061, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferFrom", + "nameLocation": "2156:12:5", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1057, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1052, + "mutability": "mutable", + "name": "sender", + "nameLocation": "2186:6:5", + "nodeType": "VariableDeclaration", + "scope": 1061, + "src": "2178:14:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1051, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2178:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1054, + "mutability": "mutable", + "name": "recipient", + "nameLocation": "2210:9:5", + "nodeType": "VariableDeclaration", + "scope": 1061, + "src": "2202:17:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1053, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2202:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1056, + "mutability": "mutable", + "name": "amount", + "nameLocation": "2237:6:5", + "nodeType": "VariableDeclaration", + "scope": 1061, + "src": "2229:14:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1055, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2229:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2168:81:5" + }, + "returnParameters": { + "id": 1060, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1059, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1061, + "src": "2268:4:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1058, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2268:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2267:6:5" + }, + "scope": 1080, + "src": "2147:127:5", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "anonymous": false, + "documentation": { + "id": 1062, + "nodeType": "StructuredDocumentation", + "src": "2280:158:5", + "text": " @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero." + }, + "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", + "id": 1070, + "name": "Transfer", + "nameLocation": "2449:8:5", + "nodeType": "EventDefinition", + "parameters": { + "id": 1069, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1064, + "indexed": true, + "mutability": "mutable", + "name": "from", + "nameLocation": "2474:4:5", + "nodeType": "VariableDeclaration", + "scope": 1070, + "src": "2458:20:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1063, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2458:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1066, + "indexed": true, + "mutability": "mutable", + "name": "to", + "nameLocation": "2496:2:5", + "nodeType": "VariableDeclaration", + "scope": 1070, + "src": "2480:18:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1065, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2480:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1068, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "2508:5:5", + "nodeType": "VariableDeclaration", + "scope": 1070, + "src": "2500:13:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1067, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2500:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2457:57:5" + }, + "src": "2443:72:5" + }, + { + "anonymous": false, + "documentation": { + "id": 1071, + "nodeType": "StructuredDocumentation", + "src": "2521:148:5", + "text": " @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance." + }, + "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "id": 1079, + "name": "Approval", + "nameLocation": "2680:8:5", + "nodeType": "EventDefinition", + "parameters": { + "id": 1078, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1073, + "indexed": true, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2705:5:5", + "nodeType": "VariableDeclaration", + "scope": 1079, + "src": "2689:21:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1072, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2689:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1075, + "indexed": true, + "mutability": "mutable", + "name": "spender", + "nameLocation": "2728:7:5", + "nodeType": "VariableDeclaration", + "scope": 1079, + "src": "2712:23:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1074, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2712:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1077, + "indexed": false, + "mutability": "mutable", + "name": "value", + "nameLocation": "2745:5:5", + "nodeType": "VariableDeclaration", + "scope": 1079, + "src": "2737:13:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1076, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2737:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2688:63:5" + }, + "src": "2674:78:5" + } + ], + "scope": 1081, + "src": "129:2625:5", + "usedErrors": [ + 1005 + ], + "usedEvents": [ + 1070, + 1079 + ] + } + ], + "src": "33:2722:5" + }, + "id": 5 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol", + "exportedSymbols": { + "IGovernable": [ + 1128 + ] + }, + "id": 1129, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1082, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:6" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IGovernable", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 1083, + "nodeType": "StructuredDocumentation", + "src": "58:151:6", + "text": " @title IGovernable Interface\n @notice This is an interface used by the AxelarGateway contract to manage governance and mint limiter roles." + }, + "fullyImplemented": false, + "id": 1128, + "linearizedBaseContracts": [ + 1128 + ], + "name": "IGovernable", + "nameLocation": "220:11:6", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "b56f932c", + "id": 1085, + "name": "NotGovernance", + "nameLocation": "244:13:6", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1084, + "nodeType": "ParameterList", + "parameters": [], + "src": "257:2:6" + }, + "src": "238:22:6" + }, + { + "errorSelector": "4475507a", + "id": 1087, + "name": "NotMintLimiter", + "nameLocation": "271:14:6", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1086, + "nodeType": "ParameterList", + "parameters": [], + "src": "285:2:6" + }, + "src": "265:23:6" + }, + { + "errorSelector": "0063186c", + "id": 1089, + "name": "InvalidGovernance", + "nameLocation": "299:17:6", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1088, + "nodeType": "ParameterList", + "parameters": [], + "src": "316:2:6" + }, + "src": "293:26:6" + }, + { + "errorSelector": "d79d772c", + "id": 1091, + "name": "InvalidMintLimiter", + "nameLocation": "330:18:6", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1090, + "nodeType": "ParameterList", + "parameters": [], + "src": "348:2:6" + }, + "src": "324:27:6" + }, + { + "anonymous": false, + "eventSelector": "5f56bee8cffbe9a78652a74a60705edede02af10b0bbb888ca44b79a0d42ce80", + "id": 1097, + "name": "GovernanceTransferred", + "nameLocation": "363:21:6", + "nodeType": "EventDefinition", + "parameters": { + "id": 1096, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1093, + "indexed": true, + "mutability": "mutable", + "name": "previousGovernance", + "nameLocation": "401:18:6", + "nodeType": "VariableDeclaration", + "scope": 1097, + "src": "385:34:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1092, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "385:7:6", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1095, + "indexed": true, + "mutability": "mutable", + "name": "newGovernance", + "nameLocation": "437:13:6", + "nodeType": "VariableDeclaration", + "scope": 1097, + "src": "421:29:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1094, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "421:7:6", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "384:67:6" + }, + "src": "357:95:6" + }, + { + "anonymous": false, + "eventSelector": "a9303c860c5de3c0c866c354d281785c89778ac5ca2dffdf12841c45cd4e1e6e", + "id": 1103, + "name": "MintLimiterTransferred", + "nameLocation": "463:22:6", + "nodeType": "EventDefinition", + "parameters": { + "id": 1102, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1099, + "indexed": true, + "mutability": "mutable", + "name": "previousGovernance", + "nameLocation": "502:18:6", + "nodeType": "VariableDeclaration", + "scope": 1103, + "src": "486:34:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1098, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "486:7:6", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1101, + "indexed": true, + "mutability": "mutable", + "name": "newGovernance", + "nameLocation": "538:13:6", + "nodeType": "VariableDeclaration", + "scope": 1103, + "src": "522:29:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "522:7:6", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "485:67:6" + }, + "src": "457:96:6" + }, + { + "documentation": { + "id": 1104, + "nodeType": "StructuredDocumentation", + "src": "559:99:6", + "text": " @notice Returns the governance address.\n @return address of the governance" + }, + "functionSelector": "5aa6e675", + "id": 1109, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "governance", + "nameLocation": "672:10:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1105, + "nodeType": "ParameterList", + "parameters": [], + "src": "682:2:6" + }, + "returnParameters": { + "id": 1108, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1107, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1109, + "src": "708:7:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1106, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "708:7:6", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "707:9:6" + }, + "scope": 1128, + "src": "663:54:6", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1110, + "nodeType": "StructuredDocumentation", + "src": "723:103:6", + "text": " @notice Returns the mint limiter address.\n @return address of the mint limiter" + }, + "functionSelector": "c82fe87a", + "id": 1115, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "mintLimiter", + "nameLocation": "840:11:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1111, + "nodeType": "ParameterList", + "parameters": [], + "src": "851:2:6" + }, + "returnParameters": { + "id": 1114, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1113, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1115, + "src": "877:7:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1112, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "877:7:6", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "876:9:6" + }, + "scope": 1128, + "src": "831:55:6", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1116, + "nodeType": "StructuredDocumentation", + "src": "892:130:6", + "text": " @notice Transfer the governance role to another address.\n @param newGovernance The new governance address" + }, + "functionSelector": "d38bfff4", + "id": 1121, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferGovernance", + "nameLocation": "1036:18:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1119, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1118, + "mutability": "mutable", + "name": "newGovernance", + "nameLocation": "1063:13:6", + "nodeType": "VariableDeclaration", + "scope": 1121, + "src": "1055:21:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1117, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1055:7:6", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1054:23:6" + }, + "returnParameters": { + "id": 1120, + "nodeType": "ParameterList", + "parameters": [], + "src": "1086:0:6" + }, + "scope": 1128, + "src": "1027:60:6", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1122, + "nodeType": "StructuredDocumentation", + "src": "1093:134:6", + "text": " @notice Transfer the mint limiter role to another address.\n @param newGovernance The new mint limiter address" + }, + "functionSelector": "41d8f26b", + "id": 1127, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferMintLimiter", + "nameLocation": "1241:19:6", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1125, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1124, + "mutability": "mutable", + "name": "newGovernance", + "nameLocation": "1269:13:6", + "nodeType": "VariableDeclaration", + "scope": 1127, + "src": "1261:21:6", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1123, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1261:7:6", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1260:23:6" + }, + "returnParameters": { + "id": 1126, + "nodeType": "ParameterList", + "parameters": [], + "src": "1292:0:6" + }, + "scope": 1128, + "src": "1232:61:6", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1129, + "src": "210:1085:6", + "usedErrors": [ + 1085, + 1087, + 1089, + 1091 + ], + "usedEvents": [ + 1097, + 1103 + ] + } + ], + "src": "33:1263:6" + }, + "id": 6 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol", + "exportedSymbols": { + "IContractIdentifier": [ + 1000 + ], + "IImplementation": [ + 1142 + ] + }, + "id": 1143, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1130, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:7" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol", + "file": "./IContractIdentifier.sol", + "id": 1132, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1143, + "sourceUnit": 1001, + "src": "58:64:7", + "symbolAliases": [ + { + "foreign": { + "id": 1131, + "name": "IContractIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1000, + "src": "67:19:7", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 1133, + "name": "IContractIdentifier", + "nameLocations": [ + "153:19:7" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1000, + "src": "153:19:7" + }, + "id": 1134, + "nodeType": "InheritanceSpecifier", + "src": "153:19:7" + } + ], + "canonicalName": "IImplementation", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 1142, + "linearizedBaseContracts": [ + 1142, + 1000 + ], + "name": "IImplementation", + "nameLocation": "134:15:7", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "bf10dd3a", + "id": 1136, + "name": "NotProxy", + "nameLocation": "185:8:7", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1135, + "nodeType": "ParameterList", + "parameters": [], + "src": "193:2:7" + }, + "src": "179:17:7" + }, + { + "functionSelector": "9ded06df", + "id": 1141, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setup", + "nameLocation": "211:5:7", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1139, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1138, + "mutability": "mutable", + "name": "data", + "nameLocation": "232:4:7", + "nodeType": "VariableDeclaration", + "scope": 1141, + "src": "217:19:7", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1137, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "217:5:7", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "216:21:7" + }, + "returnParameters": { + "id": 1140, + "nodeType": "ParameterList", + "parameters": [], + "src": "246:0:7" + }, + "scope": 1142, + "src": "202:45:7", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1143, + "src": "124:125:7", + "usedErrors": [ + 1136 + ], + "usedEvents": [] + } + ], + "src": "33:217:7" + }, + "id": 7 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol", + "exportedSymbols": { + "GasEstimationType": [ + 1506 + ], + "GasInfo": [ + 1526 + ], + "IInterchainGasEstimation": [ + 1187 + ] + }, + "id": 1188, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1144, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:8" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol", + "file": "../types/GasEstimationTypes.sol", + "id": 1147, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1188, + "sourceUnit": 1527, + "src": "58:77:8", + "symbolAliases": [ + { + "foreign": { + "id": 1145, + "name": "GasEstimationType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1506, + "src": "67:17:8", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 1146, + "name": "GasInfo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1526, + "src": "86:7:8", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IInterchainGasEstimation", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 1148, + "nodeType": "StructuredDocumentation", + "src": "137:218:8", + "text": " @title IInterchainGasEstimation Interface\n @notice This is an interface for the InterchainGasEstimation contract\n which allows for estimating gas fees for cross-chain communication on the Axelar network." + }, + "fullyImplemented": false, + "id": 1187, + "linearizedBaseContracts": [ + 1187 + ], + "name": "IInterchainGasEstimation", + "nameLocation": "366:24:8", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "10fcd31f", + "id": 1153, + "name": "UnsupportedEstimationType", + "nameLocation": "403:25:8", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1152, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1151, + "mutability": "mutable", + "name": "gasEstimationType", + "nameLocation": "447:17:8", + "nodeType": "VariableDeclaration", + "scope": 1153, + "src": "429:35:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_enum$_GasEstimationType_$1506", + "typeString": "enum GasEstimationType" + }, + "typeName": { + "id": 1150, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1149, + "name": "GasEstimationType", + "nameLocations": [ + "429:17:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1506, + "src": "429:17:8" + }, + "referencedDeclaration": 1506, + "src": "429:17:8", + "typeDescriptions": { + "typeIdentifier": "t_enum$_GasEstimationType_$1506", + "typeString": "enum GasEstimationType" + } + }, + "visibility": "internal" + } + ], + "src": "428:37:8" + }, + "src": "397:69:8" + }, + { + "anonymous": false, + "documentation": { + "id": 1154, + "nodeType": "StructuredDocumentation", + "src": "472:180:8", + "text": " @notice Event emitted when the gas price for a specific chain is updated.\n @param chain The name of the chain\n @param info The gas info for the chain" + }, + "eventSelector": "11415423beab67062fb0f3f22cb2a478e3b5a02a845dd62ddb7c12d11098ff1b", + "id": 1161, + "name": "GasInfoUpdated", + "nameLocation": "663:14:8", + "nodeType": "EventDefinition", + "parameters": { + "id": 1160, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1156, + "indexed": false, + "mutability": "mutable", + "name": "chain", + "nameLocation": "685:5:8", + "nodeType": "VariableDeclaration", + "scope": 1161, + "src": "678:12:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1155, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "678:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1159, + "indexed": false, + "mutability": "mutable", + "name": "info", + "nameLocation": "700:4:8", + "nodeType": "VariableDeclaration", + "scope": 1161, + "src": "692:12:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_struct$_GasInfo_$1526_memory_ptr", + "typeString": "struct GasInfo" + }, + "typeName": { + "id": 1158, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1157, + "name": "GasInfo", + "nameLocations": [ + "692:7:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1526, + "src": "692:7:8" + }, + "referencedDeclaration": 1526, + "src": "692:7:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_GasInfo_$1526_storage_ptr", + "typeString": "struct GasInfo" + } + }, + "visibility": "internal" + } + ], + "src": "677:28:8" + }, + "src": "657:49:8" + }, + { + "documentation": { + "id": 1162, + "nodeType": "StructuredDocumentation", + "src": "712:162:8", + "text": " @notice Returns the gas price for a specific chain.\n @param chain The name of the chain\n @return gasInfo The gas info for the chain" + }, + "functionSelector": "86389f02", + "id": 1170, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getGasInfo", + "nameLocation": "888:10:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1165, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1164, + "mutability": "mutable", + "name": "chain", + "nameLocation": "915:5:8", + "nodeType": "VariableDeclaration", + "scope": 1170, + "src": "899:21:8", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1163, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "899:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "898:23:8" + }, + "returnParameters": { + "id": 1169, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1168, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1170, + "src": "945:14:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_GasInfo_$1526_memory_ptr", + "typeString": "struct GasInfo" + }, + "typeName": { + "id": 1167, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1166, + "name": "GasInfo", + "nameLocations": [ + "945:7:8" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1526, + "src": "945:7:8" + }, + "referencedDeclaration": 1526, + "src": "945:7:8", + "typeDescriptions": { + "typeIdentifier": "t_struct$_GasInfo_$1526_storage_ptr", + "typeString": "struct GasInfo" + } + }, + "visibility": "internal" + } + ], + "src": "944:16:8" + }, + "scope": 1187, + "src": "879:82:8", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1171, + "nodeType": "StructuredDocumentation", + "src": "967:636:8", + "text": " @notice Estimates the gas fee for a cross-chain contract call.\n @param destinationChain Axelar registered name of the destination chain\n @param destinationAddress Destination contract address being called\n @param executionGasLimit The gas limit to be used for the destination contract execution,\n e.g. pass in 200k if your app consumes needs upto 200k for this contract call\n @param params Additional parameters for the gas estimation\n @return gasEstimate The cross-chain gas estimate, in terms of source chain's native gas token that should be forwarded to the gas service." + }, + "functionSelector": "135eaa70", + "id": 1186, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "estimateGasFee", + "nameLocation": "1617:14:8", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1182, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1173, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "1657:16:8", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "1641:32:8", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1172, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1641:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1175, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "1699:18:8", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "1683:34:8", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1174, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1683:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1177, + "mutability": "mutable", + "name": "payload", + "nameLocation": "1742:7:8", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "1727:22:8", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1176, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1727:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1179, + "mutability": "mutable", + "name": "executionGasLimit", + "nameLocation": "1767:17:8", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "1759:25:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1178, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1759:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1181, + "mutability": "mutable", + "name": "params", + "nameLocation": "1809:6:8", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "1794:21:8", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1180, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1794:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1631:190:8" + }, + "returnParameters": { + "id": 1185, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1184, + "mutability": "mutable", + "name": "gasEstimate", + "nameLocation": "1853:11:8", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "1845:19:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1183, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1845:7:8", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1844:21:8" + }, + "scope": 1187, + "src": "1608:258:8", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1188, + "src": "356:1512:8", + "usedErrors": [ + 1153 + ], + "usedEvents": [ + 1161 + ] + } + ], + "src": "33:1836:8" + }, + "id": 8 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol", + "exportedSymbols": { + "IOwnable": [ + 1233 + ] + }, + "id": 1234, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1189, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:9" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "IOwnable", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 1190, + "nodeType": "StructuredDocumentation", + "src": "58:312:9", + "text": " @title IOwnable Interface\n @notice IOwnable is an interface that abstracts the implementation of a\n contract with ownership control features. It's commonly used in upgradable\n contracts and includes the functionality to get current owner, transfer\n ownership, and propose and accept ownership." + }, + "fullyImplemented": false, + "id": 1233, + "linearizedBaseContracts": [ + 1233 + ], + "name": "IOwnable", + "nameLocation": "381:8:9", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "30cd7471", + "id": 1192, + "name": "NotOwner", + "nameLocation": "402:8:9", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1191, + "nodeType": "ParameterList", + "parameters": [], + "src": "410:2:9" + }, + "src": "396:17:9" + }, + { + "errorSelector": "49e27cff", + "id": 1194, + "name": "InvalidOwner", + "nameLocation": "424:12:9", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1193, + "nodeType": "ParameterList", + "parameters": [], + "src": "436:2:9" + }, + "src": "418:21:9" + }, + { + "errorSelector": "d924e5f4", + "id": 1196, + "name": "InvalidOwnerAddress", + "nameLocation": "450:19:9", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1195, + "nodeType": "ParameterList", + "parameters": [], + "src": "469:2:9" + }, + "src": "444:28:9" + }, + { + "anonymous": false, + "eventSelector": "d9be0e8e07417e00f2521db636cb53e316fd288f5051f16d2aa2bf0c3938a876", + "id": 1200, + "name": "OwnershipTransferStarted", + "nameLocation": "484:24:9", + "nodeType": "EventDefinition", + "parameters": { + "id": 1199, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1198, + "indexed": true, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "525:8:9", + "nodeType": "VariableDeclaration", + "scope": 1200, + "src": "509:24:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1197, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "509:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "508:26:9" + }, + "src": "478:57:9" + }, + { + "anonymous": false, + "eventSelector": "04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163", + "id": 1204, + "name": "OwnershipTransferred", + "nameLocation": "546:20:9", + "nodeType": "EventDefinition", + "parameters": { + "id": 1203, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1202, + "indexed": true, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "583:8:9", + "nodeType": "VariableDeclaration", + "scope": 1204, + "src": "567:24:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1201, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "567:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "566:26:9" + }, + "src": "540:53:9" + }, + { + "documentation": { + "id": 1205, + "nodeType": "StructuredDocumentation", + "src": "599:125:9", + "text": " @notice Returns the current owner of the contract.\n @return address The address of the current owner" + }, + "functionSelector": "8da5cb5b", + "id": 1210, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "owner", + "nameLocation": "738:5:9", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1206, + "nodeType": "ParameterList", + "parameters": [], + "src": "743:2:9" + }, + "returnParameters": { + "id": 1209, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1208, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1210, + "src": "769:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1207, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "769:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "768:9:9" + }, + "scope": 1233, + "src": "729:49:9", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1211, + "nodeType": "StructuredDocumentation", + "src": "784:140:9", + "text": " @notice Returns the address of the pending owner of the contract.\n @return address The address of the pending owner" + }, + "functionSelector": "e30c3978", + "id": 1216, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "pendingOwner", + "nameLocation": "938:12:9", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1212, + "nodeType": "ParameterList", + "parameters": [], + "src": "950:2:9" + }, + "returnParameters": { + "id": 1215, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1214, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1216, + "src": "976:7:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1213, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "976:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "975:9:9" + }, + "scope": 1233, + "src": "929:56:9", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1217, + "nodeType": "StructuredDocumentation", + "src": "991:139:9", + "text": " @notice Transfers ownership of the contract to a new address\n @param newOwner The address to transfer ownership to" + }, + "functionSelector": "f2fde38b", + "id": 1222, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "transferOwnership", + "nameLocation": "1144:17:9", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1220, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1219, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "1170:8:9", + "nodeType": "VariableDeclaration", + "scope": 1222, + "src": "1162:16:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1218, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1162:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1161:18:9" + }, + "returnParameters": { + "id": 1221, + "nodeType": "ParameterList", + "parameters": [], + "src": "1188:0:9" + }, + "scope": 1233, + "src": "1135:54:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1223, + "nodeType": "StructuredDocumentation", + "src": "1195:213:9", + "text": " @notice Proposes to transfer the contract's ownership to a new address.\n The new owner needs to accept the ownership explicitly.\n @param newOwner The address to transfer ownership to" + }, + "functionSelector": "710bf322", + "id": 1228, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "proposeOwnership", + "nameLocation": "1422:16:9", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1226, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1225, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "1447:8:9", + "nodeType": "VariableDeclaration", + "scope": 1228, + "src": "1439:16:9", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1224, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1439:7:9", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1438:18:9" + }, + "returnParameters": { + "id": 1227, + "nodeType": "ParameterList", + "parameters": [], + "src": "1465:0:9" + }, + "scope": 1233, + "src": "1413:53:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "documentation": { + "id": 1229, + "nodeType": "StructuredDocumentation", + "src": "1472:120:9", + "text": " @notice Transfers ownership to the pending owner.\n @dev Can only be called by the pending owner" + }, + "functionSelector": "79ba5097", + "id": 1232, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "acceptOwnership", + "nameLocation": "1606:15:9", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1230, + "nodeType": "ParameterList", + "parameters": [], + "src": "1621:2:9" + }, + "returnParameters": { + "id": 1231, + "nodeType": "ParameterList", + "parameters": [], + "src": "1632:0:9" + }, + "scope": 1233, + "src": "1597:36:9", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1234, + "src": "371:1264:9", + "usedErrors": [ + 1192, + 1194, + 1196 + ], + "usedEvents": [ + 1200, + 1204 + ] + } + ], + "src": "33:1603:9" + }, + "id": 9 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol", + "exportedSymbols": { + "IImplementation": [ + 1142 + ], + "IOwnable": [ + 1233 + ], + "IUpgradable": [ + 1268 + ] + }, + "id": 1269, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1235, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:10" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol", + "file": "./IOwnable.sol", + "id": 1237, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1269, + "sourceUnit": 1234, + "src": "58:42:10", + "symbolAliases": [ + { + "foreign": { + "id": 1236, + "name": "IOwnable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1233, + "src": "67:8:10", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol", + "file": "./IImplementation.sol", + "id": 1239, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1269, + "sourceUnit": 1143, + "src": "101:56:10", + "symbolAliases": [ + { + "foreign": { + "id": 1238, + "name": "IImplementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1142, + "src": "110:15:10", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 1240, + "name": "IOwnable", + "nameLocations": [ + "230:8:10" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1233, + "src": "230:8:10" + }, + "id": 1241, + "nodeType": "InheritanceSpecifier", + "src": "230:8:10" + }, + { + "baseName": { + "id": 1242, + "name": "IImplementation", + "nameLocations": [ + "240:15:10" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1142, + "src": "240:15:10" + }, + "id": 1243, + "nodeType": "InheritanceSpecifier", + "src": "240:15:10" + } + ], + "canonicalName": "IUpgradable", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "id": 1268, + "linearizedBaseContracts": [ + 1268, + 1142, + 1000, + 1233 + ], + "name": "IUpgradable", + "nameLocation": "215:11:10", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "8f84fb24", + "id": 1245, + "name": "InvalidCodeHash", + "nameLocation": "268:15:10", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1244, + "nodeType": "ParameterList", + "parameters": [], + "src": "283:2:10" + }, + "src": "262:24:10" + }, + { + "errorSelector": "68155f9a", + "id": 1247, + "name": "InvalidImplementation", + "nameLocation": "297:21:10", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1246, + "nodeType": "ParameterList", + "parameters": [], + "src": "318:2:10" + }, + "src": "291:30:10" + }, + { + "errorSelector": "97905dfb", + "id": 1249, + "name": "SetupFailed", + "nameLocation": "332:11:10", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1248, + "nodeType": "ParameterList", + "parameters": [], + "src": "343:2:10" + }, + "src": "326:20:10" + }, + { + "anonymous": false, + "eventSelector": "bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", + "id": 1253, + "name": "Upgraded", + "nameLocation": "358:8:10", + "nodeType": "EventDefinition", + "parameters": { + "id": 1252, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1251, + "indexed": true, + "mutability": "mutable", + "name": "newImplementation", + "nameLocation": "383:17:10", + "nodeType": "VariableDeclaration", + "scope": 1253, + "src": "367:33:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1250, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "367:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "366:35:10" + }, + "src": "352:50:10" + }, + { + "functionSelector": "5c60da1b", + "id": 1258, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "implementation", + "nameLocation": "417:14:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1254, + "nodeType": "ParameterList", + "parameters": [], + "src": "431:2:10" + }, + "returnParameters": { + "id": 1257, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1256, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1258, + "src": "457:7:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1255, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "457:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "456:9:10" + }, + "scope": 1268, + "src": "408:58:10", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "functionSelector": "a3499c73", + "id": 1267, + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "upgrade", + "nameLocation": "481:7:10", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1265, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1260, + "mutability": "mutable", + "name": "newImplementation", + "nameLocation": "506:17:10", + "nodeType": "VariableDeclaration", + "scope": 1267, + "src": "498:25:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1259, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "498:7:10", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1262, + "mutability": "mutable", + "name": "newImplementationCodeHash", + "nameLocation": "541:25:10", + "nodeType": "VariableDeclaration", + "scope": 1267, + "src": "533:33:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 1261, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "533:7:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1264, + "mutability": "mutable", + "name": "params", + "nameLocation": "591:6:10", + "nodeType": "VariableDeclaration", + "scope": 1267, + "src": "576:21:10", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1263, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "576:5:10", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "488:115:10" + }, + "returnParameters": { + "id": 1266, + "nodeType": "ParameterList", + "parameters": [], + "src": "612:0:10" + }, + "scope": 1268, + "src": "472:141:10", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1269, + "src": "205:410:10", + "usedErrors": [ + 1136, + 1192, + 1194, + 1196, + 1245, + 1247, + 1249 + ], + "usedEvents": [ + 1200, + 1204, + 1253 + ] + } + ], + "src": "33:583:10" + }, + "id": 10 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", + "exportedSymbols": { + "AddressToString": [ + 1497 + ], + "StringToAddress": [ + 1404 + ] + }, + "id": 1498, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1270, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:11" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "StringToAddress", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "id": 1404, + "linearizedBaseContracts": [ + 1404 + ], + "name": "StringToAddress", + "nameLocation": "66:15:11", + "nodeType": "ContractDefinition", + "nodes": [ + { + "errorSelector": "df48f19e", + "id": 1272, + "name": "InvalidAddressString", + "nameLocation": "94:20:11", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1271, + "nodeType": "ParameterList", + "parameters": [], + "src": "114:2:11" + }, + "src": "88:29:11" + }, + { + "body": { + "id": 1402, + "nodeType": "Block", + "src": "203:754:11", + "statements": [ + { + "assignments": [ + 1280 + ], + "declarations": [ + { + "constant": false, + "id": 1280, + "mutability": "mutable", + "name": "stringBytes", + "nameLocation": "226:11:11", + "nodeType": "VariableDeclaration", + "scope": 1402, + "src": "213:24:11", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1279, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "213:5:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 1285, + "initialValue": { + "arguments": [ + { + "id": 1283, + "name": "addressString", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1274, + "src": "246:13:11", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "240:5:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 1281, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "240:5:11", + "typeDescriptions": {} + } + }, + "id": 1284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "240:20:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "213:47:11" + }, + { + "assignments": [ + 1287 + ], + "declarations": [ + { + "constant": false, + "id": 1287, + "mutability": "mutable", + "name": "addressNumber", + "nameLocation": "278:13:11", + "nodeType": "VariableDeclaration", + "scope": 1402, + "src": "270:21:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + }, + "typeName": { + "id": 1286, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "270:7:11", + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + }, + "visibility": "internal" + } + ], + "id": 1289, + "initialValue": { + "hexValue": "30", + "id": 1288, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "294:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "270:25:11" + }, + { + "assignments": [ + 1291 + ], + "declarations": [ + { + "constant": false, + "id": 1291, + "mutability": "mutable", + "name": "stringByte", + "nameLocation": "311:10:11", + "nodeType": "VariableDeclaration", + "scope": 1402, + "src": "305:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 1290, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "305:5:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "id": 1292, + "nodeType": "VariableDeclarationStatement", + "src": "305:16:11" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1302, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1293, + "name": "stringBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1280, + "src": "336:11:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "348:6:11", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "336:18:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "3432", + "id": 1295, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "358:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_42_by_1", + "typeString": "int_const 42" + }, + "value": "42" + }, + "src": "336:24:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 1301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 1297, + "name": "stringBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1280, + "src": "364:11:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1299, + "indexExpression": { + "hexValue": "30", + "id": 1298, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "376:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "364:14:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 1300, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "382:3:11", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "typeString": "literal_string \"0\"" + }, + "value": "0" + }, + "src": "364:21:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "336:49:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 1307, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 1303, + "name": "stringBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1280, + "src": "389:11:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1305, + "indexExpression": { + "hexValue": "31", + "id": 1304, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "401:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "389:14:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "78", + "id": 1306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "407:3:11", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83", + "typeString": "literal_string \"x\"" + }, + "value": "x" + }, + "src": "389:21:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "336:74:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1312, + "nodeType": "IfStatement", + "src": "332:109:11", + "trueBody": { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1309, + "name": "InvalidAddressString", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1272, + "src": "419:20:11", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "419:22:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1311, + "nodeType": "RevertStatement", + "src": "412:29:11" + } + }, + { + "body": { + "id": 1395, + "nodeType": "Block", + "src": "485:426:11", + "statements": [ + { + "expression": { + "id": 1330, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1323, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "499:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 1326, + "name": "stringBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1280, + "src": "518:11:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1328, + "indexExpression": { + "id": 1327, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1314, + "src": "530:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "518:14:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 1325, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "512:5:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 1324, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "512:5:11", + "typeDescriptions": {} + } + }, + "id": 1329, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "512:21:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "499:34:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 1331, + "nodeType": "ExpressionStatement", + "src": "499:34:11" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 1334, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1332, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "553:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3937", + "id": 1333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "567:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_97_by_1", + "typeString": "int_const 97" + }, + "value": "97" + }, + "src": "553:16:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1335, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "552:18:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 1338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1336, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "575:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "313032", + "id": 1337, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "589:3:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_102_by_1", + "typeString": "int_const 102" + }, + "value": "102" + }, + "src": "575:17:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1339, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "574:19:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "552:41:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1353, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 1347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1345, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "635:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3635", + "id": 1346, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "649:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_65_by_1", + "typeString": "int_const 65" + }, + "value": "65" + }, + "src": "635:16:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1348, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "634:18:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 1351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1349, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "657:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "3730", + "id": 1350, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "671:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_70_by_1", + "typeString": "int_const 70" + }, + "value": "70" + }, + "src": "657:16:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1352, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "656:18:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "634:40:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 1360, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1358, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "716:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3438", + "id": 1359, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "730:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_48_by_1", + "typeString": "int_const 48" + }, + "value": "48" + }, + "src": "716:16:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1361, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "715:18:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 1364, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1362, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "738:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "3537", + "id": 1363, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "752:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_57_by_1", + "typeString": "int_const 57" + }, + "value": "57" + }, + "src": "738:16:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 1365, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "737:18:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "715:40:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "errorCall": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1371, + "name": "InvalidAddressString", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1272, + "src": "799:20:11", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1372, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "799:22:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1373, + "nodeType": "RevertStatement", + "src": "792:29:11" + }, + "id": 1374, + "nodeType": "IfStatement", + "src": "711:110:11", + "trueBody": { + "expression": { + "id": 1369, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1367, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "757:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "3438", + "id": 1368, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "771:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_48_by_1", + "typeString": "int_const 48" + }, + "value": "48" + }, + "src": "757:16:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 1370, + "nodeType": "ExpressionStatement", + "src": "757:16:11" + } + }, + "id": 1375, + "nodeType": "IfStatement", + "src": "630:191:11", + "trueBody": { + "expression": { + "id": 1356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1354, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "676:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "3535", + "id": 1355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "690:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_55_by_1", + "typeString": "int_const 55" + }, + "value": "55" + }, + "src": "676:16:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 1357, + "nodeType": "ExpressionStatement", + "src": "676:16:11" + } + }, + "id": 1376, + "nodeType": "IfStatement", + "src": "548:273:11", + "trueBody": { + "expression": { + "id": 1343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1341, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "595:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "3837", + "id": 1342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "609:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_87_by_1", + "typeString": "int_const 87" + }, + "value": "87" + }, + "src": "595:16:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 1344, + "nodeType": "ExpressionStatement", + "src": "595:16:11" + } + }, + { + "expression": { + "id": 1393, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1377, + "name": "addressNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1287, + "src": "836:13:11", + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + }, + "nodeType": "Assignment", + "operator": "|=", + "rightHandSide": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 1382, + "name": "stringByte", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1291, + "src": "869:10:11", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "id": 1381, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "861:7:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 1380, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "861:7:11", + "typeDescriptions": {} + } + }, + "id": 1383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "861:19:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3431", + "id": 1384, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "886:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_41_by_1", + "typeString": "int_const 41" + }, + "value": "41" + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1385, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1314, + "src": "891:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "886:6:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 1387, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "885:8:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "32", + "id": 1388, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "897:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "885:13:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 1390, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "884:15:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "861:38:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "853:7:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 1378, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "853:7:11", + "typeDescriptions": {} + } + }, + "id": 1392, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "853:47:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + }, + "src": "836:64:11", + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + }, + "id": 1394, + "nodeType": "ExpressionStatement", + "src": "836:64:11" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1317, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1314, + "src": "472:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "3432", + "id": 1318, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "476:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_42_by_1", + "typeString": "int_const 42" + }, + "value": "42" + }, + "src": "472:6:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1396, + "initializationExpression": { + "assignments": [ + 1314 + ], + "declarations": [ + { + "constant": false, + "id": 1314, + "mutability": "mutable", + "name": "i", + "nameLocation": "465:1:11", + "nodeType": "VariableDeclaration", + "scope": 1396, + "src": "457:9:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1313, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "457:7:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1316, + "initialValue": { + "hexValue": "32", + "id": 1315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "469:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "VariableDeclarationStatement", + "src": "457:13:11" + }, + "loopExpression": { + "expression": { + "id": 1321, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "480:3:11", + "subExpression": { + "id": 1320, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1314, + "src": "482:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1322, + "nodeType": "ExpressionStatement", + "src": "480:3:11" + }, + "nodeType": "ForStatement", + "src": "452:459:11" + }, + { + "expression": { + "arguments": [ + { + "id": 1399, + "name": "addressNumber", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1287, + "src": "936:13:11", + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 1398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "928:7:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 1397, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "928:7:11", + "typeDescriptions": {} + } + }, + "id": 1400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "928:22:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1278, + "id": 1401, + "nodeType": "Return", + "src": "921:29:11" + } + ] + }, + "id": 1403, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "toAddress", + "nameLocation": "132:9:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1275, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1274, + "mutability": "mutable", + "name": "addressString", + "nameLocation": "156:13:11", + "nodeType": "VariableDeclaration", + "scope": 1403, + "src": "142:27:11", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1273, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "142:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "141:29:11" + }, + "returnParameters": { + "id": 1278, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1277, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1403, + "src": "194:7:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1276, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "194:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "193:9:11" + }, + "scope": 1404, + "src": "123:834:11", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 1498, + "src": "58:901:11", + "usedErrors": [ + 1272 + ], + "usedEvents": [] + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "AddressToString", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "id": 1497, + "linearizedBaseContracts": [ + 1497 + ], + "name": "AddressToString", + "nameLocation": "969:15:11", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 1495, + "nodeType": "Block", + "src": "1065:481:11", + "statements": [ + { + "assignments": [ + 1412 + ], + "declarations": [ + { + "constant": false, + "id": 1412, + "mutability": "mutable", + "name": "addressBytes", + "nameLocation": "1088:12:11", + "nodeType": "VariableDeclaration", + "scope": 1495, + "src": "1075:25:11", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1411, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1075:5:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 1417, + "initialValue": { + "arguments": [ + { + "id": 1415, + "name": "address_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1406, + "src": "1120:8:11", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1413, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1103:3:11", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1414, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1107:12:11", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "1103:16:11", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1103:26:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1075:54:11" + }, + { + "assignments": [ + 1419 + ], + "declarations": [ + { + "constant": false, + "id": 1419, + "mutability": "mutable", + "name": "characters", + "nameLocation": "1152:10:11", + "nodeType": "VariableDeclaration", + "scope": 1495, + "src": "1139:23:11", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1418, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1139:5:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 1421, + "initialValue": { + "hexValue": "30313233343536373839616263646566", + "id": 1420, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1165:18:11", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cb29997ed99ead0db59ce4d12b7d3723198c827273e5796737c926d78019c39f", + "typeString": "literal_string \"0123456789abcdef\"" + }, + "value": "0123456789abcdef" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1139:44:11" + }, + { + "assignments": [ + 1423 + ], + "declarations": [ + { + "constant": false, + "id": 1423, + "mutability": "mutable", + "name": "stringBytes", + "nameLocation": "1206:11:11", + "nodeType": "VariableDeclaration", + "scope": 1495, + "src": "1193:24:11", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1422, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1193:5:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 1428, + "initialValue": { + "arguments": [ + { + "hexValue": "3432", + "id": 1426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1230:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_42_by_1", + "typeString": "int_const 42" + }, + "value": "42" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_42_by_1", + "typeString": "int_const 42" + } + ], + "id": 1425, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "1220:9:11", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 1424, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1224:5:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 1427, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1220:13:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1193:40:11" + }, + { + "expression": { + "id": 1433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1429, + "name": "stringBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1423, + "src": "1244:11:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1431, + "indexExpression": { + "hexValue": "30", + "id": 1430, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1256:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1244:14:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 1432, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1261:3:11", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "typeString": "literal_string \"0\"" + }, + "value": "0" + }, + "src": "1244:20:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 1434, + "nodeType": "ExpressionStatement", + "src": "1244:20:11" + }, + { + "expression": { + "id": 1439, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1435, + "name": "stringBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1423, + "src": "1274:11:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1437, + "indexExpression": { + "hexValue": "31", + "id": 1436, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1286:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1274:14:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "78", + "id": 1438, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1291:3:11", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83", + "typeString": "literal_string \"x\"" + }, + "value": "x" + }, + "src": "1274:20:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 1440, + "nodeType": "ExpressionStatement", + "src": "1274:20:11" + }, + { + "body": { + "id": 1488, + "nodeType": "Block", + "src": "1334:169:11", + "statements": [ + { + "expression": { + "id": 1467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1450, + "name": "stringBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1423, + "src": "1348:11:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1456, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "32", + "id": 1451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1360:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1452, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1442, + "src": "1364:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "32", + "id": 1453, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1368:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "1364:5:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1360:9:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1348:22:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1457, + "name": "characters", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1419, + "src": "1373:10:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1466, + "indexExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 1464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 1460, + "name": "addressBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1412, + "src": "1390:12:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1462, + "indexExpression": { + "id": 1461, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1442, + "src": "1403:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1390:15:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "hexValue": "34", + "id": 1463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1409:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "src": "1390:20:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 1459, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1384:5:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 1458, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1384:5:11", + "typeDescriptions": {} + } + }, + "id": 1465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1384:27:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1373:39:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "1348:64:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 1468, + "nodeType": "ExpressionStatement", + "src": "1348:64:11" + }, + { + "expression": { + "id": 1486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1469, + "name": "stringBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1423, + "src": "1426:11:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1475, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "33", + "id": 1470, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1438:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1471, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1442, + "src": "1442:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "32", + "id": 1472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1446:1:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "1442:5:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1438:9:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1426:22:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "baseExpression": { + "id": 1476, + "name": "characters", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1419, + "src": "1451:10:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1485, + "indexExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 1483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 1479, + "name": "addressBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1412, + "src": "1468:12:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1481, + "indexExpression": { + "id": 1480, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1442, + "src": "1481:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1468:15:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "30783066", + "id": 1482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1486:4:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_15_by_1", + "typeString": "int_const 15" + }, + "value": "0x0f" + }, + "src": "1468:22:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 1478, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1462:5:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 1477, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "1462:5:11", + "typeDescriptions": {} + } + }, + "id": 1484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1462:29:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1451:41:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "1426:66:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 1487, + "nodeType": "ExpressionStatement", + "src": "1426:66:11" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1446, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1444, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1442, + "src": "1321:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "3230", + "id": 1445, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1325:2:11", + "typeDescriptions": { + "typeIdentifier": "t_rational_20_by_1", + "typeString": "int_const 20" + }, + "value": "20" + }, + "src": "1321:6:11", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1489, + "initializationExpression": { + "assignments": [ + 1442 + ], + "declarations": [ + { + "constant": false, + "id": 1442, + "mutability": "mutable", + "name": "i", + "nameLocation": "1318:1:11", + "nodeType": "VariableDeclaration", + "scope": 1489, + "src": "1310:9:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1441, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1310:7:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1443, + "nodeType": "VariableDeclarationStatement", + "src": "1310:9:11" + }, + "loopExpression": { + "expression": { + "id": 1448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "1329:3:11", + "subExpression": { + "id": 1447, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1442, + "src": "1331:1:11", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1449, + "nodeType": "ExpressionStatement", + "src": "1329:3:11" + }, + "nodeType": "ForStatement", + "src": "1305:198:11" + }, + { + "expression": { + "arguments": [ + { + "id": 1492, + "name": "stringBytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1423, + "src": "1527:11:11", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1491, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1520:6:11", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + }, + "typeName": { + "id": 1490, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1520:6:11", + "typeDescriptions": {} + } + }, + "id": 1493, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1520:19:11", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "functionReturnParameters": 1410, + "id": 1494, + "nodeType": "Return", + "src": "1513:26:11" + } + ] + }, + "id": 1496, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "toString", + "nameLocation": "1000:8:11", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1407, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1406, + "mutability": "mutable", + "name": "address_", + "nameLocation": "1017:8:11", + "nodeType": "VariableDeclaration", + "scope": 1496, + "src": "1009:16:11", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1405, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1009:7:11", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1008:18:11" + }, + "returnParameters": { + "id": 1410, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1409, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1496, + "src": "1050:13:11", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1408, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1050:6:11", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1049:15:11" + }, + "scope": 1497, + "src": "991:555:11", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 1498, + "src": "961:587:11", + "usedErrors": [], + "usedEvents": [] + } + ], + "src": "33:1516:11" + }, + "id": 11 + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol": { + "ast": { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol", + "exportedSymbols": { + "GasEstimationType": [ + 1506 + ], + "GasInfo": [ + 1526 + ] + }, + "id": 1527, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1499, + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "33:23:12" + }, + { + "canonicalName": "GasEstimationType", + "documentation": { + "id": 1500, + "nodeType": "StructuredDocumentation", + "src": "58:114:12", + "text": " @title GasEstimationType\n @notice This enum represents the gas estimation types for different chains." + }, + "id": 1506, + "members": [ + { + "id": 1501, + "name": "Default", + "nameLocation": "202:7:12", + "nodeType": "EnumValue", + "src": "202:7:12" + }, + { + "id": 1502, + "name": "OptimismEcotone", + "nameLocation": "215:15:12", + "nodeType": "EnumValue", + "src": "215:15:12" + }, + { + "id": 1503, + "name": "OptimismBedrock", + "nameLocation": "236:15:12", + "nodeType": "EnumValue", + "src": "236:15:12" + }, + { + "id": 1504, + "name": "Arbitrum", + "nameLocation": "257:8:12", + "nodeType": "EnumValue", + "src": "257:8:12" + }, + { + "id": 1505, + "name": "Scroll", + "nameLocation": "271:6:12", + "nodeType": "EnumValue", + "src": "271:6:12" + } + ], + "name": "GasEstimationType", + "nameLocation": "178:17:12", + "nodeType": "EnumDefinition", + "src": "173:106:12" + }, + { + "canonicalName": "GasInfo", + "documentation": { + "id": 1507, + "nodeType": "StructuredDocumentation", + "src": "281:197:12", + "text": " @title GasInfo\n @notice This struct represents the gas pricing information for a specific chain.\n @dev Smaller uint types are used for efficient struct packing to save storage costs." + }, + "id": 1526, + "members": [ + { + "constant": false, + "id": 1510, + "mutability": "mutable", + "name": "gasEstimationType", + "nameLocation": "572:17:12", + "nodeType": "VariableDeclaration", + "scope": 1526, + "src": "565:24:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 1509, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "565:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1513, + "mutability": "mutable", + "name": "l1FeeScalar", + "nameLocation": "700:11:12", + "nodeType": "VariableDeclaration", + "scope": 1526, + "src": "693:18:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 1512, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "693:6:12", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1516, + "mutability": "mutable", + "name": "axelarBaseFee", + "nameLocation": "839:13:12", + "nodeType": "VariableDeclaration", + "scope": 1526, + "src": "831:21:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint128", + "typeString": "uint128" + }, + "typeName": { + "id": 1515, + "name": "uint128", + "nodeType": "ElementaryTypeName", + "src": "831:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint128", + "typeString": "uint128" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1519, + "mutability": "mutable", + "name": "relativeGasPrice", + "nameLocation": "1017:16:12", + "nodeType": "VariableDeclaration", + "scope": 1526, + "src": "1009:24:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint128", + "typeString": "uint128" + }, + "typeName": { + "id": 1518, + "name": "uint128", + "nodeType": "ElementaryTypeName", + "src": "1009:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint128", + "typeString": "uint128" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1522, + "mutability": "mutable", + "name": "relativeBlobBaseFee", + "nameLocation": "1248:19:12", + "nodeType": "VariableDeclaration", + "scope": 1526, + "src": "1240:27:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint128", + "typeString": "uint128" + }, + "typeName": { + "id": 1521, + "name": "uint128", + "nodeType": "ElementaryTypeName", + "src": "1240:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint128", + "typeString": "uint128" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1525, + "mutability": "mutable", + "name": "expressFee", + "nameLocation": "1367:10:12", + "nodeType": "VariableDeclaration", + "scope": 1526, + "src": "1359:18:12", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint128", + "typeString": "uint128" + }, + "typeName": { + "id": 1524, + "name": "uint128", + "nodeType": "ElementaryTypeName", + "src": "1359:7:12", + "typeDescriptions": { + "typeIdentifier": "t_uint128", + "typeString": "uint128" + } + }, + "visibility": "internal" + } + ], + "name": "GasInfo", + "nameLocation": "486:7:12", + "nodeType": "StructDefinition", + "scope": 1527, + "src": "479:901:12", + "visibility": "public" + } + ], + "src": "33:1348:12" + }, + "id": 12 + }, + "src/__tests__/contracts/AgoricProxy.sol": { + "ast": { + "absolutePath": "src/__tests__/contracts/AgoricProxy.sol", + "exportedSymbols": { + "AddressToString": [ + 1497 + ], + "AgoricProxy": [ + 1973 + ], + "AgoricResponse": [ + 1551 + ], + "AxelarExecutable": [ + 137 + ], + "CallParams": [ + 1556 + ], + "CallResult": [ + 1544 + ], + "IAxelarGasService": [ + 655 + ], + "IERC20": [ + 1080 + ], + "Ownable": [ + 2109 + ], + "StringToAddress": [ + 1404 + ], + "Wallet": [ + 1745 + ] + }, + "id": 1974, + "license": "Apache-2.0", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1528, + "literals": [ + "solidity", + "^", + "0.8", + ".20" + ], + "nodeType": "PragmaDirective", + "src": "39:24:13" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", + "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", + "id": 1530, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1974, + "sourceUnit": 138, + "src": "65:115:13", + "symbolAliases": [ + { + "foreign": { + "id": 1529, + "name": "AxelarExecutable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 137, + "src": "73:16:13", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", + "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", + "id": 1532, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1974, + "sourceUnit": 656, + "src": "181:117:13", + "symbolAliases": [ + { + "foreign": { + "id": 1531, + "name": "IAxelarGasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 655, + "src": "189:17:13", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol", + "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol", + "id": 1534, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1974, + "sourceUnit": 1081, + "src": "299:95:13", + "symbolAliases": [ + { + "foreign": { + "id": 1533, + "name": "IERC20", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1080, + "src": "307:6:13", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", + "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", + "id": 1537, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1974, + "sourceUnit": 1498, + "src": "395:122:13", + "symbolAliases": [ + { + "foreign": { + "id": 1535, + "name": "StringToAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1404, + "src": "403:15:13", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 1536, + "name": "AddressToString", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1497, + "src": "420:15:13", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "src/__tests__/contracts/Ownable.sol", + "file": "./Ownable.sol", + "id": 1539, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 1974, + "sourceUnit": 2110, + "src": "518:38:13", + "symbolAliases": [ + { + "foreign": { + "id": 1538, + "name": "Ownable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2109, + "src": "526:7:13", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "canonicalName": "CallResult", + "id": 1544, + "members": [ + { + "constant": false, + "id": 1541, + "mutability": "mutable", + "name": "success", + "nameLocation": "587:7:13", + "nodeType": "VariableDeclaration", + "scope": 1544, + "src": "582:12:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1540, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "582:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1543, + "mutability": "mutable", + "name": "result", + "nameLocation": "606:6:13", + "nodeType": "VariableDeclaration", + "scope": 1544, + "src": "600:12:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1542, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "600:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "name": "CallResult", + "nameLocation": "565:10:13", + "nodeType": "StructDefinition", + "scope": 1974, + "src": "558:57:13", + "visibility": "public" + }, + { + "canonicalName": "AgoricResponse", + "id": 1551, + "members": [ + { + "constant": false, + "id": 1546, + "mutability": "mutable", + "name": "isContractCallResult", + "nameLocation": "728:20:13", + "nodeType": "VariableDeclaration", + "scope": 1551, + "src": "723:25:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1545, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "723:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1550, + "mutability": "mutable", + "name": "data", + "nameLocation": "767:4:13", + "nodeType": "VariableDeclaration", + "scope": 1551, + "src": "754:17:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", + "typeString": "struct CallResult[]" + }, + "typeName": { + "baseType": { + "id": 1548, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1547, + "name": "CallResult", + "nameLocations": [ + "754:10:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1544, + "src": "754:10:13" + }, + "referencedDeclaration": 1544, + "src": "754:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", + "typeString": "struct CallResult" + } + }, + "id": 1549, + "nodeType": "ArrayTypeName", + "src": "754:12:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", + "typeString": "struct CallResult[]" + } + }, + "visibility": "internal" + } + ], + "name": "AgoricResponse", + "nameLocation": "624:14:13", + "nodeType": "StructDefinition", + "scope": 1974, + "src": "617:157:13", + "visibility": "public" + }, + { + "canonicalName": "CallParams", + "id": 1556, + "members": [ + { + "constant": false, + "id": 1553, + "mutability": "mutable", + "name": "target", + "nameLocation": "808:6:13", + "nodeType": "VariableDeclaration", + "scope": 1556, + "src": "800:14:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1552, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "800:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1555, + "mutability": "mutable", + "name": "data", + "nameLocation": "826:4:13", + "nodeType": "VariableDeclaration", + "scope": 1556, + "src": "820:10:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1554, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "820:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "name": "CallParams", + "nameLocation": "783:10:13", + "nodeType": "StructDefinition", + "scope": 1974, + "src": "776:57:13", + "visibility": "public" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 1557, + "name": "AxelarExecutable", + "nameLocations": [ + "854:16:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 137, + "src": "854:16:13" + }, + "id": 1558, + "nodeType": "InheritanceSpecifier", + "src": "854:16:13" + }, + { + "baseName": { + "id": 1559, + "name": "Ownable", + "nameLocations": [ + "872:7:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2109, + "src": "872:7:13" + }, + "id": 1560, + "nodeType": "InheritanceSpecifier", + "src": "872:7:13" + } + ], + "canonicalName": "Wallet", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 1745, + "linearizedBaseContracts": [ + 1745, + 2109, + 137, + 178 + ], + "name": "Wallet", + "nameLocation": "844:6:13", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "functionSelector": "6a22d8cc", + "id": 1563, + "mutability": "mutable", + "name": "gasService", + "nameLocation": "911:10:13", + "nodeType": "VariableDeclaration", + "scope": 1745, + "src": "886:35:13", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + }, + "typeName": { + "id": 1562, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1561, + "name": "IAxelarGasService", + "nameLocations": [ + "886:17:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 655, + "src": "886:17:13" + }, + "referencedDeclaration": 655, + "src": "886:17:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "visibility": "public" + }, + { + "anonymous": false, + "eventSelector": "1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2", + "id": 1571, + "name": "MulticallExecuted", + "nameLocation": "934:17:13", + "nodeType": "EventDefinition", + "parameters": { + "id": 1570, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1565, + "indexed": true, + "mutability": "mutable", + "name": "executor", + "nameLocation": "968:8:13", + "nodeType": "VariableDeclaration", + "scope": 1571, + "src": "952:24:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1564, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "952:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1569, + "indexed": false, + "mutability": "mutable", + "name": "results", + "nameLocation": "991:7:13", + "nodeType": "VariableDeclaration", + "scope": 1571, + "src": "978:20:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult[]" + }, + "typeName": { + "baseType": { + "id": 1567, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1566, + "name": "CallResult", + "nameLocations": [ + "978:10:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1544, + "src": "978:10:13" + }, + "referencedDeclaration": 1544, + "src": "978:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", + "typeString": "struct CallResult" + } + }, + "id": 1568, + "nodeType": "ArrayTypeName", + "src": "978:12:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", + "typeString": "struct CallResult[]" + } + }, + "visibility": "internal" + } + ], + "src": "951:48:13" + }, + "src": "928:72:13" + }, + { + "anonymous": false, + "eventSelector": "88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874", + "id": 1577, + "name": "Received", + "nameLocation": "1011:8:13", + "nodeType": "EventDefinition", + "parameters": { + "id": 1576, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1573, + "indexed": true, + "mutability": "mutable", + "name": "sender", + "nameLocation": "1036:6:13", + "nodeType": "VariableDeclaration", + "scope": 1577, + "src": "1020:22:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1572, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1020:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1575, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "1052:6:13", + "nodeType": "VariableDeclaration", + "scope": 1577, + "src": "1044:14:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1574, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1044:7:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1019:40:13" + }, + "src": "1005:55:13" + }, + { + "body": { + "id": 1598, + "nodeType": "Block", + "src": "1213:61:13", + "statements": [ + { + "expression": { + "id": 1596, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1592, + "name": "gasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1563, + "src": "1223:10:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 1594, + "name": "gasReceiver_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1581, + "src": "1254:12:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1593, + "name": "IAxelarGasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 655, + "src": "1236:17:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IAxelarGasService_$655_$", + "typeString": "type(contract IAxelarGasService)" + } + }, + "id": 1595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1236:31:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "src": "1223:44:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "id": 1597, + "nodeType": "ExpressionStatement", + "src": "1223:44:13" + } + ] + }, + "id": 1599, + "implemented": true, + "kind": "constructor", + "modifiers": [ + { + "arguments": [ + { + "id": 1586, + "name": "gateway_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1579, + "src": "1187:8:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 1587, + "kind": "baseConstructorSpecifier", + "modifierName": { + "id": 1585, + "name": "AxelarExecutable", + "nameLocations": [ + "1170:16:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 137, + "src": "1170:16:13" + }, + "nodeType": "ModifierInvocation", + "src": "1170:26:13" + }, + { + "arguments": [ + { + "id": 1589, + "name": "owner_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1583, + "src": "1205:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "id": 1590, + "kind": "baseConstructorSpecifier", + "modifierName": { + "id": 1588, + "name": "Ownable", + "nameLocations": [ + "1197:7:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2109, + "src": "1197:7:13" + }, + "nodeType": "ModifierInvocation", + "src": "1197:15:13" + } + ], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1584, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1579, + "mutability": "mutable", + "name": "gateway_", + "nameLocation": "1095:8:13", + "nodeType": "VariableDeclaration", + "scope": 1599, + "src": "1087:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1578, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1087:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1581, + "mutability": "mutable", + "name": "gasReceiver_", + "nameLocation": "1121:12:13", + "nodeType": "VariableDeclaration", + "scope": 1599, + "src": "1113:20:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1580, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1113:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1583, + "mutability": "mutable", + "name": "owner_", + "nameLocation": "1157:6:13", + "nodeType": "VariableDeclaration", + "scope": 1599, + "src": "1143:20:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1582, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1143:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1077:92:13" + }, + "returnParameters": { + "id": 1591, + "nodeType": "ParameterList", + "parameters": [], + "src": "1213:0:13" + }, + "scope": 1745, + "src": "1066:208:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1684, + "nodeType": "Block", + "src": "1377:518:13", + "statements": [ + { + "assignments": [ + 1612 + ], + "declarations": [ + { + "constant": false, + "id": 1612, + "mutability": "mutable", + "name": "calls", + "nameLocation": "1407:5:13", + "nodeType": "VariableDeclaration", + "scope": 1684, + "src": "1387:25:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallParams[]" + }, + "typeName": { + "baseType": { + "id": 1610, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1609, + "name": "CallParams", + "nameLocations": [ + "1387:10:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1556, + "src": "1387:10:13" + }, + "referencedDeclaration": 1556, + "src": "1387:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallParams_$1556_storage_ptr", + "typeString": "struct CallParams" + } + }, + "id": 1611, + "nodeType": "ArrayTypeName", + "src": "1387:12:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_storage_$dyn_storage_ptr", + "typeString": "struct CallParams[]" + } + }, + "visibility": "internal" + } + ], + "id": 1620, + "initialValue": { + "arguments": [ + { + "id": 1615, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1601, + "src": "1426:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "components": [ + { + "baseExpression": { + "id": 1616, + "name": "CallParams", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1556, + "src": "1436:10:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_CallParams_$1556_storage_ptr_$", + "typeString": "type(struct CallParams storage pointer)" + } + }, + "id": 1617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1436:12:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr_$", + "typeString": "type(struct CallParams memory[] memory)" + } + } + ], + "id": 1618, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "1435:14:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr_$", + "typeString": "type(struct CallParams memory[] memory)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_type$_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr_$", + "typeString": "type(struct CallParams memory[] memory)" + } + ], + "expression": { + "id": 1613, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1415:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1614, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1419:6:13", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "1415:10:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 1619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1415:35:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallParams memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1387:63:13" + }, + { + "assignments": [ + 1625 + ], + "declarations": [ + { + "constant": false, + "id": 1625, + "mutability": "mutable", + "name": "results", + "nameLocation": "1481:7:13", + "nodeType": "VariableDeclaration", + "scope": 1684, + "src": "1461:27:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult[]" + }, + "typeName": { + "baseType": { + "id": 1623, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1622, + "name": "CallResult", + "nameLocations": [ + "1461:10:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1544, + "src": "1461:10:13" + }, + "referencedDeclaration": 1544, + "src": "1461:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", + "typeString": "struct CallResult" + } + }, + "id": 1624, + "nodeType": "ArrayTypeName", + "src": "1461:12:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", + "typeString": "struct CallResult[]" + } + }, + "visibility": "internal" + } + ], + "id": 1633, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 1630, + "name": "calls", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1612, + "src": "1508:5:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallParams memory[] memory" + } + }, + "id": 1631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1514:6:13", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1508:12:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1629, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "1491:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct CallResult memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 1627, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1626, + "name": "CallResult", + "nameLocations": [ + "1495:10:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1544, + "src": "1495:10:13" + }, + "referencedDeclaration": 1544, + "src": "1495:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", + "typeString": "struct CallResult" + } + }, + "id": 1628, + "nodeType": "ArrayTypeName", + "src": "1495:12:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", + "typeString": "struct CallResult[]" + } + } + }, + "id": 1632, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1491:30:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1461:60:13" + }, + { + "body": { + "id": 1674, + "nodeType": "Block", + "src": "1575:236:13", + "statements": [ + { + "assignments": [ + 1646, + 1648 + ], + "declarations": [ + { + "constant": false, + "id": 1646, + "mutability": "mutable", + "name": "success", + "nameLocation": "1595:7:13", + "nodeType": "VariableDeclaration", + "scope": 1674, + "src": "1590:12:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1645, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1590:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1648, + "mutability": "mutable", + "name": "result", + "nameLocation": "1617:6:13", + "nodeType": "VariableDeclaration", + "scope": 1674, + "src": "1604:19:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1647, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1604:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 1659, + "initialValue": { + "arguments": [ + { + "expression": { + "baseExpression": { + "id": 1654, + "name": "calls", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1612, + "src": "1665:5:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallParams memory[] memory" + } + }, + "id": 1656, + "indexExpression": { + "id": 1655, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1635, + "src": "1671:1:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1665:8:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallParams_$1556_memory_ptr", + "typeString": "struct CallParams memory" + } + }, + "id": 1657, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1674:4:13", + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": 1555, + "src": "1665:13:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1649, + "name": "calls", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1612, + "src": "1627:5:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallParams memory[] memory" + } + }, + "id": 1651, + "indexExpression": { + "id": 1650, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1635, + "src": "1633:1:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1627:8:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallParams_$1556_memory_ptr", + "typeString": "struct CallParams memory" + } + }, + "id": 1652, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1636:6:13", + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 1553, + "src": "1627:15:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1643:4:13", + "memberName": "call", + "nodeType": "MemberAccess", + "src": "1627:20:13", + "typeDescriptions": { + "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) payable returns (bool,bytes memory)" + } + }, + "id": 1658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1627:65:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1589:103:13" + }, + { + "expression": { + "arguments": [ + { + "id": 1661, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1646, + "src": "1714:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "436f6e74726163742063616c6c206661696c6564", + "id": 1662, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1723:22:13", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e", + "typeString": "literal_string \"Contract call failed\"" + }, + "value": "Contract call failed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e", + "typeString": "literal_string \"Contract call failed\"" + } + ], + "id": 1660, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1706:7:13", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 1663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1706:40:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1664, + "nodeType": "ExpressionStatement", + "src": "1706:40:13" + }, + { + "expression": { + "id": 1672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1665, + "name": "results", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1625, + "src": "1760:7:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + }, + "id": 1667, + "indexExpression": { + "id": 1666, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1635, + "src": "1768:1:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1760:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", + "typeString": "struct CallResult memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 1669, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1646, + "src": "1784:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 1670, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1648, + "src": "1793:6:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1668, + "name": "CallResult", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1544, + "src": "1773:10:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_CallResult_$1544_storage_ptr_$", + "typeString": "type(struct CallResult storage pointer)" + } + }, + "id": 1671, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1773:27:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", + "typeString": "struct CallResult memory" + } + }, + "src": "1760:40:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", + "typeString": "struct CallResult memory" + } + }, + "id": 1673, + "nodeType": "ExpressionStatement", + "src": "1760:40:13" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1641, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1638, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1635, + "src": "1552:1:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1639, + "name": "calls", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1612, + "src": "1556:5:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallParams memory[] memory" + } + }, + "id": 1640, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1562:6:13", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1556:12:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1552:16:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1675, + "initializationExpression": { + "assignments": [ + 1635 + ], + "declarations": [ + { + "constant": false, + "id": 1635, + "mutability": "mutable", + "name": "i", + "nameLocation": "1545:1:13", + "nodeType": "VariableDeclaration", + "scope": 1675, + "src": "1537:9:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1634, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1537:7:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1637, + "initialValue": { + "hexValue": "30", + "id": 1636, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1549:1:13", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1537:13:13" + }, + "loopExpression": { + "expression": { + "id": 1643, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1570:3:13", + "subExpression": { + "id": 1642, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1635, + "src": "1570:1:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1644, + "nodeType": "ExpressionStatement", + "src": "1570:3:13" + }, + "nodeType": "ForStatement", + "src": "1532:279:13" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 1677, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1844:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1678, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1848:6:13", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1844:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1679, + "name": "results", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1625, + "src": "1856:7:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + ], + "id": 1676, + "name": "MulticallExecuted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1571, + "src": "1826:17:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$returns$__$", + "typeString": "function (address,struct CallResult memory[] memory)" + } + }, + "id": 1680, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1826:38:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1681, + "nodeType": "EmitStatement", + "src": "1821:43:13" + }, + { + "expression": { + "id": 1682, + "name": "results", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1625, + "src": "1881:7:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + }, + "functionReturnParameters": 1607, + "id": 1683, + "nodeType": "Return", + "src": "1874:14:13" + } + ] + }, + "id": 1685, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_multicall", + "nameLocation": "1289:10:13", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1602, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1601, + "mutability": "mutable", + "name": "payload", + "nameLocation": "1324:7:13", + "nodeType": "VariableDeclaration", + "scope": 1685, + "src": "1309:22:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1600, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1309:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1299:38:13" + }, + "returnParameters": { + "id": 1607, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1606, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1685, + "src": "1356:19:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult[]" + }, + "typeName": { + "baseType": { + "id": 1604, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1603, + "name": "CallResult", + "nameLocations": [ + "1356:10:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1544, + "src": "1356:10:13" + }, + "referencedDeclaration": 1544, + "src": "1356:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", + "typeString": "struct CallResult" + } + }, + "id": 1605, + "nodeType": "ArrayTypeName", + "src": "1356:12:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", + "typeString": "struct CallResult[]" + } + }, + "visibility": "internal" + } + ], + "src": "1355:21:13" + }, + "scope": 1745, + "src": "1280:615:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 122 + ], + "body": { + "id": 1702, + "nodeType": "Block", + "src": "2080:36:13", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1699, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1691, + "src": "2101:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1698, + "name": "_multicall", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1685, + "src": "2090:10:13", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_calldata_ptr_$returns$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (bytes calldata) returns (struct CallResult memory[] memory)" + } + }, + "id": 1700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2090:19:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + }, + "id": 1701, + "nodeType": "ExpressionStatement", + "src": "2090:19:13" + } + ] + }, + "id": 1703, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 1695, + "name": "sourceAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1689, + "src": "2065:13:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "id": 1696, + "kind": "modifierInvocation", + "modifierName": { + "id": 1694, + "name": "onlyOwner", + "nameLocations": [ + "2055:9:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2016, + "src": "2055:9:13" + }, + "nodeType": "ModifierInvocation", + "src": "2055:24:13" + } + ], + "name": "_execute", + "nameLocation": "1910:8:13", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 1693, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2046:8:13" + }, + "parameters": { + "id": 1692, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1687, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1703, + "src": "1928:15:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1686, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1928:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1689, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "1985:13:13", + "nodeType": "VariableDeclaration", + "scope": 1703, + "src": "1969:29:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1688, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1969:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1691, + "mutability": "mutable", + "name": "payload", + "nameLocation": "2023:7:13", + "nodeType": "VariableDeclaration", + "scope": 1703, + "src": "2008:22:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1690, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2008:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1918:118:13" + }, + "returnParameters": { + "id": 1697, + "nodeType": "ParameterList", + "parameters": [], + "src": "2080:0:13" + }, + "scope": 1745, + "src": "1901:215:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 136 + ], + "body": { + "id": 1721, + "nodeType": "Block", + "src": "2358:36:13", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1718, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1709, + "src": "2379:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 1717, + "name": "_multicall", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1685, + "src": "2368:10:13", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_calldata_ptr_$returns$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (bytes calldata) returns (struct CallResult memory[] memory)" + } + }, + "id": 1719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2368:19:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + }, + "id": 1720, + "nodeType": "ExpressionStatement", + "src": "2368:19:13" + } + ] + }, + "id": 1722, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_executeWithToken", + "nameLocation": "2131:17:13", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 1715, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2349:8:13" + }, + "parameters": { + "id": 1714, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1705, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1722, + "src": "2158:15:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1704, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2158:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1707, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1722, + "src": "2199:15:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1706, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2199:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1709, + "mutability": "mutable", + "name": "payload", + "nameLocation": "2257:7:13", + "nodeType": "VariableDeclaration", + "scope": 1722, + "src": "2242:22:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1708, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2242:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1711, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1722, + "src": "2274:15:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1710, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2274:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1713, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1722, + "src": "2315:7:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1712, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2315:7:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2148:191:13" + }, + "returnParameters": { + "id": 1716, + "nodeType": "ParameterList", + "parameters": [], + "src": "2358:0:13" + }, + "scope": 1745, + "src": "2122:272:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 1732, + "nodeType": "Block", + "src": "2427:53:13", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 1726, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2451:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2455:6:13", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2451:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 1728, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2463:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2467:5:13", + "memberName": "value", + "nodeType": "MemberAccess", + "src": "2463:9:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1725, + "name": "Received", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1577, + "src": "2442:8:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 1730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2442:31:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1731, + "nodeType": "EmitStatement", + "src": "2437:36:13" + } + ] + }, + "id": 1733, + "implemented": true, + "kind": "receive", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1723, + "nodeType": "ParameterList", + "parameters": [], + "src": "2407:2:13" + }, + "returnParameters": { + "id": 1724, + "nodeType": "ParameterList", + "parameters": [], + "src": "2427:0:13" + }, + "scope": 1745, + "src": "2400:80:13", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 1743, + "nodeType": "Block", + "src": "2514:53:13", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 1737, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2538:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2542:6:13", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2538:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 1739, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2550:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2554:5:13", + "memberName": "value", + "nodeType": "MemberAccess", + "src": "2550:9:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1736, + "name": "Received", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1577, + "src": "2529:8:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 1741, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2529:31:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1742, + "nodeType": "EmitStatement", + "src": "2524:36:13" + } + ] + }, + "id": 1744, + "implemented": true, + "kind": "fallback", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1734, + "nodeType": "ParameterList", + "parameters": [], + "src": "2494:2:13" + }, + "returnParameters": { + "id": 1735, + "nodeType": "ParameterList", + "parameters": [], + "src": "2514:0:13" + }, + "scope": 1745, + "src": "2486:81:13", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1974, + "src": "835:1734:13", + "usedErrors": [ + 143, + 145, + 1983, + 1988 + ], + "usedEvents": [ + 1571, + 1577, + 1994 + ] + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 1746, + "name": "AxelarExecutable", + "nameLocations": [ + "2595:16:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 137, + "src": "2595:16:13" + }, + "id": 1747, + "nodeType": "InheritanceSpecifier", + "src": "2595:16:13" + } + ], + "canonicalName": "AgoricProxy", + "contractDependencies": [ + 1745 + ], + "contractKind": "contract", + "fullyImplemented": true, + "id": 1973, + "linearizedBaseContracts": [ + 1973, + 137, + 178 + ], + "name": "AgoricProxy", + "nameLocation": "2580:11:13", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 1750, + "libraryName": { + "id": 1748, + "name": "StringToAddress", + "nameLocations": [ + "2624:15:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1404, + "src": "2624:15:13" + }, + "nodeType": "UsingForDirective", + "src": "2618:33:13", + "typeName": { + "id": 1749, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2644:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + } + }, + { + "global": false, + "id": 1753, + "libraryName": { + "id": 1751, + "name": "AddressToString", + "nameLocations": [ + "2662:15:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1497, + "src": "2662:15:13" + }, + "nodeType": "UsingForDirective", + "src": "2656:34:13", + "typeName": { + "id": 1752, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2682:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + { + "constant": false, + "id": 1755, + "mutability": "mutable", + "name": "_gateway", + "nameLocation": "2704:8:13", + "nodeType": "VariableDeclaration", + "scope": 1973, + "src": "2696:16:13", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1754, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2696:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "functionSelector": "6a22d8cc", + "id": 1758, + "mutability": "immutable", + "name": "gasService", + "nameLocation": "2753:10:13", + "nodeType": "VariableDeclaration", + "scope": 1973, + "src": "2718:45:13", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + }, + "typeName": { + "id": 1757, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1756, + "name": "IAxelarGasService", + "nameLocations": [ + "2718:17:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 655, + "src": "2718:17:13" + }, + "referencedDeclaration": 655, + "src": "2718:17:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "1c93b03a", + "id": 1760, + "mutability": "mutable", + "name": "chainName", + "nameLocation": "2783:9:13", + "nodeType": "VariableDeclaration", + "scope": 1973, + "src": "2769:23:13", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 1759, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2769:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "public" + }, + { + "anonymous": false, + "eventSelector": "9281645ccd9d592d9f6456fd9b95f6d2e0d36ebcc2f387399d5ac2b7c7ad7e6e", + "id": 1770, + "name": "SmartWalletCreated", + "nameLocation": "2805:18:13", + "nodeType": "EventDefinition", + "parameters": { + "id": 1769, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1762, + "indexed": true, + "mutability": "mutable", + "name": "wallet", + "nameLocation": "2849:6:13", + "nodeType": "VariableDeclaration", + "scope": 1770, + "src": "2833:22:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1761, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2833:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1764, + "indexed": false, + "mutability": "mutable", + "name": "owner", + "nameLocation": "2872:5:13", + "nodeType": "VariableDeclaration", + "scope": 1770, + "src": "2865:12:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1763, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2865:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1766, + "indexed": false, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "2894:11:13", + "nodeType": "VariableDeclaration", + "scope": 1770, + "src": "2887:18:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1765, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2887:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1768, + "indexed": false, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "2922:13:13", + "nodeType": "VariableDeclaration", + "scope": 1770, + "src": "2915:20:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1767, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2915:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2823:118:13" + }, + "src": "2799:143:13" + }, + { + "anonymous": false, + "eventSelector": "ea1a07f81079879fea1a2eabafefd6f25bc76921237faf7fce963aeaa53c7ea1", + "id": 1778, + "name": "CrossChainCallSent", + "nameLocation": "2953:18:13", + "nodeType": "EventDefinition", + "parameters": { + "id": 1777, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1772, + "indexed": false, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "2988:16:13", + "nodeType": "VariableDeclaration", + "scope": 1778, + "src": "2981:23:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1771, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2981:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1774, + "indexed": false, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "3021:18:13", + "nodeType": "VariableDeclaration", + "scope": 1778, + "src": "3014:25:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1773, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3014:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1776, + "indexed": false, + "mutability": "mutable", + "name": "payload", + "nameLocation": "3055:7:13", + "nodeType": "VariableDeclaration", + "scope": 1778, + "src": "3049:13:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1775, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3049:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2971:97:13" + }, + "src": "2947:122:13" + }, + { + "anonymous": false, + "eventSelector": "88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874", + "id": 1784, + "name": "Received", + "nameLocation": "3080:8:13", + "nodeType": "EventDefinition", + "parameters": { + "id": 1783, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1780, + "indexed": true, + "mutability": "mutable", + "name": "sender", + "nameLocation": "3105:6:13", + "nodeType": "VariableDeclaration", + "scope": 1784, + "src": "3089:22:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1779, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3089:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1782, + "indexed": false, + "mutability": "mutable", + "name": "amount", + "nameLocation": "3121:6:13", + "nodeType": "VariableDeclaration", + "scope": 1784, + "src": "3113:14:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1781, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3113:7:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3088:40:13" + }, + "src": "3074:55:13" + }, + { + "body": { + "id": 1810, + "nodeType": "Block", + "src": "3270:122:13", + "statements": [ + { + "expression": { + "id": 1800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1796, + "name": "gasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1758, + "src": "3280:10:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 1798, + "name": "gasReceiver_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1788, + "src": "3311:12:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1797, + "name": "IAxelarGasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 655, + "src": "3293:17:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IAxelarGasService_$655_$", + "typeString": "type(contract IAxelarGasService)" + } + }, + "id": 1799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3293:31:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "src": "3280:44:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "id": 1801, + "nodeType": "ExpressionStatement", + "src": "3280:44:13" + }, + { + "expression": { + "id": 1804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1802, + "name": "_gateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1755, + "src": "3334:8:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1803, + "name": "gateway_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1786, + "src": "3345:8:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3334:19:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1805, + "nodeType": "ExpressionStatement", + "src": "3334:19:13" + }, + { + "expression": { + "id": 1808, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1806, + "name": "chainName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1760, + "src": "3363:9:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1807, + "name": "chainName_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1790, + "src": "3375:10:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "3363:22:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 1809, + "nodeType": "ExpressionStatement", + "src": "3363:22:13" + } + ] + }, + "id": 1811, + "implemented": true, + "kind": "constructor", + "modifiers": [ + { + "arguments": [ + { + "id": 1793, + "name": "gateway_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1786, + "src": "3260:8:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 1794, + "kind": "baseConstructorSpecifier", + "modifierName": { + "id": 1792, + "name": "AxelarExecutable", + "nameLocations": [ + "3243:16:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 137, + "src": "3243:16:13" + }, + "nodeType": "ModifierInvocation", + "src": "3243:26:13" + } + ], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1791, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1786, + "mutability": "mutable", + "name": "gateway_", + "nameLocation": "3164:8:13", + "nodeType": "VariableDeclaration", + "scope": 1811, + "src": "3156:16:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1785, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3156:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1788, + "mutability": "mutable", + "name": "gasReceiver_", + "nameLocation": "3190:12:13", + "nodeType": "VariableDeclaration", + "scope": 1811, + "src": "3182:20:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1787, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3182:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1790, + "mutability": "mutable", + "name": "chainName_", + "nameLocation": "3226:10:13", + "nodeType": "VariableDeclaration", + "scope": 1811, + "src": "3212:24:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1789, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3212:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "3146:96:13" + }, + "returnParameters": { + "id": 1795, + "nodeType": "ParameterList", + "parameters": [], + "src": "3270:0:13" + }, + "scope": 1973, + "src": "3135:257:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1836, + "nodeType": "Block", + "src": "3471:142:13", + "statements": [ + { + "assignments": [ + 1819 + ], + "declarations": [ + { + "constant": false, + "id": 1819, + "mutability": "mutable", + "name": "newWallet", + "nameLocation": "3489:9:13", + "nodeType": "VariableDeclaration", + "scope": 1836, + "src": "3481:17:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1818, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3481:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 1833, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 1825, + "name": "_gateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1755, + "src": "3533:8:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 1828, + "name": "gasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1758, + "src": "3551:10:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + ], + "id": 1827, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3543:7:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 1826, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3543:7:13", + "typeDescriptions": {} + } + }, + "id": 1829, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3543:19:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1830, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1813, + "src": "3564:5:13", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "3522:10:13", + "typeDescriptions": { + "typeIdentifier": "t_function_creation_nonpayable$_t_address_$_t_address_$_t_string_memory_ptr_$returns$_t_contract$_Wallet_$1745_$", + "typeString": "function (address,address,string memory) returns (contract Wallet)" + }, + "typeName": { + "id": 1823, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1822, + "name": "Wallet", + "nameLocations": [ + "3526:6:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1745, + "src": "3526:6:13" + }, + "referencedDeclaration": 1745, + "src": "3526:6:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Wallet_$1745", + "typeString": "contract Wallet" + } + } + }, + "id": 1831, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3522:48:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_Wallet_$1745", + "typeString": "contract Wallet" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Wallet_$1745", + "typeString": "contract Wallet" + } + ], + "id": 1821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3501:7:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 1820, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3501:7:13", + "typeDescriptions": {} + } + }, + "id": 1832, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3501:79:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3481:99:13" + }, + { + "expression": { + "id": 1834, + "name": "newWallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1819, + "src": "3597:9:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1817, + "id": 1835, + "nodeType": "Return", + "src": "3590:16:13" + } + ] + }, + "functionSelector": "5e8846f6", + "id": 1837, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "createSmartWallet", + "nameLocation": "3407:17:13", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1814, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1813, + "mutability": "mutable", + "name": "owner", + "nameLocation": "3439:5:13", + "nodeType": "VariableDeclaration", + "scope": 1837, + "src": "3425:19:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1812, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3425:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "3424:21:13" + }, + "returnParameters": { + "id": 1817, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1816, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1837, + "src": "3462:7:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1815, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3462:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3461:9:13" + }, + "scope": 1973, + "src": "3398:215:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 122 + ], + "body": { + "id": 1907, + "nodeType": "Block", + "src": "3773:569:13", + "statements": [ + { + "assignments": [ + 1848 + ], + "declarations": [ + { + "constant": false, + "id": 1848, + "mutability": "mutable", + "name": "smartWalletAddress", + "nameLocation": "3791:18:13", + "nodeType": "VariableDeclaration", + "scope": 1907, + "src": "3783:26:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1847, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3783:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 1852, + "initialValue": { + "arguments": [ + { + "id": 1850, + "name": "sourceAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1841, + "src": "3830:13:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1849, + "name": "createSmartWallet", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1837, + "src": "3812:17:13", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) returns (address)" + } + }, + "id": 1851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3812:32:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3783:61:13" + }, + { + "eventCall": { + "arguments": [ + { + "id": 1854, + "name": "smartWalletAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1848, + "src": "3891:18:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1855, + "name": "sourceAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1841, + "src": "3923:13:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1856, + "name": "sourceChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1839, + "src": "3950:11:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1857, + "name": "sourceAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1841, + "src": "3975:13:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 1853, + "name": "SmartWalletCreated", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1770, + "src": "3859:18:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory,string memory,string memory)" + } + }, + "id": 1858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3859:139:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1859, + "nodeType": "EmitStatement", + "src": "3854:144:13" + }, + { + "assignments": [ + 1864 + ], + "declarations": [ + { + "constant": false, + "id": 1864, + "mutability": "mutable", + "name": "results", + "nameLocation": "4028:7:13", + "nodeType": "VariableDeclaration", + "scope": 1907, + "src": "4008:27:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult[]" + }, + "typeName": { + "baseType": { + "id": 1862, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1861, + "name": "CallResult", + "nameLocations": [ + "4008:10:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1544, + "src": "4008:10:13" + }, + "referencedDeclaration": 1544, + "src": "4008:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", + "typeString": "struct CallResult" + } + }, + "id": 1863, + "nodeType": "ArrayTypeName", + "src": "4008:12:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", + "typeString": "struct CallResult[]" + } + }, + "visibility": "internal" + } + ], + "id": 1871, + "initialValue": { + "arguments": [ + { + "hexValue": "31", + "id": 1869, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4055:1:13", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 1868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "4038:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct CallResult memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 1866, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1865, + "name": "CallResult", + "nameLocations": [ + "4042:10:13" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1544, + "src": "4042:10:13" + }, + "referencedDeclaration": 1544, + "src": "4042:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", + "typeString": "struct CallResult" + } + }, + "id": 1867, + "nodeType": "ArrayTypeName", + "src": "4042:12:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", + "typeString": "struct CallResult[]" + } + } + }, + "id": 1870, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4038:19:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4008:49:13" + }, + { + "expression": { + "id": 1882, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1872, + "name": "results", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1864, + "src": "4068:7:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + }, + "id": 1874, + "indexExpression": { + "hexValue": "30", + "id": 1873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4076:1:13", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4068:10:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", + "typeString": "struct CallResult memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "74727565", + "id": 1876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4092:4:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "arguments": [ + { + "id": 1879, + "name": "smartWalletAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1848, + "src": "4109:18:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1877, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4098:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4102:6:13", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "4098:10:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4098:30:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1875, + "name": "CallResult", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1544, + "src": "4081:10:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_CallResult_$1544_storage_ptr_$", + "typeString": "type(struct CallResult storage pointer)" + } + }, + "id": 1881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4081:48:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", + "typeString": "struct CallResult memory" + } + }, + "src": "4068:61:13", + "typeDescriptions": { + "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", + "typeString": "struct CallResult memory" + } + }, + "id": 1883, + "nodeType": "ExpressionStatement", + "src": "4068:61:13" + }, + { + "assignments": [ + 1885 + ], + "declarations": [ + { + "constant": false, + "id": 1885, + "mutability": "mutable", + "name": "msgPayload", + "nameLocation": "4153:10:13", + "nodeType": "VariableDeclaration", + "scope": 1907, + "src": "4140:23:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1884, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4140:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 1900, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783030303030303030", + "id": 1890, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4203:10:13", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00000000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 1889, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4196:6:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 1888, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "4196:6:13", + "typeDescriptions": {} + } + }, + "id": 1891, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4196:18:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 1895, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4254:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "id": 1896, + "name": "results", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1864, + "src": "4261:7:13", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", + "typeString": "struct CallResult memory[] memory" + } + ], + "id": 1894, + "name": "AgoricResponse", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1551, + "src": "4239:14:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_AgoricResponse_$1551_storage_ptr_$", + "typeString": "type(struct AgoricResponse storage pointer)" + } + }, + "id": 1897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4239:30:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AgoricResponse_$1551_memory_ptr", + "typeString": "struct AgoricResponse memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_AgoricResponse_$1551_memory_ptr", + "typeString": "struct AgoricResponse memory" + } + ], + "expression": { + "id": 1892, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4228:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1893, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4232:6:13", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "4228:10:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4228:42:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 1886, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4166:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1887, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "4170:12:13", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "4166:16:13", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4166:114:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4140:140:13" + }, + { + "expression": { + "arguments": [ + { + "id": 1902, + "name": "sourceChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1839, + "src": "4296:11:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1903, + "name": "sourceAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1841, + "src": "4309:13:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1904, + "name": "msgPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1885, + "src": "4324:10:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1901, + "name": "_send", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1950, + "src": "4290:5:13", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_calldata_ptr_$_t_string_calldata_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (string calldata,string calldata,bytes memory)" + } + }, + "id": 1905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4290:45:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1906, + "nodeType": "ExpressionStatement", + "src": "4290:45:13" + } + ] + }, + "id": 1908, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_execute", + "nameLocation": "3628:8:13", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 1845, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3764:8:13" + }, + "parameters": { + "id": 1844, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1839, + "mutability": "mutable", + "name": "sourceChain", + "nameLocation": "3662:11:13", + "nodeType": "VariableDeclaration", + "scope": 1908, + "src": "3646:27:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1838, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3646:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1841, + "mutability": "mutable", + "name": "sourceAddress", + "nameLocation": "3699:13:13", + "nodeType": "VariableDeclaration", + "scope": 1908, + "src": "3683:29:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1840, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3683:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1843, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1908, + "src": "3722:14:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1842, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3722:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3636:118:13" + }, + "returnParameters": { + "id": 1846, + "nodeType": "ParameterList", + "parameters": [], + "src": "3773:0:13" + }, + "scope": 1973, + "src": "3619:723:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 1949, + "nodeType": "Block", + "src": "4494:385:13", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 1924, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "4589:4:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_AgoricProxy_$1973", + "typeString": "contract AgoricProxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_AgoricProxy_$1973", + "typeString": "contract AgoricProxy" + } + ], + "id": 1923, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4581:7:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 1922, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4581:7:13", + "typeDescriptions": {} + } + }, + "id": 1925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4581:13:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1926, + "name": "destinationChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1910, + "src": "4608:16:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1927, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1912, + "src": "4638:18:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1928, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1914, + "src": "4670:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "arguments": [ + { + "id": 1931, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "4699:4:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_AgoricProxy_$1973", + "typeString": "contract AgoricProxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_AgoricProxy_$1973", + "typeString": "contract AgoricProxy" + } + ], + "id": 1930, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4691:7:13", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 1929, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4691:7:13", + "typeDescriptions": {} + } + }, + "id": 1932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4691:13:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1917, + "name": "gasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1758, + "src": "4504:10:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "id": 1919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4515:27:13", + "memberName": "payNativeGasForContractCall", + "nodeType": "MemberAccess", + "referencedDeclaration": 473, + "src": "4504:38:13", + "typeDescriptions": { + "typeIdentifier": "t_function_external_payable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (address,string memory,string memory,bytes memory,address) payable external" + } + }, + "id": 1921, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "names": [ + "value" + ], + "nodeType": "FunctionCallOptions", + "options": [ + { + "hexValue": "31303030303030303030303030303030", + "id": 1920, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4550:16:13", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000_by_1", + "typeString": "int_const 1000000000000000" + }, + "value": "1000000000000000" + } + ], + "src": "4504:63:13", + "typeDescriptions": { + "typeIdentifier": "t_function_external_payable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$value", + "typeString": "function (address,string memory,string memory,bytes memory,address) payable external" + } + }, + "id": 1933, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4504:210:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1934, + "nodeType": "ExpressionStatement", + "src": "4504:210:13" + }, + { + "expression": { + "arguments": [ + { + "id": 1938, + "name": "destinationChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1910, + "src": "4746:16:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1939, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1912, + "src": "4764:18:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1940, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1914, + "src": "4784:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 1935, + "name": "gateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10, + "src": "4725:7:13", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + } + }, + "id": 1937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4733:12:13", + "memberName": "callContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 835, + "src": "4725:20:13", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory,bytes memory) external" + } + }, + "id": 1941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4725:67:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1942, + "nodeType": "ExpressionStatement", + "src": "4725:67:13" + }, + { + "eventCall": { + "arguments": [ + { + "id": 1944, + "name": "destinationChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1910, + "src": "4826:16:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1945, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1912, + "src": "4844:18:13", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 1946, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1914, + "src": "4864:7:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1943, + "name": "CrossChainCallSent", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1778, + "src": "4807:18:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory,bytes memory)" + } + }, + "id": 1947, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4807:65:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1948, + "nodeType": "EmitStatement", + "src": "4802:70:13" + } + ] + }, + "id": 1950, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_send", + "nameLocation": "4357:5:13", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1915, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1910, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "4388:16:13", + "nodeType": "VariableDeclaration", + "scope": 1950, + "src": "4372:32:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1909, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4372:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1912, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "4430:18:13", + "nodeType": "VariableDeclaration", + "scope": 1950, + "src": "4414:34:13", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1911, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4414:6:13", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1914, + "mutability": "mutable", + "name": "payload", + "nameLocation": "4471:7:13", + "nodeType": "VariableDeclaration", + "scope": 1950, + "src": "4458:20:13", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1913, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4458:5:13", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4362:122:13" + }, + "returnParameters": { + "id": 1916, + "nodeType": "ParameterList", + "parameters": [], + "src": "4494:0:13" + }, + "scope": 1973, + "src": "4348:531:13", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 1960, + "nodeType": "Block", + "src": "4912:53:13", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 1954, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4936:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4940:6:13", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4936:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 1956, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4948:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4952:5:13", + "memberName": "value", + "nodeType": "MemberAccess", + "src": "4948:9:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1953, + "name": "Received", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1784, + "src": "4927:8:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 1958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4927:31:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1959, + "nodeType": "EmitStatement", + "src": "4922:36:13" + } + ] + }, + "id": 1961, + "implemented": true, + "kind": "receive", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1951, + "nodeType": "ParameterList", + "parameters": [], + "src": "4892:2:13" + }, + "returnParameters": { + "id": 1952, + "nodeType": "ParameterList", + "parameters": [], + "src": "4912:0:13" + }, + "scope": 1973, + "src": "4885:80:13", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 1971, + "nodeType": "Block", + "src": "4999:53:13", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 1965, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "5023:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5027:6:13", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "5023:10:13", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 1967, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "5035:3:13", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1968, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5039:5:13", + "memberName": "value", + "nodeType": "MemberAccess", + "src": "5035:9:13", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1964, + "name": "Received", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1784, + "src": "5014:8:13", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 1969, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5014:31:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1970, + "nodeType": "EmitStatement", + "src": "5009:36:13" + } + ] + }, + "id": 1972, + "implemented": true, + "kind": "fallback", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1962, + "nodeType": "ParameterList", + "parameters": [], + "src": "4979:2:13" + }, + "returnParameters": { + "id": 1963, + "nodeType": "ParameterList", + "parameters": [], + "src": "4999:0:13" + }, + "scope": 1973, + "src": "4971:81:13", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1974, + "src": "2571:2483:13", + "usedErrors": [ + 143, + 145 + ], + "usedEvents": [ + 1770, + 1778, + 1784 + ] + } + ], + "src": "39:5016:13" + }, + "id": 13 + }, + "src/__tests__/contracts/Ownable.sol": { + "ast": { + "absolutePath": "src/__tests__/contracts/Ownable.sol", + "exportedSymbols": { + "Ownable": [ + 2109 + ] + }, + "id": 2110, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1975, + "literals": [ + "solidity", + "^", + "0.8", + ".20" + ], + "nodeType": "PragmaDirective", + "src": "102:24:14" + }, + { + "abstract": true, + "baseContracts": [], + "canonicalName": "Ownable", + "contractDependencies": [], + "contractKind": "contract", + "documentation": { + "id": 1976, + "nodeType": "StructuredDocumentation", + "src": "128:487:14", + "text": " @dev Contract module which provides a basic access control mechanism, where\n there is an account (an owner) that can be granted exclusive access to\n specific functions.\n The initial owner is set to the address provided by the deployer. This can\n later be changed with {transferOwnership}.\n This module is used through inheritance. It will make available the modifier\n `onlyOwner`, which can be applied to your functions to restrict their use to\n the owner." + }, + "fullyImplemented": true, + "id": 2109, + "linearizedBaseContracts": [ + 2109 + ], + "name": "Ownable", + "nameLocation": "634:7:14", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1978, + "mutability": "mutable", + "name": "_owner", + "nameLocation": "663:6:14", + "nodeType": "VariableDeclaration", + "scope": 2109, + "src": "648:21:14", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 1977, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "648:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "private" + }, + { + "documentation": { + "id": 1979, + "nodeType": "StructuredDocumentation", + "src": "676:85:14", + "text": " @dev The caller account is not authorized to perform an operation." + }, + "errorSelector": "de6a3cbf", + "id": 1983, + "name": "OwnableUnauthorizedAccount", + "nameLocation": "772:26:14", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1982, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1981, + "mutability": "mutable", + "name": "account", + "nameLocation": "806:7:14", + "nodeType": "VariableDeclaration", + "scope": 1983, + "src": "799:14:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1980, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "799:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "798:16:14" + }, + "src": "766:49:14" + }, + { + "documentation": { + "id": 1984, + "nodeType": "StructuredDocumentation", + "src": "821:82:14", + "text": " @dev The owner is not a valid owner account. (eg. `address(0)`)" + }, + "errorSelector": "0defb781", + "id": 1988, + "name": "OwnableInvalidOwner", + "nameLocation": "914:19:14", + "nodeType": "ErrorDefinition", + "parameters": { + "id": 1987, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1986, + "mutability": "mutable", + "name": "owner", + "nameLocation": "941:5:14", + "nodeType": "VariableDeclaration", + "scope": 1988, + "src": "934:12:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1985, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "934:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "933:14:14" + }, + "src": "908:40:14" + }, + { + "anonymous": false, + "eventSelector": "389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d", + "id": 1994, + "name": "OwnershipTransferred", + "nameLocation": "960:20:14", + "nodeType": "EventDefinition", + "parameters": { + "id": 1993, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1990, + "indexed": true, + "mutability": "mutable", + "name": "previousOwner", + "nameLocation": "1005:13:14", + "nodeType": "VariableDeclaration", + "scope": 1994, + "src": "990:28:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1989, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "990:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1992, + "indexed": true, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "1043:8:14", + "nodeType": "VariableDeclaration", + "scope": 1994, + "src": "1028:23:14", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1991, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1028:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "980:77:14" + }, + "src": "954:104:14" + }, + { + "body": { + "id": 2004, + "nodeType": "Block", + "src": "1224:162:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2001, + "name": "initialOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1997, + "src": "1366:12:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2000, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2108, + "src": "1347:18:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1347:32:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2003, + "nodeType": "ExpressionStatement", + "src": "1347:32:14" + } + ] + }, + "documentation": { + "id": 1995, + "nodeType": "StructuredDocumentation", + "src": "1064:115:14", + "text": " @dev Initializes the contract setting the address provided by the deployer as the initial owner." + }, + "id": 2005, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1998, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1997, + "mutability": "mutable", + "name": "initialOwner", + "nameLocation": "1210:12:14", + "nodeType": "VariableDeclaration", + "scope": 2005, + "src": "1196:26:14", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1996, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1196:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1195:28:14" + }, + "returnParameters": { + "id": 1999, + "nodeType": "ParameterList", + "parameters": [], + "src": "1224:0:14" + }, + "scope": 2109, + "src": "1184:202:14", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2015, + "nodeType": "Block", + "src": "1526:56:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2011, + "name": "incomingAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2008, + "src": "1548:15:14", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 2010, + "name": "_checkOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2052, + "src": "1536:11:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_string_calldata_ptr_$returns$__$", + "typeString": "function (string calldata) view" + } + }, + "id": 2012, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1536:28:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2013, + "nodeType": "ExpressionStatement", + "src": "1536:28:14" + }, + { + "id": 2014, + "nodeType": "PlaceholderStatement", + "src": "1574:1:14" + } + ] + }, + "documentation": { + "id": 2006, + "nodeType": "StructuredDocumentation", + "src": "1392:77:14", + "text": " @dev Throws if called by any account other than the owner." + }, + "id": 2016, + "name": "onlyOwner", + "nameLocation": "1483:9:14", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 2009, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2008, + "mutability": "mutable", + "name": "incomingAddress", + "nameLocation": "1509:15:14", + "nodeType": "VariableDeclaration", + "scope": 2016, + "src": "1493:31:14", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2007, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1493:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1492:33:14" + }, + "src": "1474:108:14", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 2024, + "nodeType": "Block", + "src": "1719:30:14", + "statements": [ + { + "expression": { + "id": 2022, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1978, + "src": "1736:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 2021, + "id": 2023, + "nodeType": "Return", + "src": "1729:13:14" + } + ] + }, + "documentation": { + "id": 2017, + "nodeType": "StructuredDocumentation", + "src": "1588:65:14", + "text": " @dev Returns the address of the current owner." + }, + "functionSelector": "8da5cb5b", + "id": 2025, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "owner", + "nameLocation": "1667:5:14", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2018, + "nodeType": "ParameterList", + "parameters": [], + "src": "1672:2:14" + }, + "returnParameters": { + "id": 2021, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2020, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2025, + "src": "1704:13:14", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2019, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1704:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1703:15:14" + }, + "scope": 2109, + "src": "1658:91:14", + "stateMutability": "view", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 2051, + "nodeType": "Block", + "src": "1912:159:14", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2044, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2034, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2025, + "src": "1942:5:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_string_memory_ptr_$", + "typeString": "function () view returns (string memory)" + } + }, + "id": 2035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1942:7:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2033, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1936:5:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 2032, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1936:5:14", + "typeDescriptions": {} + } + }, + "id": 2036, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1936:14:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2031, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1926:9:14", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1926:25:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2041, + "name": "incomingAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2028, + "src": "1971:15:14", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 2040, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1965:5:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 2039, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1965:5:14", + "typeDescriptions": {} + } + }, + "id": 2042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1965:22:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "id": 2038, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1955:9:14", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1955:33:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "1926:62:14", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2050, + "nodeType": "IfStatement", + "src": "1922:143:14", + "trueBody": { + "id": 2049, + "nodeType": "Block", + "src": "1990:75:14", + "statements": [ + { + "errorCall": { + "arguments": [ + { + "id": 2046, + "name": "incomingAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2028, + "src": "2038:15:14", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 2045, + "name": "OwnableUnauthorizedAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1983, + "src": "2011:26:14", + "typeDescriptions": { + "typeIdentifier": "t_function_error_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 2047, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2011:43:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2048, + "nodeType": "RevertStatement", + "src": "2004:50:14" + } + ] + } + } + ] + }, + "documentation": { + "id": 2026, + "nodeType": "StructuredDocumentation", + "src": "1755:62:14", + "text": " @dev Throws if the sender is not the owner." + }, + "id": 2052, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_checkOwner", + "nameLocation": "1831:11:14", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2029, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2028, + "mutability": "mutable", + "name": "incomingAddress", + "nameLocation": "1868:15:14", + "nodeType": "VariableDeclaration", + "scope": 2052, + "src": "1852:31:14", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2027, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1852:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1842:47:14" + }, + "returnParameters": { + "id": 2030, + "nodeType": "ParameterList", + "parameters": [], + "src": "1912:0:14" + }, + "scope": 2109, + "src": "1822:249:14", + "stateMutability": "view", + "virtual": true, + "visibility": "internal" + }, + { + "body": { + "id": 2071, + "nodeType": "Block", + "src": "2516:159:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "307830303030303030303030303030303030303030303030303030303030303030303030303030303030", + "id": 2066, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2599:44:14", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a", + "typeString": "literal_string \"0x0000000000000000000000000000000000000000\"" + }, + "value": "0x0000000000000000000000000000000000000000" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a", + "typeString": "literal_string \"0x0000000000000000000000000000000000000000\"" + } + ], + "expression": { + "id": 2064, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2582:3:14", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2065, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2586:12:14", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "2582:16:14", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2067, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2582:62:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2063, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2558:6:14", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + }, + "typeName": { + "id": 2062, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2558:6:14", + "typeDescriptions": {} + } + }, + "id": 2068, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2558:100:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2061, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2108, + "src": "2526:18:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2526:142:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2070, + "nodeType": "ExpressionStatement", + "src": "2526:142:14" + } + ] + }, + "documentation": { + "id": 2053, + "nodeType": "StructuredDocumentation", + "src": "2077:324:14", + "text": " @dev Leaves the contract without owner. It will not be possible to call\n `onlyOwner` functions. Can only be called by the current owner.\n NOTE: Renouncing ownership will leave the contract without an owner,\n thereby disabling any functionality that is only available to the owner." + }, + "functionSelector": "4fdb7f44", + "id": 2072, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 2058, + "name": "currentOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2055, + "src": "2502:12:14", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "id": 2059, + "kind": "modifierInvocation", + "modifierName": { + "id": 2057, + "name": "onlyOwner", + "nameLocations": [ + "2492:9:14" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2016, + "src": "2492:9:14" + }, + "nodeType": "ModifierInvocation", + "src": "2492:23:14" + } + ], + "name": "renounceOwnership", + "nameLocation": "2415:17:14", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2056, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2055, + "mutability": "mutable", + "name": "currentOwner", + "nameLocation": "2458:12:14", + "nodeType": "VariableDeclaration", + "scope": 2072, + "src": "2442:28:14", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2054, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2442:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2432:44:14" + }, + "returnParameters": { + "id": 2060, + "nodeType": "ParameterList", + "parameters": [], + "src": "2516:0:14" + }, + "scope": 2109, + "src": "2406:269:14", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 2087, + "nodeType": "Block", + "src": "2960:154:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2084, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2077, + "src": "3098:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "id": 2083, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2108, + "src": "3079:18:14", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3079:28:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2086, + "nodeType": "ExpressionStatement", + "src": "3079:28:14" + } + ] + }, + "documentation": { + "id": 2073, + "nodeType": "StructuredDocumentation", + "src": "2681:138:14", + "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner." + }, + "functionSelector": "268ca07e", + "id": 2088, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 2080, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2075, + "src": "2950:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "id": 2081, + "kind": "modifierInvocation", + "modifierName": { + "id": 2079, + "name": "onlyOwner", + "nameLocations": [ + "2940:9:14" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2016, + "src": "2940:9:14" + }, + "nodeType": "ModifierInvocation", + "src": "2940:19:14" + } + ], + "name": "transferOwnership", + "nameLocation": "2833:17:14", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2078, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2075, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "2876:8:14", + "nodeType": "VariableDeclaration", + "scope": 2088, + "src": "2860:24:14", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2074, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2860:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2077, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "2910:8:14", + "nodeType": "VariableDeclaration", + "scope": 2088, + "src": "2894:24:14", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2076, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2894:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2850:74:14" + }, + "returnParameters": { + "id": 2082, + "nodeType": "ParameterList", + "parameters": [], + "src": "2960:0:14" + }, + "scope": 2109, + "src": "2824:290:14", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "public" + }, + { + "body": { + "id": 2107, + "nodeType": "Block", + "src": "3337:130:14", + "statements": [ + { + "assignments": [ + 2095 + ], + "declarations": [ + { + "constant": false, + "id": 2095, + "mutability": "mutable", + "name": "oldOwner", + "nameLocation": "3361:8:14", + "nodeType": "VariableDeclaration", + "scope": 2107, + "src": "3347:22:14", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2094, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3347:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "id": 2097, + "initialValue": { + "id": 2096, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1978, + "src": "3372:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3347:31:14" + }, + { + "expression": { + "id": 2100, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2098, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1978, + "src": "3388:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2099, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2091, + "src": "3397:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "3388:17:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 2101, + "nodeType": "ExpressionStatement", + "src": "3388:17:14" + }, + { + "eventCall": { + "arguments": [ + { + "id": 2103, + "name": "oldOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2095, + "src": "3441:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 2104, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2091, + "src": "3451:8:14", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2102, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1994, + "src": "3420:20:14", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3420:40:14", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2106, + "nodeType": "EmitStatement", + "src": "3415:45:14" + } + ] + }, + "documentation": { + "id": 2089, + "nodeType": "StructuredDocumentation", + "src": "3120:143:14", + "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Internal function without access restriction." + }, + "id": 2108, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transferOwnership", + "nameLocation": "3277:18:14", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2092, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2091, + "mutability": "mutable", + "name": "newOwner", + "nameLocation": "3310:8:14", + "nodeType": "VariableDeclaration", + "scope": 2108, + "src": "3296:22:14", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2090, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3296:6:14", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "3295:24:14" + }, + "returnParameters": { + "id": 2093, + "nodeType": "ParameterList", + "parameters": [], + "src": "3337:0:14" + }, + "scope": 2109, + "src": "3268:199:14", + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "scope": 2110, + "src": "616:2853:14", + "usedErrors": [ + 1983, + 1988 + ], + "usedEvents": [ + 1994 + ] + } + ], + "src": "102:3368:14" + }, + "id": 14 + }, + "src/__tests__/contracts/SendReceive.sol": { + "ast": { + "absolutePath": "src/__tests__/contracts/SendReceive.sol", + "exportedSymbols": { + "AddressToString": [ + 1497 + ], + "AxelarExecutable": [ + 137 + ], + "IAxelarGasService": [ + 655 + ], + "IAxelarGateway": [ + 991 + ], + "SendReceive": [ + 2351 + ], + "StringToAddress": [ + 1404 + ] + }, + "id": 2352, + "license": "MIT", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 2111, + "literals": [ + "solidity", + "^", + "0.8", + ".9" + ], + "nodeType": "PragmaDirective", + "src": "32:23:15" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", + "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", + "id": 2113, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 2352, + "sourceUnit": 138, + "src": "57:115:15", + "symbolAliases": [ + { + "foreign": { + "id": 2112, + "name": "AxelarExecutable", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 137, + "src": "65:16:15", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", + "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", + "id": 2115, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 2352, + "sourceUnit": 992, + "src": "173:111:15", + "symbolAliases": [ + { + "foreign": { + "id": 2114, + "name": "IAxelarGateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 991, + "src": "181:14:15", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", + "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", + "id": 2117, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 2352, + "sourceUnit": 656, + "src": "285:117:15", + "symbolAliases": [ + { + "foreign": { + "id": 2116, + "name": "IAxelarGasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 655, + "src": "293:17:15", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", + "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", + "id": 2120, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 2352, + "sourceUnit": 1498, + "src": "403:122:15", + "symbolAliases": [ + { + "foreign": { + "id": 2118, + "name": "StringToAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1404, + "src": "411:15:15", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + }, + { + "foreign": { + "id": 2119, + "name": "AddressToString", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1497, + "src": "428:15:15", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 2121, + "name": "AxelarExecutable", + "nameLocations": [ + "551:16:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 137, + "src": "551:16:15" + }, + "id": 2122, + "nodeType": "InheritanceSpecifier", + "src": "551:16:15" + } + ], + "canonicalName": "SendReceive", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 2351, + "linearizedBaseContracts": [ + 2351, + 137, + 178 + ], + "name": "SendReceive", + "nameLocation": "536:11:15", + "nodeType": "ContractDefinition", + "nodes": [ + { + "global": false, + "id": 2125, + "libraryName": { + "id": 2123, + "name": "StringToAddress", + "nameLocations": [ + "580:15:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1404, + "src": "580:15:15" + }, + "nodeType": "UsingForDirective", + "src": "574:33:15", + "typeName": { + "id": 2124, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "600:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + } + }, + { + "global": false, + "id": 2128, + "libraryName": { + "id": 2126, + "name": "AddressToString", + "nameLocations": [ + "618:15:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 1497, + "src": "618:15:15" + }, + "nodeType": "UsingForDirective", + "src": "612:34:15", + "typeName": { + "id": 2127, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "638:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + }, + { + "constant": false, + "functionSelector": "6a22d8cc", + "id": 2131, + "mutability": "immutable", + "name": "gasService", + "nameLocation": "687:10:15", + "nodeType": "VariableDeclaration", + "scope": 2351, + "src": "652:45:15", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + }, + "typeName": { + "id": 2130, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2129, + "name": "IAxelarGasService", + "nameLocations": [ + "652:17:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 655, + "src": "652:17:15" + }, + "referencedDeclaration": 655, + "src": "652:17:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "1c93b03a", + "id": 2133, + "mutability": "mutable", + "name": "chainName", + "nameLocation": "717:9:15", + "nodeType": "VariableDeclaration", + "scope": 2351, + "src": "703:23:15", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 2132, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "703:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "public" + }, + { + "canonicalName": "SendReceive.Message", + "id": 2138, + "members": [ + { + "constant": false, + "id": 2135, + "mutability": "mutable", + "name": "sender", + "nameLocation": "815:6:15", + "nodeType": "VariableDeclaration", + "scope": 2138, + "src": "808:13:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2134, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "808:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2137, + "mutability": "mutable", + "name": "message", + "nameLocation": "838:7:15", + "nodeType": "VariableDeclaration", + "scope": 2138, + "src": "831:14:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2136, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "831:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "name": "Message", + "nameLocation": "790:7:15", + "nodeType": "StructDefinition", + "scope": 2351, + "src": "783:69:15", + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "b2f6cbbe", + "id": 2141, + "mutability": "mutable", + "name": "storedMessage", + "nameLocation": "873:13:15", + "nodeType": "VariableDeclaration", + "scope": 2351, + "src": "858:28:15", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Message_$2138_storage", + "typeString": "struct SendReceive.Message" + }, + "typeName": { + "id": 2140, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 2139, + "name": "Message", + "nameLocations": [ + "858:7:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 2138, + "src": "858:7:15" + }, + "referencedDeclaration": 2138, + "src": "858:7:15", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Message_$2138_storage_ptr", + "typeString": "struct SendReceive.Message" + } + }, + "visibility": "public" + }, + { + "body": { + "id": 2163, + "nodeType": "Block", + "src": "1062:93:15", + "statements": [ + { + "expression": { + "id": 2157, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2153, + "name": "gasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2131, + "src": "1072:10:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2155, + "name": "gasReceiver_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2145, + "src": "1103:12:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 2154, + "name": "IAxelarGasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 655, + "src": "1085:17:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IAxelarGasService_$655_$", + "typeString": "type(contract IAxelarGasService)" + } + }, + "id": 2156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1085:31:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "src": "1072:44:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "id": 2158, + "nodeType": "ExpressionStatement", + "src": "1072:44:15" + }, + { + "expression": { + "id": 2161, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2159, + "name": "chainName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2133, + "src": "1126:9:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2160, + "name": "chainName_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2147, + "src": "1138:10:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "1126:22:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 2162, + "nodeType": "ExpressionStatement", + "src": "1126:22:15" + } + ] + }, + "id": 2164, + "implemented": true, + "kind": "constructor", + "modifiers": [ + { + "arguments": [ + { + "id": 2150, + "name": "gateway_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2143, + "src": "1052:8:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 2151, + "kind": "baseConstructorSpecifier", + "modifierName": { + "id": 2149, + "name": "AxelarExecutable", + "nameLocations": [ + "1035:16:15" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 137, + "src": "1035:16:15" + }, + "nodeType": "ModifierInvocation", + "src": "1035:26:15" + } + ], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2148, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2143, + "mutability": "mutable", + "name": "gateway_", + "nameLocation": "956:8:15", + "nodeType": "VariableDeclaration", + "scope": 2164, + "src": "948:16:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2142, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "948:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2145, + "mutability": "mutable", + "name": "gasReceiver_", + "nameLocation": "982:12:15", + "nodeType": "VariableDeclaration", + "scope": 2164, + "src": "974:20:15", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2144, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "974:7:15", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2147, + "mutability": "mutable", + "name": "chainName_", + "nameLocation": "1018:10:15", + "nodeType": "VariableDeclaration", + "scope": 2164, + "src": "1004:24:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2146, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1004:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "938:96:15" + }, + "returnParameters": { + "id": 2152, + "nodeType": "ParameterList", + "parameters": [], + "src": "1062:0:15" + }, + "scope": 2351, + "src": "927:228:15", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2215, + "nodeType": "Block", + "src": "1317:580:15", + "statements": [ + { + "assignments": [ + 2174 + ], + "declarations": [ + { + "constant": false, + "id": 2174, + "mutability": "mutable", + "name": "executeMsgPayload", + "nameLocation": "1375:17:15", + "nodeType": "VariableDeclaration", + "scope": 2215, + "src": "1362:30:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2173, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1362:5:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2183, + "initialValue": { + "arguments": [ + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "expression": { + "id": 2177, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1419:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1423:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1419:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1430:8:15", + "memberName": "toString", + "nodeType": "MemberAccess", + "referencedDeclaration": 1496, + "src": "1419:19:15", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_string_memory_ptr_$attached_to$_t_address_$", + "typeString": "function (address) pure returns (string memory)" + } + }, + "id": 2180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1419:21:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 2181, + "name": "message", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2170, + "src": "1454:7:15", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + ], + "expression": { + "id": 2175, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1395:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2176, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "1399:6:15", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "1395:10:15", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2182, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1395:76:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1362:109:15" + }, + { + "assignments": [ + 2185 + ], + "declarations": [ + { + "constant": false, + "id": 2185, + "mutability": "mutable", + "name": "payload", + "nameLocation": "1494:7:15", + "nodeType": "VariableDeclaration", + "scope": 2215, + "src": "1481:20:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2184, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1481:5:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2189, + "initialValue": { + "arguments": [ + { + "id": 2187, + "name": "executeMsgPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2174, + "src": "1529:17:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2186, + "name": "_encodePayloadToCosmWasm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2318, + "src": "1504:24:15", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) view returns (bytes memory)" + } + }, + "id": 2188, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1504:43:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1481:66:15" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 2198, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "1662:4:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SendReceive_$2351", + "typeString": "contract SendReceive" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_SendReceive_$2351", + "typeString": "contract SendReceive" + } + ], + "id": 2197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1654:7:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2196, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1654:7:15", + "typeDescriptions": {} + } + }, + "id": 2199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1654:13:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2200, + "name": "destinationChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2166, + "src": "1681:16:15", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 2201, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2168, + "src": "1711:18:15", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 2202, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2185, + "src": "1743:7:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "expression": { + "id": 2203, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1764:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2204, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1768:6:15", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1764:10:15", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2190, + "name": "gasService", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2131, + "src": "1584:10:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGasService_$655", + "typeString": "contract IAxelarGasService" + } + }, + "id": 2192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1595:27:15", + "memberName": "payNativeGasForContractCall", + "nodeType": "MemberAccess", + "referencedDeclaration": 473, + "src": "1584:38:15", + "typeDescriptions": { + "typeIdentifier": "t_function_external_payable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (address,string memory,string memory,bytes memory,address) payable external" + } + }, + "id": 2195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "names": [ + "value" + ], + "nodeType": "FunctionCallOptions", + "options": [ + { + "expression": { + "id": 2193, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1630:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 2194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1634:5:15", + "memberName": "value", + "nodeType": "MemberAccess", + "src": "1630:9:15", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "src": "1584:56:15", + "typeDescriptions": { + "typeIdentifier": "t_function_external_payable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$value", + "typeString": "function (address,string memory,string memory,bytes memory,address) payable external" + } + }, + "id": 2205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1584:200:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2206, + "nodeType": "ExpressionStatement", + "src": "1584:200:15" + }, + { + "expression": { + "arguments": [ + { + "id": 2210, + "name": "destinationChain", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2166, + "src": "1844:16:15", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 2211, + "name": "destinationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2168, + "src": "1862:18:15", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + } + }, + { + "id": 2212, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2185, + "src": "1882:7:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string calldata" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2207, + "name": "gateway", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10, + "src": "1823:7:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IAxelarGateway_$991", + "typeString": "contract IAxelarGateway" + } + }, + "id": 2209, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1831:12:15", + "memberName": "callContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 835, + "src": "1823:20:15", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory,bytes memory) external" + } + }, + "id": 2213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1823:67:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2214, + "nodeType": "ExpressionStatement", + "src": "1823:67:15" + } + ] + }, + "functionSelector": "5615264d", + "id": 2216, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "send", + "nameLocation": "1170:4:15", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2171, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2166, + "mutability": "mutable", + "name": "destinationChain", + "nameLocation": "1200:16:15", + "nodeType": "VariableDeclaration", + "scope": 2216, + "src": "1184:32:15", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2165, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1184:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2168, + "mutability": "mutable", + "name": "destinationAddress", + "nameLocation": "1242:18:15", + "nodeType": "VariableDeclaration", + "scope": 2216, + "src": "1226:34:15", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2167, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1226:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2170, + "mutability": "mutable", + "name": "message", + "nameLocation": "1286:7:15", + "nodeType": "VariableDeclaration", + "scope": 2216, + "src": "1270:23:15", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2169, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1270:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1174:125:15" + }, + "returnParameters": { + "id": 2172, + "nodeType": "ParameterList", + "parameters": [], + "src": "1317:0:15" + }, + "scope": 2351, + "src": "1161:736:15", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 2317, + "nodeType": "Block", + "src": "2020:1318:15", + "statements": [ + { + "assignments": [ + 2224 + ], + "declarations": [ + { + "constant": false, + "id": 2224, + "mutability": "mutable", + "name": "argValues", + "nameLocation": "2585:9:15", + "nodeType": "VariableDeclaration", + "scope": 2317, + "src": "2572:22:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2223, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2572:5:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2236, + "initialValue": { + "arguments": [ + { + "id": 2227, + "name": "chainName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2133, + "src": "2621:9:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "id": 2230, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "2652:4:15", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SendReceive_$2351", + "typeString": "contract SendReceive" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_SendReceive_$2351", + "typeString": "contract SendReceive" + } + ], + "id": 2229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2644:7:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2228, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2644:7:15", + "typeDescriptions": {} + } + }, + "id": 2231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2644:13:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2658:8:15", + "memberName": "toString", + "nodeType": "MemberAccess", + "referencedDeclaration": 1496, + "src": "2644:22:15", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_string_memory_ptr_$attached_to$_t_address_$", + "typeString": "function (address) pure returns (string memory)" + } + }, + "id": 2233, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2644:24:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 2234, + "name": "executeMsgPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2218, + "src": "2682:17:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2225, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2597:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2226, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "2601:6:15", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "2597:10:15", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2597:112:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2572:137:15" + }, + { + "assignments": [ + 2241 + ], + "declarations": [ + { + "constant": false, + "id": 2241, + "mutability": "mutable", + "name": "argumentNameArray", + "nameLocation": "2736:17:15", + "nodeType": "VariableDeclaration", + "scope": 2317, + "src": "2720:33:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 2239, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2720:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 2240, + "nodeType": "ArrayTypeName", + "src": "2720:8:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + } + ], + "id": 2247, + "initialValue": { + "arguments": [ + { + "hexValue": "33", + "id": 2245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2769:1:15", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + } + ], + "id": 2244, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2756:12:15", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (string memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 2242, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2760:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 2243, + "nodeType": "ArrayTypeName", + "src": "2760:8:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + } + }, + "id": 2246, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2756:15:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2720:51:15" + }, + { + "expression": { + "id": 2252, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2248, + "name": "argumentNameArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2241, + "src": "2781:17:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + "id": 2250, + "indexExpression": { + "hexValue": "30", + "id": 2249, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2799:1:15", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2781:20:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "736f757263655f636861696e", + "id": 2251, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2804:14:15", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3eb27069c1800aadf42cf16b56d322a6a9fb24020b93c7ece4fc75a33c662d97", + "typeString": "literal_string \"source_chain\"" + }, + "value": "source_chain" + }, + "src": "2781:37:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "id": 2253, + "nodeType": "ExpressionStatement", + "src": "2781:37:15" + }, + { + "expression": { + "id": 2258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2254, + "name": "argumentNameArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2241, + "src": "2828:17:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + "id": 2256, + "indexExpression": { + "hexValue": "31", + "id": 2255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2846:1:15", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2828:20:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "736f757263655f61646472657373", + "id": 2257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2851:16:15", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c73b7533a6c14d92e0c3861ff16817b915051f003431047adf19e3b48ce3a2a2", + "typeString": "literal_string \"source_address\"" + }, + "value": "source_address" + }, + "src": "2828:39:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "id": 2259, + "nodeType": "ExpressionStatement", + "src": "2828:39:15" + }, + { + "expression": { + "id": 2264, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2260, + "name": "argumentNameArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2241, + "src": "2877:17:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + "id": 2262, + "indexExpression": { + "hexValue": "32", + "id": 2261, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2895:1:15", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2877:20:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "7061796c6f6164", + "id": 2263, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2900:9:15", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ebc84cbd75ba5516bf45e7024a9e12bc3c5c880f73e3a5beca7ebba52b2867a7", + "typeString": "literal_string \"payload\"" + }, + "value": "payload" + }, + "src": "2877:32:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "id": 2265, + "nodeType": "ExpressionStatement", + "src": "2877:32:15" + }, + { + "assignments": [ + 2270 + ], + "declarations": [ + { + "constant": false, + "id": 2270, + "mutability": "mutable", + "name": "abiTypeArray", + "nameLocation": "2936:12:15", + "nodeType": "VariableDeclaration", + "scope": 2317, + "src": "2920:28:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 2268, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2920:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 2269, + "nodeType": "ArrayTypeName", + "src": "2920:8:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + } + ], + "id": 2276, + "initialValue": { + "arguments": [ + { + "hexValue": "33", + "id": 2274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2964:1:15", + "typeDescriptions": { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + }, + "value": "3" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_3_by_1", + "typeString": "int_const 3" + } + ], + "id": 2273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2951:12:15", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (string memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 2271, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2955:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 2272, + "nodeType": "ArrayTypeName", + "src": "2955:8:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + } + }, + "id": 2275, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2951:15:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2920:46:15" + }, + { + "expression": { + "id": 2281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2277, + "name": "abiTypeArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "2976:12:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + "id": 2279, + "indexExpression": { + "hexValue": "30", + "id": 2278, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2989:1:15", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2976:15:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "737472696e67", + "id": 2280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2994:8:15", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_97fc46276c172633607a331542609db1e3da793fca183d594ed5a61803a10792", + "typeString": "literal_string \"string\"" + }, + "value": "string" + }, + "src": "2976:26:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "id": 2282, + "nodeType": "ExpressionStatement", + "src": "2976:26:15" + }, + { + "expression": { + "id": 2287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2283, + "name": "abiTypeArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "3012:12:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + "id": 2285, + "indexExpression": { + "hexValue": "31", + "id": 2284, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3025:1:15", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3012:15:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "737472696e67", + "id": 2286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3030:8:15", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_97fc46276c172633607a331542609db1e3da793fca183d594ed5a61803a10792", + "typeString": "literal_string \"string\"" + }, + "value": "string" + }, + "src": "3012:26:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "id": 2288, + "nodeType": "ExpressionStatement", + "src": "3012:26:15" + }, + { + "expression": { + "id": 2293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 2289, + "name": "abiTypeArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "3048:12:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + "id": 2291, + "indexExpression": { + "hexValue": "32", + "id": 2290, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3061:1:15", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3048:15:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "6279746573", + "id": 2292, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3066:7:15", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b963e9b45d014edd60cff22ec9ad383335bbc3f827be2aee8e291972b0fadcf2", + "typeString": "literal_string \"bytes\"" + }, + "value": "bytes" + }, + "src": "3048:25:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "id": 2294, + "nodeType": "ExpressionStatement", + "src": "3048:25:15" + }, + { + "assignments": [ + 2296 + ], + "declarations": [ + { + "constant": false, + "id": 2296, + "mutability": "mutable", + "name": "gmpPayload", + "nameLocation": "3097:10:15", + "nodeType": "VariableDeclaration", + "scope": 2317, + "src": "3084:23:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2295, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3084:5:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2297, + "nodeType": "VariableDeclarationStatement", + "src": "3084:23:15" + }, + { + "expression": { + "id": 2306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2298, + "name": "gmpPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2296, + "src": "3117:10:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "726563656976655f6d6573736167655f65766d", + "id": 2301, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3154:21:15", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f", + "typeString": "literal_string \"receive_message_evm\"" + }, + "value": "receive_message_evm" + }, + { + "id": 2302, + "name": "argumentNameArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2241, + "src": "3189:17:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + { + "id": 2303, + "name": "abiTypeArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "3220:12:15", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + } + }, + { + "id": 2304, + "name": "argValues", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2224, + "src": "3246:9:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f", + "typeString": "literal_string \"receive_message_evm\"" + }, + { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + }, + { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string memory[] memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2299, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3130:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2300, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3134:6:15", + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "3130:10:15", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3130:135:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "src": "3117:148:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 2307, + "nodeType": "ExpressionStatement", + "src": "3117:148:15" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783030303030303031", + "id": 2312, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3307:10:15", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x00000001" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 2311, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3300:6:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 2310, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "3300:6:15", + "typeDescriptions": {} + } + }, + "id": 2313, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3300:18:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "id": 2314, + "name": "gmpPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2296, + "src": "3320:10:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2308, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3283:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3287:12:15", + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "3283:16:15", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3283:48:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 2222, + "id": 2316, + "nodeType": "Return", + "src": "3276:55:15" + } + ] + }, + "id": 2318, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_encodePayloadToCosmWasm", + "nameLocation": "1912:24:15", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2219, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2218, + "mutability": "mutable", + "name": "executeMsgPayload", + "nameLocation": "1959:17:15", + "nodeType": "VariableDeclaration", + "scope": 2318, + "src": "1946:30:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2217, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1946:5:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1936:46:15" + }, + "returnParameters": { + "id": 2222, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2221, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2318, + "src": "2006:12:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2220, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2006:5:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "2005:14:15" + }, + "scope": 2351, + "src": "1903:1435:15", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 122 + ], + "body": { + "id": 2349, + "nodeType": "Block", + "src": "3502:186:15", + "statements": [ + { + "assignments": [ + 2329, + 2331 + ], + "declarations": [ + { + "constant": false, + "id": 2329, + "mutability": "mutable", + "name": "sender", + "nameLocation": "3527:6:15", + "nodeType": "VariableDeclaration", + "scope": 2349, + "src": "3513:20:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2328, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3513:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2331, + "mutability": "mutable", + "name": "message", + "nameLocation": "3549:7:15", + "nodeType": "VariableDeclaration", + "scope": 2349, + "src": "3535:21:15", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2330, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3535:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "id": 2341, + "initialValue": { + "arguments": [ + { + "id": 2334, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2324, + "src": "3584:7:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "components": [ + { + "id": 2336, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3606:6:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + }, + "typeName": { + "id": 2335, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3606:6:15", + "typeDescriptions": {} + } + }, + { + "id": 2338, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3614:6:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + }, + "typeName": { + "id": 2337, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3614:6:15", + "typeDescriptions": {} + } + } + ], + "id": 2339, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3605:16:15", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_type$_t_string_storage_ptr_$_$_t_type$_t_string_storage_ptr_$_$", + "typeString": "tuple(type(string storage pointer),type(string storage pointer))" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_tuple$_t_type$_t_string_storage_ptr_$_$_t_type$_t_string_storage_ptr_$_$", + "typeString": "tuple(type(string storage pointer),type(string storage pointer))" + } + ], + "expression": { + "id": 2332, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3560:3:15", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberLocation": "3564:6:15", + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "3560:10:15", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3560:71:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_string_memory_ptr_$_t_string_memory_ptr_$", + "typeString": "tuple(string memory,string memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3512:119:15" + }, + { + "expression": { + "id": 2347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2342, + "name": "storedMessage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2141, + "src": "3641:13:15", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Message_$2138_storage", + "typeString": "struct SendReceive.Message storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 2344, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2329, + "src": "3665:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 2345, + "name": "message", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2331, + "src": "3673:7:15", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2343, + "name": "Message", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2138, + "src": "3657:7:15", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_Message_$2138_storage_ptr_$", + "typeString": "type(struct SendReceive.Message storage pointer)" + } + }, + "id": 2346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "3657:24:15", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Message_$2138_memory_ptr", + "typeString": "struct SendReceive.Message memory" + } + }, + "src": "3641:40:15", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Message_$2138_storage", + "typeString": "struct SendReceive.Message storage ref" + } + }, + "id": 2348, + "nodeType": "ExpressionStatement", + "src": "3641:40:15" + } + ] + }, + "id": 2350, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_execute", + "nameLocation": "3353:8:15", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 2326, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3493:8:15" + }, + "parameters": { + "id": 2325, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2320, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2350, + "src": "3371:15:15", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2319, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3371:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2322, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 2350, + "src": "3412:15:15", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2321, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3412:6:15", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2324, + "mutability": "mutable", + "name": "payload", + "nameLocation": "3470:7:15", + "nodeType": "VariableDeclaration", + "scope": 2350, + "src": "3455:22:15", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2323, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3455:5:15", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3361:122:15" + }, + "returnParameters": { + "id": 2327, + "nodeType": "ParameterList", + "parameters": [], + "src": "3502:0:15" + }, + "scope": 2351, + "src": "3344:344:15", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + } + ], + "scope": 2352, + "src": "527:3163:15", + "usedErrors": [ + 143, + 145 + ], + "usedEvents": [] + } + ], + "src": "32:3659:15" + }, + "id": 15 + } + }, + "contracts": { + "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol": { + "AxelarExecutable": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "gateway_", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "InvalidAddress", + "type": "error" + }, + { + "inputs": [], + "name": "NotApprovedByGateway", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "tokenSymbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "executeWithToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "gateway", + "outputs": [ + { + "internalType": "contract IAxelarGateway", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_32": { + "entryPoint": null, + "id": 32, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_tuple_t_address_fromMemory": { + "entryPoint": 103, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:306:16", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:16", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "95:209:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "141:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "150:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "153:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "143:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "143:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "143:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "116:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "125:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "112:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "112:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "137:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "108:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "108:32:16" + }, + "nodeType": "YulIf", + "src": "105:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "166:29:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "185:9:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "179:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "179:16:16" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "170:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "258:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "267:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "270:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "260:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "260:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "260:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "217:5:16" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "228:5:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "243:3:16", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "248:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "239:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "239:11:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "252:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "235:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "235:19:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "224:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "224:31:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "214:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "214:42:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "207:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "207:50:16" + }, + "nodeType": "YulIf", + "src": "204:70:16" + }, + { + "nodeType": "YulAssignment", + "src": "283:15:16", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "293:5:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "283:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "61:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "72:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "84:6:16", + "type": "" + } + ], + "src": "14:290:16" + } + ] + }, + "contents": "{\n { }\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n value0 := value\n }\n}", + "id": 16, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "60a060405234801561001057600080fd5b506040516106d73803806106d783398101604081905261002f91610067565b6001600160a01b0381166100565760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0316608052610097565b60006020828403121561007957600080fd5b81516001600160a01b038116811461009057600080fd5b9392505050565b6080516106186100bf60003960008181604b01528181610115015261023701526106186000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063116191b6146100465780631a98b2e01461009657806349160658146100ab575b600080fd5b61006d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6100a96100a4366004610342565b6100be565b005b6100a96100b936600461041c565b6101e0565b600085856040516100d09291906104c0565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed99061015a908e908e908e908e908e9089908d908d908d90600401610519565b6020604051808303816000875af1158015610179573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019d9190610578565b6101d3576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600082826040516101f29291906104c0565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c390610276908b908b908b908b908b9089906004016105a1565b6020604051808303816000875af1158015610295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b99190610578565b6102ef576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050565b60008083601f84011261030b57600080fd5b50813567ffffffffffffffff81111561032357600080fd5b60208301915083602082850101111561033b57600080fd5b9250929050565b60008060008060008060008060008060c08b8d03121561036157600080fd5b8a35995060208b013567ffffffffffffffff8082111561038057600080fd5b61038c8e838f016102f9565b909b50995060408d01359150808211156103a557600080fd5b6103b18e838f016102f9565b909950975060608d01359150808211156103ca57600080fd5b6103d68e838f016102f9565b909750955060808d01359150808211156103ef57600080fd5b506103fc8d828e016102f9565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060008060006080888a03121561043757600080fd5b87359650602088013567ffffffffffffffff8082111561045657600080fd5b6104628b838c016102f9565b909850965060408a013591508082111561047b57600080fd5b6104878b838c016102f9565b909650945060608a01359150808211156104a057600080fd5b506104ad8a828b016102f9565b989b979a50959850939692959293505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600061053360c083018a8c6104d0565b828103604084015261054681898b6104d0565b905086606084015282810360808401526105618186886104d0565b9150508260a08301529a9950505050505050505050565b60006020828403121561058a57600080fd5b8151801515811461059a57600080fd5b9392505050565b8681526080602082015260006105bb6080830187896104d0565b82810360408401526105ce8186886104d0565b91505082606083015297965050505050505056fea2646970667358221220164018621781157703a2fa3b00cc12ddd6039c9b69d9dfa7353c10a02757f48164736f6c63430008140033", + "opcodes": "PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x6D7 CODESIZE SUB DUP1 PUSH2 0x6D7 DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH2 0x2F SWAP2 PUSH2 0x67 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH2 0x56 JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x80 MSTORE PUSH2 0x97 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x79 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH2 0x618 PUSH2 0xBF PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0x4B ADD MSTORE DUP2 DUP2 PUSH2 0x115 ADD MSTORE PUSH2 0x237 ADD MSTORE PUSH2 0x618 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x116191B6 EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x96 JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0xAB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6D PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA9 PUSH2 0xA4 CALLDATASIZE PUSH1 0x4 PUSH2 0x342 JUMP JUMPDEST PUSH2 0xBE JUMP JUMPDEST STOP JUMPDEST PUSH2 0xA9 PUSH2 0xB9 CALLDATASIZE PUSH1 0x4 PUSH2 0x41C JUMP JUMPDEST PUSH2 0x1E0 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0xD0 SWAP3 SWAP2 SWAP1 PUSH2 0x4C0 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x15A SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x519 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x179 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x19D SWAP2 SWAP1 PUSH2 0x578 JUMP JUMPDEST PUSH2 0x1D3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1F2 SWAP3 SWAP2 SWAP1 PUSH2 0x4C0 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x276 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x5A1 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x295 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x578 JUMP JUMPDEST PUSH2 0x2EF JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x30B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x323 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x33B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0x361 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x380 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x38C DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3B1 DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3CA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3D6 DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3FC DUP14 DUP3 DUP15 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0x437 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x456 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x462 DUP12 DUP4 DUP13 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x47B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x487 DUP12 DUP4 DUP13 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x4A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x4AD DUP11 DUP3 DUP12 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x533 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0x4D0 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x546 DUP2 DUP10 DUP12 PUSH2 0x4D0 JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x561 DUP2 DUP7 DUP9 PUSH2 0x4D0 JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x58A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x59A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x5BB PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0x4D0 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x5CE DUP2 DUP7 DUP9 PUSH2 0x4D0 JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 AND BLOCKHASH XOR PUSH3 0x178115 PUSH24 0x3A2FA3B00CC12DDD6039C9B69D9DFA7353C10A02757F481 PUSH5 0x736F6C6343 STOP ADDMOD EQ STOP CALLER ", + "sourceMap": "199:1726:0:-:0;;;298:143;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;342:22:0;;338:51;;373:16;;-1:-1:-1;;;373:16:0;;;;;;;;;;;338:51;-1:-1:-1;;;;;400:34:0;;;199:1726;;14:290:16;84:6;137:2;125:9;116:7;112:23;108:32;105:52;;;153:1;150;143:12;105:52;179:16;;-1:-1:-1;;;;;224:31:16;;214:42;;204:70;;270:1;267;260:12;204:70;293:5;14:290;-1:-1:-1;;;14:290:16:o;:::-;199:1726:0;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_executeWithToken_136": { + "entryPoint": null, + "id": 136, + "parameterSlots": 9, + "returnSlots": 0 + }, + "@_execute_122": { + "entryPoint": null, + "id": 122, + "parameterSlots": 6, + "returnSlots": 0 + }, + "@executeWithToken_112": { + "entryPoint": 190, + "id": 112, + "parameterSlots": 10, + "returnSlots": 0 + }, + "@execute_68": { + "entryPoint": 480, + "id": 68, + "parameterSlots": 7, + "returnSlots": 0 + }, + "@gateway_10": { + "entryPoint": null, + "id": 10, + "parameterSlots": 0, + "returnSlots": 0 + }, + "abi_decode_string_calldata": { + "entryPoint": 761, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bool_fromMemory": { + "entryPoint": 1400, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr": { + "entryPoint": 1052, + "id": null, + "parameterSlots": 2, + "returnSlots": 7 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256": { + "entryPoint": 834, + "id": null, + "parameterSlots": 2, + "returnSlots": 10 + }, + "abi_encode_string_calldata": { + "entryPoint": 1232, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 1216, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed": { + "entryPoint": 1441, + "id": null, + "parameterSlots": 7, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed": { + "entryPoint": 1305, + "id": null, + "parameterSlots": 10, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:5466:16", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:16", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "137:125:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "147:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "159:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "170:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "155:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "155:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "147:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "189:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "204:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "212:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "200:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "200:55:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "182:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "182:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "182:74:16" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "106:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "117:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "128:4:16", + "type": "" + } + ], + "src": "14:248:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "340:275:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "389:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "398:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "401:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "391:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "391:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "391:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "368:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "376:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "364:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "364:17:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "383:3:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "360:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "360:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "353:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "353:35:16" + }, + "nodeType": "YulIf", + "src": "350:55:16" + }, + { + "nodeType": "YulAssignment", + "src": "414:30:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "437:6:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "424:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "424:20:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "414:6:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "487:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "496:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "499:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "489:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "489:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "489:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "459:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "467:18:16", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "456:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "456:30:16" + }, + "nodeType": "YulIf", + "src": "453:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "512:29:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "528:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "536:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "524:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "524:17:16" + }, + "variableNames": [ + { + "name": "arrayPos", + "nodeType": "YulIdentifier", + "src": "512:8:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "593:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "602:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "605:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "595:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "595:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "595:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "564:6:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "572:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "560:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "560:19:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "581:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "556:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "556:30:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "588:3:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "553:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "553:39:16" + }, + "nodeType": "YulIf", + "src": "550:59:16" + } + ] + }, + "name": "abi_decode_string_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "303:6:16", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "311:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nodeType": "YulTypedName", + "src": "319:8:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "329:6:16", + "type": "" + } + ], + "src": "267:348:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "854:1203:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "901:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "910:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "913:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "903:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "903:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "903:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "875:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "884:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "871:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "871:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "896:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "867:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "867:33:16" + }, + "nodeType": "YulIf", + "src": "864:53:16" + }, + { + "nodeType": "YulAssignment", + "src": "926:33:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "949:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "936:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "936:23:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "926:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "968:46:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "999:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1010:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "995:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "995:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "982:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "982:32:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "972:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1023:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1033:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "1027:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1078:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1087:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1090:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1080:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1080:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1080:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1066:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1074:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1063:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1063:14:16" + }, + "nodeType": "YulIf", + "src": "1060:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1103:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1160:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1171:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1156:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1156:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1180:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1129:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1129:59:16" + }, + "variables": [ + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "1107:8:16", + "type": "" + }, + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "1117:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1197:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "1207:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "1197:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1224:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "1234:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "1224:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1251:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1284:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1295:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1280:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1280:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1267:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1267:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "1255:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1328:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1337:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1340:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1330:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1330:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1330:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "1314:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1324:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1311:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1311:16:16" + }, + "nodeType": "YulIf", + "src": "1308:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1353:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1410:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "1421:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1406:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1406:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1432:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1379:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1379:61:16" + }, + "variables": [ + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "1357:8:16", + "type": "" + }, + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "1367:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1449:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "1459:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "1449:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1476:18:16", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "1486:8:16" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "1476:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1503:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1536:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1547:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1532:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1532:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1519:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1519:32:16" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "1507:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1580:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1589:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1592:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1582:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1582:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1582:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "1566:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1576:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1563:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1563:16:16" + }, + "nodeType": "YulIf", + "src": "1560:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1605:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1662:9:16" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "1673:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1658:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1658:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1684:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1631:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1631:61:16" + }, + "variables": [ + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "1609:8:16", + "type": "" + }, + { + "name": "value6_1", + "nodeType": "YulTypedName", + "src": "1619:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1701:18:16", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "1711:8:16" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "1701:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1728:18:16", + "value": { + "name": "value6_1", + "nodeType": "YulIdentifier", + "src": "1738:8:16" + }, + "variableNames": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "1728:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1755:49:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1788:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1799:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1784:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1784:19:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1771:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1771:33:16" + }, + "variables": [ + { + "name": "offset_3", + "nodeType": "YulTypedName", + "src": "1759:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1833:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1842:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1845:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1835:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1835:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1835:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_3", + "nodeType": "YulIdentifier", + "src": "1819:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1829:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1816:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1816:16:16" + }, + "nodeType": "YulIf", + "src": "1813:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1858:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1915:9:16" + }, + { + "name": "offset_3", + "nodeType": "YulIdentifier", + "src": "1926:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1911:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1911:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1937:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1884:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1884:61:16" + }, + "variables": [ + { + "name": "value7_1", + "nodeType": "YulTypedName", + "src": "1862:8:16", + "type": "" + }, + { + "name": "value8_1", + "nodeType": "YulTypedName", + "src": "1872:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1954:18:16", + "value": { + "name": "value7_1", + "nodeType": "YulIdentifier", + "src": "1964:8:16" + }, + "variableNames": [ + { + "name": "value7", + "nodeType": "YulIdentifier", + "src": "1954:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1981:18:16", + "value": { + "name": "value8_1", + "nodeType": "YulIdentifier", + "src": "1991:8:16" + }, + "variableNames": [ + { + "name": "value8", + "nodeType": "YulIdentifier", + "src": "1981:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2008:43:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2035:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2046:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2031:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2031:19:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2018:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2018:33:16" + }, + "variableNames": [ + { + "name": "value9", + "nodeType": "YulIdentifier", + "src": "2008:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "748:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "759:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "771:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "779:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "787:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "795:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "803:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "811:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "819:6:16", + "type": "" + }, + { + "name": "value7", + "nodeType": "YulTypedName", + "src": "827:6:16", + "type": "" + }, + { + "name": "value8", + "nodeType": "YulTypedName", + "src": "835:6:16", + "type": "" + }, + { + "name": "value9", + "nodeType": "YulTypedName", + "src": "843:6:16", + "type": "" + } + ], + "src": "620:1437:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2242:898:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2289:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2298:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2301:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2291:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2291:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2291:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2263:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2272:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2259:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2259:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2284:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2255:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2255:33:16" + }, + "nodeType": "YulIf", + "src": "2252:53:16" + }, + { + "nodeType": "YulAssignment", + "src": "2314:33:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2337:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2324:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2324:23:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2314:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2356:46:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2387:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2398:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2383:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2383:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2370:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2370:32:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2360:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2411:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2421:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "2415:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2466:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2475:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2478:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2468:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2468:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2468:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2454:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2462:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2451:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2451:14:16" + }, + "nodeType": "YulIf", + "src": "2448:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2491:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2548:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2559:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2544:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2544:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2568:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "2517:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "2517:59:16" + }, + "variables": [ + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "2495:8:16", + "type": "" + }, + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "2505:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2585:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "2595:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "2585:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2612:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "2622:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "2612:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2639:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2672:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2683:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2668:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2668:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2655:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2655:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "2643:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2716:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2725:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2728:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2718:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2718:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2718:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "2702:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2712:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2699:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2699:16:16" + }, + "nodeType": "YulIf", + "src": "2696:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2741:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2798:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "2809:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2794:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2794:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2820:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "2767:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "2767:61:16" + }, + "variables": [ + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "2745:8:16", + "type": "" + }, + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "2755:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2837:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "2847:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "2837:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2864:18:16", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "2874:8:16" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "2864:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2891:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2924:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2935:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2920:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2920:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2907:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2907:32:16" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "2895:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2968:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2977:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2980:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2970:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2970:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2970:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "2954:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2964:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2951:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2951:16:16" + }, + "nodeType": "YulIf", + "src": "2948:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2993:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3050:9:16" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "3061:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3046:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3046:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3072:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "3019:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "3019:61:16" + }, + "variables": [ + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "2997:8:16", + "type": "" + }, + { + "name": "value6_1", + "nodeType": "YulTypedName", + "src": "3007:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3089:18:16", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "3099:8:16" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "3089:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3116:18:16", + "value": { + "name": "value6_1", + "nodeType": "YulIdentifier", + "src": "3126:8:16" + }, + "variableNames": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "3116:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2160:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2171:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2183:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "2191:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "2199:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "2207:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "2215:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "2223:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "2231:6:16", + "type": "" + } + ], + "src": "2062:1078:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3292:124:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3315:3:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3320:6:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "3328:6:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "3302:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3302:33:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3302:33:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3344:26:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3358:3:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "3363:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3354:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3354:16:16" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "3348:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3386:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3390:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3379:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3379:13:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3379:13:16" + }, + { + "nodeType": "YulAssignment", + "src": "3401:9:16", + "value": { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3408:2:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "3401:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "3260:3:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "3265:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3273:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "3284:3:16", + "type": "" + } + ], + "src": "3145:271:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3488:259:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3505:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "3510:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3498:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3498:19:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3498:19:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3543:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3548:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3539:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3539:14:16" + }, + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "3555:5:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "3562:6:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "3526:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3526:43:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3526:43:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3593:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "3598:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3589:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3589:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3607:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3585:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3585:27:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3614:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3578:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3578:38:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3578:38:16" + }, + { + "nodeType": "YulAssignment", + "src": "3625:116:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3640:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "3653:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3661:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3649:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3649:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3666:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3645:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3645:88:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3636:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3636:98:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3736:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3632:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3632:109:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "3625:3:16" + } + ] + } + ] + }, + "name": "abi_encode_string_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "3457:5:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "3464:6:16", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "3472:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "3480:3:16", + "type": "" + } + ], + "src": "3421:326:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4083:513:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4100:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4111:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4093:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4093:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4093:25:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4138:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4149:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4134:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4134:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4154:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4127:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4127:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4127:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4167:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "4208:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "4216:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4228:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4239:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4224:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4224:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "4181:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "4181:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "4171:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4264:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4275:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4260:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4260:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "4284:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4292:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4280:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4280:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4253:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4253:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4253:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4312:64:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "4353:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "4361:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "4369:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "4326:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "4326:50:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "4316:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4396:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4407:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4392:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4392:18:16" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "4412:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4385:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4385:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4385:34:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4439:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4450:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4435:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4435:19:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "4460:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4468:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4456:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4456:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4428:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4428:51:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4428:51:16" + }, + { + "nodeType": "YulAssignment", + "src": "4488:58:16", + "value": { + "arguments": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "4523:6:16" + }, + { + "name": "value7", + "nodeType": "YulIdentifier", + "src": "4531:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "4539:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "4496:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "4496:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "4488:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4566:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4577:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4562:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4562:19:16" + }, + { + "name": "value8", + "nodeType": "YulIdentifier", + "src": "4583:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4555:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4555:35:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4555:35:16" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3988:9:16", + "type": "" + }, + { + "name": "value8", + "nodeType": "YulTypedName", + "src": "3999:6:16", + "type": "" + }, + { + "name": "value7", + "nodeType": "YulTypedName", + "src": "4007:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "4015:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "4023:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "4031:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "4039:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "4047:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "4055:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4063:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "4074:4:16", + "type": "" + } + ], + "src": "3752:844:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4679:199:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "4725:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4734:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4737:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4727:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4727:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4727:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4700:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4709:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4696:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4696:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4721:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "4692:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4692:32:16" + }, + "nodeType": "YulIf", + "src": "4689:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4750:29:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4769:9:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "4763:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "4763:16:16" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4754:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4832:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4841:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4844:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4834:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4834:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4834:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4801:5:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4822:5:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "4815:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4815:13:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "4808:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4808:21:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "4798:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4798:32:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "4791:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4791:40:16" + }, + "nodeType": "YulIf", + "src": "4788:60:16" + }, + { + "nodeType": "YulAssignment", + "src": "4857:15:16", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4867:5:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4857:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bool_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4645:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "4656:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4668:6:16", + "type": "" + } + ], + "src": "4601:277:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5128:336:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5145:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5156:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5138:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5138:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5138:25:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5183:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5194:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5179:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5179:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5199:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5172:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5172:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5172:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5212:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5253:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "5261:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5273:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5284:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5269:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5269:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "5226:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "5226:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "5216:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5309:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5320:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5305:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5305:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "5329:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5337:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "5325:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5325:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5298:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5298:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5298:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "5357:58:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "5392:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "5400:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "5408:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "5365:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "5365:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5357:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5435:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5446:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5431:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5431:18:16" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "5451:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5424:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5424:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5424:34:16" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5057:9:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "5068:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "5076:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "5084:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "5092:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "5100:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5108:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5119:4:16", + "type": "" + } + ], + "src": "4883:581:16" + } + ] + }, + "contents": "{\n { }\n function abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_string_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7, value8, value9\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n let offset_3 := calldataload(add(headStart, 128))\n if gt(offset_3, _1) { revert(0, 0) }\n let value7_1, value8_1 := abi_decode_string_calldata(add(headStart, offset_3), dataEnd)\n value7 := value7_1\n value8 := value8_1\n value9 := calldataload(add(headStart, 160))\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 192)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value6, value7, tail_2)\n mstore(add(headStart, 160), value8)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 128)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 128))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n }\n}", + "id": 16, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": { + "10": [ + { + "length": 32, + "start": 75 + }, + { + "length": 32, + "start": 277 + }, + { + "length": 32, + "start": 567 + } + ] + }, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106100415760003560e01c8063116191b6146100465780631a98b2e01461009657806349160658146100ab575b600080fd5b61006d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6100a96100a4366004610342565b6100be565b005b6100a96100b936600461041c565b6101e0565b600085856040516100d09291906104c0565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed99061015a908e908e908e908e908e9089908d908d908d90600401610519565b6020604051808303816000875af1158015610179573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019d9190610578565b6101d3576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600082826040516101f29291906104c0565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c390610276908b908b908b908b908b9089906004016105a1565b6020604051808303816000875af1158015610295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b99190610578565b6102ef576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050565b60008083601f84011261030b57600080fd5b50813567ffffffffffffffff81111561032357600080fd5b60208301915083602082850101111561033b57600080fd5b9250929050565b60008060008060008060008060008060c08b8d03121561036157600080fd5b8a35995060208b013567ffffffffffffffff8082111561038057600080fd5b61038c8e838f016102f9565b909b50995060408d01359150808211156103a557600080fd5b6103b18e838f016102f9565b909950975060608d01359150808211156103ca57600080fd5b6103d68e838f016102f9565b909750955060808d01359150808211156103ef57600080fd5b506103fc8d828e016102f9565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060008060006080888a03121561043757600080fd5b87359650602088013567ffffffffffffffff8082111561045657600080fd5b6104628b838c016102f9565b909850965060408a013591508082111561047b57600080fd5b6104878b838c016102f9565b909650945060608a01359150808211156104a057600080fd5b506104ad8a828b016102f9565b989b979a50959850939692959293505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600061053360c083018a8c6104d0565b828103604084015261054681898b6104d0565b905086606084015282810360808401526105618186886104d0565b9150508260a08301529a9950505050505050505050565b60006020828403121561058a57600080fd5b8151801515811461059a57600080fd5b9392505050565b8681526080602082015260006105bb6080830187896104d0565b82810360408401526105ce8186886104d0565b91505082606083015297965050505050505056fea2646970667358221220164018621781157703a2fa3b00cc12ddd6039c9b69d9dfa7353c10a02757f48164736f6c63430008140033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x116191B6 EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x96 JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0xAB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6D PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA9 PUSH2 0xA4 CALLDATASIZE PUSH1 0x4 PUSH2 0x342 JUMP JUMPDEST PUSH2 0xBE JUMP JUMPDEST STOP JUMPDEST PUSH2 0xA9 PUSH2 0xB9 CALLDATASIZE PUSH1 0x4 PUSH2 0x41C JUMP JUMPDEST PUSH2 0x1E0 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0xD0 SWAP3 SWAP2 SWAP1 PUSH2 0x4C0 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x15A SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x519 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x179 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x19D SWAP2 SWAP1 PUSH2 0x578 JUMP JUMPDEST PUSH2 0x1D3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1F2 SWAP3 SWAP2 SWAP1 PUSH2 0x4C0 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x276 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x5A1 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x295 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x578 JUMP JUMPDEST PUSH2 0x2EF JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x30B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x323 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x33B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0x361 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x380 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x38C DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3B1 DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3CA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3D6 DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3FC DUP14 DUP3 DUP15 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0x437 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x456 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x462 DUP12 DUP4 DUP13 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x47B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x487 DUP12 DUP4 DUP13 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x4A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x4AD DUP11 DUP3 DUP12 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x533 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0x4D0 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x546 DUP2 DUP10 DUP12 PUSH2 0x4D0 JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x561 DUP2 DUP7 DUP9 PUSH2 0x4D0 JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x58A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x59A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x5BB PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0x4D0 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x5CE DUP2 DUP7 DUP9 PUSH2 0x4D0 JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 AND BLOCKHASH XOR PUSH3 0x178115 PUSH24 0x3A2FA3B00CC12DDD6039C9B69D9DFA7353C10A02757F481 PUSH5 0x736F6C6343 STOP ADDMOD EQ STOP CALLER ", + "sourceMap": "199:1726:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;252:39;;;;;;;;212:42:16;200:55;;;182:74;;170:2;155:18;252:39:0;;;;;;;872:667;;;;;;:::i;:::-;;:::i;:::-;;447:419;;;;;;:::i;:::-;;:::i;872:667::-;1119:19;1151:7;;1141:18;;;;;;;:::i;:::-;;;;;;;;;1188:218;;;1141:18;-1:-1:-1;1188:35:0;:7;:35;;;;:218;;1241:9;;1268:11;;;;1297:13;;;;1141:18;;1357:11;;;;1386:6;;1188:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1170:276;;1424:22;;;;;;;;;;;;;;1170:276;1109:430;872:667;;;;;;;;;;:::o;447:419::-;624:19;656:7;;646:18;;;;;;;:::i;:::-;;;;;;;;;680:80;;;646:18;-1:-1:-1;680:28:0;:7;:28;;;;:80;;709:9;;720:11;;;;733:13;;;;646:18;;680:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;675:128;;781:22;;;;;;;;;;;;;;675:128;614:252;447:419;;;;;;;:::o;267:348:16:-;319:8;329:6;383:3;376:4;368:6;364:17;360:27;350:55;;401:1;398;391:12;350:55;-1:-1:-1;424:20:16;;467:18;456:30;;453:50;;;499:1;496;489:12;453:50;536:4;528:6;524:17;512:29;;588:3;581:4;572:6;564;560:19;556:30;553:39;550:59;;;605:1;602;595:12;550:59;267:348;;;;;:::o;620:1437::-;771:6;779;787;795;803;811;819;827;835;843;896:3;884:9;875:7;871:23;867:33;864:53;;;913:1;910;903:12;864:53;949:9;936:23;926:33;;1010:2;999:9;995:18;982:32;1033:18;1074:2;1066:6;1063:14;1060:34;;;1090:1;1087;1080:12;1060:34;1129:59;1180:7;1171:6;1160:9;1156:22;1129:59;:::i;:::-;1207:8;;-1:-1:-1;1103:85:16;-1:-1:-1;1295:2:16;1280:18;;1267:32;;-1:-1:-1;1311:16:16;;;1308:36;;;1340:1;1337;1330:12;1308:36;1379:61;1432:7;1421:8;1410:9;1406:24;1379:61;:::i;:::-;1459:8;;-1:-1:-1;1353:87:16;-1:-1:-1;1547:2:16;1532:18;;1519:32;;-1:-1:-1;1563:16:16;;;1560:36;;;1592:1;1589;1582:12;1560:36;1631:61;1684:7;1673:8;1662:9;1658:24;1631:61;:::i;:::-;1711:8;;-1:-1:-1;1605:87:16;-1:-1:-1;1799:3:16;1784:19;;1771:33;;-1:-1:-1;1816:16:16;;;1813:36;;;1845:1;1842;1835:12;1813:36;;1884:61;1937:7;1926:8;1915:9;1911:24;1884:61;:::i;:::-;1858:87;;1964:8;1954:18;;;1991:8;1981:18;;;2046:3;2035:9;2031:19;2018:33;2008:43;;620:1437;;;;;;;;;;;;;:::o;2062:1078::-;2183:6;2191;2199;2207;2215;2223;2231;2284:3;2272:9;2263:7;2259:23;2255:33;2252:53;;;2301:1;2298;2291:12;2252:53;2337:9;2324:23;2314:33;;2398:2;2387:9;2383:18;2370:32;2421:18;2462:2;2454:6;2451:14;2448:34;;;2478:1;2475;2468:12;2448:34;2517:59;2568:7;2559:6;2548:9;2544:22;2517:59;:::i;:::-;2595:8;;-1:-1:-1;2491:85:16;-1:-1:-1;2683:2:16;2668:18;;2655:32;;-1:-1:-1;2699:16:16;;;2696:36;;;2728:1;2725;2718:12;2696:36;2767:61;2820:7;2809:8;2798:9;2794:24;2767:61;:::i;:::-;2847:8;;-1:-1:-1;2741:87:16;-1:-1:-1;2935:2:16;2920:18;;2907:32;;-1:-1:-1;2951:16:16;;;2948:36;;;2980:1;2977;2970:12;2948:36;;3019:61;3072:7;3061:8;3050:9;3046:24;3019:61;:::i;:::-;2062:1078;;;;-1:-1:-1;2062:1078:16;;-1:-1:-1;2062:1078:16;;;;2993:87;;-1:-1:-1;;;2062:1078:16:o;3145:271::-;3328:6;3320;3315:3;3302:33;3284:3;3354:16;;3379:13;;;3354:16;3145:271;-1:-1:-1;3145:271:16:o;3421:326::-;3510:6;3505:3;3498:19;3562:6;3555:5;3548:4;3543:3;3539:14;3526:43;;3614:1;3607:4;3598:6;3593:3;3589:16;3585:27;3578:38;3480:3;3736:4;3666:66;3661:2;3653:6;3649:15;3645:88;3640:3;3636:98;3632:109;3625:116;;3421:326;;;;:::o;3752:844::-;4111:6;4100:9;4093:25;4154:3;4149:2;4138:9;4134:18;4127:31;4074:4;4181:63;4239:3;4228:9;4224:19;4216:6;4208;4181:63;:::i;:::-;4292:9;4284:6;4280:22;4275:2;4264:9;4260:18;4253:50;4326;4369:6;4361;4353;4326:50;:::i;:::-;4312:64;;4412:6;4407:2;4396:9;4392:18;4385:34;4468:9;4460:6;4456:22;4450:3;4439:9;4435:19;4428:51;4496:50;4539:6;4531;4523;4496:50;:::i;:::-;4488:58;;;4583:6;4577:3;4566:9;4562:19;4555:35;3752:844;;;;;;;;;;;;:::o;4601:277::-;4668:6;4721:2;4709:9;4700:7;4696:23;4692:32;4689:52;;;4737:1;4734;4727:12;4689:52;4769:9;4763:16;4822:5;4815:13;4808:21;4801:5;4798:32;4788:60;;4844:1;4841;4834:12;4788:60;4867:5;4601:277;-1:-1:-1;;;4601:277:16:o;4883:581::-;5156:6;5145:9;5138:25;5199:3;5194:2;5183:9;5179:18;5172:31;5119:4;5226:63;5284:3;5273:9;5269:19;5261:6;5253;5226:63;:::i;:::-;5337:9;5329:6;5325:22;5320:2;5309:9;5305:18;5298:50;5365;5408:6;5400;5392;5365:50;:::i;:::-;5357:58;;;5451:6;5446:2;5435:9;5431:18;5424:34;4883:581;;;;;;;;;:::o" + }, + "methodIdentifiers": { + "execute(bytes32,string,string,bytes)": "49160658", + "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", + "gateway()": "116191b6" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"gateway_\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":\"AxelarExecutable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":{\"keccak256\":\"0x2a88d046f9cdc664afc7b788d6c5b534d361b46fb45ab7abf721a58dd813359b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ac48adfa686aa78e2474bcb72f49791b631bd5dd15e0991ccd91b9660caacdb\",\"dweb:/ipfs/QmQ7uFDHagPUDq93T4vaeANzLE8J8Ch3jcdTAdNT7kkfEW\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol": { + "IAxelarExecutable": { + "abi": [ + { + "inputs": [], + "name": "InvalidAddress", + "type": "error" + }, + { + "inputs": [], + "name": "NotApprovedByGateway", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "tokenSymbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "executeWithToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "gateway", + "outputs": [ + { + "internalType": "contract IAxelarGateway", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "execute(bytes32,string,string,bytes)": "49160658", + "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", + "gateway()": "116191b6" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":\"IAxelarExecutable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol": { + "IAxelarGasService": { + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "required", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "provided", + "type": "uint256" + } + ], + "name": "InsufficientGasPayment", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidAddress", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidAmounts", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidCodeHash", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidGasUpdates", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidImplementation", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidOwner", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidOwnerAddress", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidParams", + "type": "error" + }, + { + "inputs": [], + "name": "NotCollector", + "type": "error" + }, + { + "inputs": [], + "name": "NotOwner", + "type": "error" + }, + { + "inputs": [], + "name": "NotProxy", + "type": "error" + }, + { + "inputs": [], + "name": "SetupFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum GasEstimationType", + "name": "gasEstimationType", + "type": "uint8" + } + ], + "name": "UnsupportedEstimationType", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "ExpressGasAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "GasAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "chain", + "type": "string" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "gasEstimationType", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "l1FeeScalar", + "type": "uint64" + }, + { + "internalType": "uint128", + "name": "axelarBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeGasPrice", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeBlobBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "expressFee", + "type": "uint128" + } + ], + "indexed": false, + "internalType": "struct GasInfo", + "name": "info", + "type": "tuple" + } + ], + "name": "GasInfoUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sourceAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "GasPaidForContractCall", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sourceAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "GasPaidForContractCallWithToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sourceAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "GasPaidForExpressCall", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sourceAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "GasPaidForExpressCallWithToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "NativeExpressGasAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "NativeGasAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sourceAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "NativeGasPaidForContractCall", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sourceAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "NativeGasPaidForContractCallWithToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sourceAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "NativeGasPaidForExpressCall", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sourceAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "NativeGasPaidForExpressCallWithToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferStarted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address payable", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "Refunded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "addExpressGas", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "addGas", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "addNativeExpressGas", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "addNativeGas", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address payable", + "name": "receiver", + "type": "address" + }, + { + "internalType": "address[]", + "name": "tokens", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "collectFees", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "contractId", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "executionGasLimit", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "params", + "type": "bytes" + } + ], + "name": "estimateGasFee", + "outputs": [ + { + "internalType": "uint256", + "name": "gasEstimate", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "gasCollector", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "chain", + "type": "string" + } + ], + "name": "getGasInfo", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "gasEstimationType", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "l1FeeScalar", + "type": "uint64" + }, + { + "internalType": "uint128", + "name": "axelarBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeGasPrice", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeBlobBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "expressFee", + "type": "uint128" + } + ], + "internalType": "struct GasInfo", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "executionGasLimit", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "estimateOnChain", + "type": "bool" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + }, + { + "internalType": "bytes", + "name": "params", + "type": "bytes" + } + ], + "name": "payGas", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "payGasForContractCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "payGasForContractCallWithToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "payGasForExpressCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "gasToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "gasFeeAmount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "payGasForExpressCallWithToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "payNativeGasForContractCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "payNativeGasForContractCallWithToken", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "payNativeGasForExpressCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "refundAddress", + "type": "address" + } + ], + "name": "payNativeGasForExpressCallWithToken", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingOwner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "proposeOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "txHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "logIndex", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "receiver", + "type": "address" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "refund", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "setup", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string[]", + "name": "chains", + "type": "string[]" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "gasEstimationType", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "l1FeeScalar", + "type": "uint64" + }, + { + "internalType": "uint128", + "name": "axelarBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeGasPrice", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeBlobBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "expressFee", + "type": "uint128" + } + ], + "internalType": "struct GasInfo[]", + "name": "gasUpdates", + "type": "tuple[]" + } + ], + "name": "updateGasInfo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "newImplementationCodeHash", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "params", + "type": "bytes" + } + ], + "name": "upgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "acceptOwnership()": "79ba5097", + "addExpressGas(bytes32,uint256,address,uint256,address)": "2edd2aa8", + "addGas(bytes32,uint256,address,uint256,address)": "ab1999ba", + "addNativeExpressGas(bytes32,uint256,address)": "4d238489", + "addNativeGas(bytes32,uint256,address)": "cd433ada", + "collectFees(address,address[],uint256[])": "1055eaaf", + "contractId()": "8291286c", + "estimateGasFee(string,string,bytes,uint256,bytes)": "135eaa70", + "gasCollector()": "892b5007", + "getGasInfo(string)": "86389f02", + "implementation()": "5c60da1b", + "owner()": "8da5cb5b", + "payGas(address,string,string,bytes,uint256,bool,address,bytes)": "edf936f2", + "payGasForContractCall(address,string,string,bytes,address,uint256,address)": "fd09e3bd", + "payGasForContractCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)": "edb6b3a5", + "payGasForExpressCall(address,string,string,bytes,address,uint256,address)": "ba9ddc8d", + "payGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)": "17a49f7c", + "payNativeGasForContractCall(address,string,string,bytes,address)": "0c93e3bb", + "payNativeGasForContractCallWithToken(address,string,string,bytes,string,uint256,address)": "c62c2002", + "payNativeGasForExpressCall(address,string,string,bytes,address)": "f61ed218", + "payNativeGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address)": "2e9b7470", + "pendingOwner()": "e30c3978", + "proposeOwnership(address)": "710bf322", + "refund(bytes32,uint256,address,address,uint256)": "36504721", + "setup(bytes)": "9ded06df", + "transferOwnership(address)": "f2fde38b", + "updateGasInfo(string[],(uint64,uint64,uint128,uint128,uint128,uint128)[])": "d3b81f0c", + "upgrade(address,bytes32,bytes)": "a3499c73" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"required\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"InsufficientGasPayment\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAmounts\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidCodeHash\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidGasUpdates\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidImplementation\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwnerAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidParams\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotCollector\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotProxy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SetupFailed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"enum GasEstimationType\",\"name\":\"gasEstimationType\",\"type\":\"uint8\"}],\"name\":\"UnsupportedEstimationType\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"ExpressGasAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"indexed\":false,\"internalType\":\"struct GasInfo\",\"name\":\"info\",\"type\":\"tuple\"}],\"name\":\"GasInfoUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasPaidForContractCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasPaidForContractCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasPaidForExpressCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasPaidForExpressCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeExpressGasAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasPaidForContractCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasPaidForContractCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasPaidForExpressCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasPaidForExpressCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address payable\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Refunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"addExpressGas\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"addGas\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"addNativeExpressGas\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"addNativeGas\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"receiver\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"tokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"collectFees\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"executionGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"estimateGasFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"gasEstimate\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasCollector\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"}],\"name\":\"getGasInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"internalType\":\"struct GasInfo\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"executionGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"estimateOnChain\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"payGas\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payGasForContractCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payGasForContractCallWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payGasForExpressCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payGasForExpressCallWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payNativeGasForContractCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payNativeGasForContractCallWithToken\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payNativeGasForExpressCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payNativeGasForExpressCallWithToken\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"proposeOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address payable\",\"name\":\"receiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"refund\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"chains\",\"type\":\"string[]\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"internalType\":\"struct GasInfo[]\",\"name\":\"gasUpdates\",\"type\":\"tuple[]\"}],\"name\":\"updateGasInfo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"newImplementationCodeHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This interface inherits IUpgradable\",\"events\":{\"GasInfoUpdated(string,(uint64,uint64,uint128,uint128,uint128,uint128))\":{\"params\":{\"chain\":\"The name of the chain\",\"info\":\"The gas info for the chain\"}}},\"kind\":\"dev\",\"methods\":{\"acceptOwnership()\":{\"details\":\"Can only be called by the pending owner\"},\"addExpressGas(bytes32,uint256,address,uint256,address)\":{\"details\":\"This function can be called on the source chain after calling the gateway to express execute a remote contract.\",\"params\":{\"gasFeeAmount\":\"The amount of tokens to add as gas\",\"gasToken\":\"The ERC20 token address used to add gas\",\"logIndex\":\"The log index for the cross-chain call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"addGas(bytes32,uint256,address,uint256,address)\":{\"details\":\"This function can be called on the source chain after calling the gateway to execute a remote contract.\",\"params\":{\"gasFeeAmount\":\"The amount of tokens to add as gas\",\"gasToken\":\"The ERC20 token address used to add gas\",\"logIndex\":\"The log index for the cross-chain call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"addNativeExpressGas(bytes32,uint256,address)\":{\"details\":\"This function can be called on the source chain after calling the gateway to express execute a remote contract.\",\"params\":{\"logIndex\":\"The log index for the cross-chain call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"addNativeGas(bytes32,uint256,address)\":{\"details\":\"This function can be called on the source chain after calling the gateway to execute a remote contract.\",\"params\":{\"logIndex\":\"The log index for the cross-chain call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"collectFees(address,address[],uint256[])\":{\"details\":\"Use address(0) as the token address for native currency.\",\"params\":{\"amounts\":\"Array of amounts to be collected for each respective token address\",\"receiver\":\"The address to receive the collected fees\",\"tokens\":\"Array of token addresses to be collected\"}},\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}},\"estimateGasFee(string,string,bytes,uint256,bytes)\":{\"params\":{\"destinationAddress\":\"Destination contract address being called\",\"destinationChain\":\"Axelar registered name of the destination chain\",\"executionGasLimit\":\"The gas limit to be used for the destination contract execution, e.g. pass in 200k if your app consumes needs upto 200k for this contract call\",\"params\":\"Additional parameters for the gas estimation\"},\"returns\":{\"gasEstimate\":\"The cross-chain gas estimate, in terms of source chain's native gas token that should be forwarded to the gas service.\"}},\"gasCollector()\":{\"returns\":{\"_0\":\"address of the gas collector\"}},\"getGasInfo(string)\":{\"params\":{\"chain\":\"The name of the chain\"},\"returns\":{\"_0\":\"gasInfo The gas info for the chain\"}},\"owner()\":{\"returns\":{\"_0\":\"address The address of the current owner\"}},\"payGas(address,string,string,bytes,uint256,bool,address,bytes)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.If estimateOnChain is true, the function will estimate the gas cost and revert if the payment is insufficient.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"estimateOnChain\":\"Flag to enable on-chain gas estimation\",\"executionGasLimit\":\"The gas limit for the contract call\",\"params\":\"Additional parameters for gas payment. This can be left empty for normal contract call payments.\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payGasForContractCall(address,string,string,bytes,address,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"gasFeeAmount\":\"The amount of tokens to pay for gas\",\"gasToken\":\"The address of the ERC20 token used to pay for gas\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payGasForContractCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"amount\":\"The amount of tokens to be sent with the call\",\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call with tokens will be made\",\"gasFeeAmount\":\"The amount of tokens to pay for gas\",\"gasToken\":\"The address of the ERC20 token used to pay for gas\",\"payload\":\"Data payload for the contract call with tokens\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\",\"symbol\":\"The symbol of the token to be sent with the call\"}},\"payGasForExpressCall(address,string,string,bytes,address,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to express execute a remote contract.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"gasFeeAmount\":\"The amount of tokens to pay for gas\",\"gasToken\":\"The address of the ERC20 token used to pay for gas\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to express execute a remote contract.\",\"params\":{\"amount\":\"The amount of tokens to be sent with the call\",\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call with tokens will be made\",\"gasFeeAmount\":\"The amount of tokens to pay for gas\",\"gasToken\":\"The address of the ERC20 token used to pay for gas\",\"payload\":\"Data payload for the contract call with tokens\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\",\"symbol\":\"The symbol of the token to be sent with the call\"}},\"payNativeGasForContractCall(address,string,string,bytes,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payNativeGasForContractCallWithToken(address,string,string,bytes,string,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"amount\":\"The amount of tokens to be sent with the call\",\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call with tokens will be made\",\"payload\":\"Data payload for the contract call with tokens\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\",\"symbol\":\"The symbol of the token to be sent with the call\"}},\"payNativeGasForExpressCall(address,string,string,bytes,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payNativeGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"amount\":\"The amount of tokens to be sent with the call\",\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call with tokens will be made\",\"payload\":\"Data payload for the contract call with tokens\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\",\"symbol\":\"The symbol of the token to be sent with the call\"}},\"pendingOwner()\":{\"returns\":{\"_0\":\"address The address of the pending owner\"}},\"proposeOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}},\"refund(bytes32,uint256,address,address,uint256)\":{\"details\":\"Only callable by the gasCollector.Use address(0) as the token address to refund native currency.\",\"params\":{\"amount\":\"The amount to refund\",\"logIndex\":\"The log index for the cross-chain call\",\"receiver\":\"The address to receive the refund\",\"token\":\"The token address to be refunded\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"transferOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}},\"updateGasInfo(string[],(uint64,uint64,uint128,uint128,uint128,uint128)[])\":{\"details\":\"This function is called by the gas oracle to update the gas prices for a specific chains.\",\"params\":{\"chains\":\"Array of chain names\",\"gasUpdates\":\"Array of gas updates\"}}},\"title\":\"IAxelarGasService Interface\",\"version\":1},\"userdoc\":{\"events\":{\"GasInfoUpdated(string,(uint64,uint64,uint128,uint128,uint128,uint128))\":{\"notice\":\"Event emitted when the gas price for a specific chain is updated.\"}},\"kind\":\"user\",\"methods\":{\"acceptOwnership()\":{\"notice\":\"Transfers ownership to the pending owner.\"},\"addExpressGas(bytes32,uint256,address,uint256,address)\":{\"notice\":\"Add additional gas payment using ERC20 tokens after initiating an express cross-chain call.\"},\"addGas(bytes32,uint256,address,uint256,address)\":{\"notice\":\"Add additional gas payment using ERC20 tokens after initiating a cross-chain call.\"},\"addNativeExpressGas(bytes32,uint256,address)\":{\"notice\":\"Add additional gas payment using native currency after initiating an express cross-chain call.\"},\"addNativeGas(bytes32,uint256,address)\":{\"notice\":\"Add additional gas payment using native currency after initiating a cross-chain call.\"},\"collectFees(address,address[],uint256[])\":{\"notice\":\"Allows the gasCollector to collect accumulated fees from the contract.\"},\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"},\"estimateGasFee(string,string,bytes,uint256,bytes)\":{\"notice\":\"Estimates the gas fee for a cross-chain contract call.\"},\"gasCollector()\":{\"notice\":\"Returns the address of the designated gas collector.\"},\"getGasInfo(string)\":{\"notice\":\"Returns the gas price for a specific chain.\"},\"owner()\":{\"notice\":\"Returns the current owner of the contract.\"},\"payGas(address,string,string,bytes,uint256,bool,address,bytes)\":{\"notice\":\"Pay for gas for any type of contract execution on a destination chain.\"},\"payGasForContractCall(address,string,string,bytes,address,uint256,address)\":{\"notice\":\"Pay for gas using ERC20 tokens for a contract call on a destination chain.\"},\"payGasForContractCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)\":{\"notice\":\"Pay for gas using ERC20 tokens for a contract call with tokens on a destination chain.\"},\"payGasForExpressCall(address,string,string,bytes,address,uint256,address)\":{\"notice\":\"Pay for gas using ERC20 tokens for an express contract call on a destination chain.\"},\"payGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)\":{\"notice\":\"Pay for gas using ERC20 tokens for an express contract call with tokens on a destination chain.\"},\"payNativeGasForContractCall(address,string,string,bytes,address)\":{\"notice\":\"Pay for gas using native currency for a contract call on a destination chain.\"},\"payNativeGasForContractCallWithToken(address,string,string,bytes,string,uint256,address)\":{\"notice\":\"Pay for gas using native currency for a contract call with tokens on a destination chain.\"},\"payNativeGasForExpressCall(address,string,string,bytes,address)\":{\"notice\":\"Pay for gas using native currency for an express contract call on a destination chain.\"},\"payNativeGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address)\":{\"notice\":\"Pay for gas using native currency for an express contract call with tokens on a destination chain.\"},\"pendingOwner()\":{\"notice\":\"Returns the address of the pending owner of the contract.\"},\"proposeOwnership(address)\":{\"notice\":\"Proposes to transfer the contract's ownership to a new address. The new owner needs to accept the ownership explicitly.\"},\"refund(bytes32,uint256,address,address,uint256)\":{\"notice\":\"Refunds gas payment to the receiver in relation to a specific cross-chain transaction.\"},\"transferOwnership(address)\":{\"notice\":\"Transfers ownership of the contract to a new address\"},\"updateGasInfo(string[],(uint64,uint64,uint128,uint128,uint128,uint128)[])\":{\"notice\":\"Updates the gas price for a specific chain.\"}},\"notice\":\"This is an interface for the AxelarGasService contract which manages gas payments and refunds for cross-chain communication on the Axelar network.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":\"IAxelarGasService\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":{\"keccak256\":\"0x7ad77d3af41f342e9032889a7b5aa224ab0c6dfaf9ce9350fe403d4a596c5eae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc2358f1f1138cd742a7cfdfc83420c488c19c3b3e39d703482e124e453953ee\",\"dweb:/ipfs/QmYki4j2yWrixJVs955DyS1ZmLD5zcxe8ss52w6DLBLRi4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol": { + "IAxelarGateway": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "BurnFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "ExceedMintLimit", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidAmount", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidAuthModule", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidChainId", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidCodeHash", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidCommands", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidGovernance", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidMintLimiter", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSetMintLimitsParams", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidTokenDeployer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "MintFailed", + "type": "error" + }, + { + "inputs": [], + "name": "NotGovernance", + "type": "error" + }, + { + "inputs": [], + "name": "NotMintLimiter", + "type": "error" + }, + { + "inputs": [], + "name": "NotProxy", + "type": "error" + }, + { + "inputs": [], + "name": "NotSelf", + "type": "error" + }, + { + "inputs": [], + "name": "SetupFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "TokenAlreadyExists", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "TokenContractDoesNotExist", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "TokenDeployFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "TokenDoesNotExist", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationContractAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "payload", + "type": "bytes" + } + ], + "name": "ContractCall", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "sourceTxHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "sourceEventIndex", + "type": "uint256" + } + ], + "name": "ContractCallApproved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "sourceTxHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "sourceEventIndex", + "type": "uint256" + } + ], + "name": "ContractCallApprovedWithMint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + } + ], + "name": "ContractCallExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationContractAddress", + "type": "string" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "ContractCallWithToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + } + ], + "name": "Executed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousGovernance", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newGovernance", + "type": "address" + } + ], + "name": "GovernanceTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousGovernance", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newGovernance", + "type": "address" + } + ], + "name": "MintLimiterTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "newOperatorsData", + "type": "bytes" + } + ], + "name": "OperatorshipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "indexed": false, + "internalType": "address", + "name": "tokenAddresses", + "type": "address" + } + ], + "name": "TokenDeployed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "limit", + "type": "uint256" + } + ], + "name": "TokenMintLimitUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenSent", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "inputs": [], + "name": "allTokensFrozen", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "authModule", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "contractAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + } + ], + "name": "callContract", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "contractAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "callContractWithToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "contractId", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "input", + "type": "bytes" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "governance", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + } + ], + "name": "isCommandExecuted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "isContractCallAndMintApproved", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + } + ], + "name": "isContractCallApproved", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "mintLimiter", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "sendToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string[]", + "name": "symbols", + "type": "string[]" + }, + { + "internalType": "uint256[]", + "name": "limits", + "type": "uint256[]" + } + ], + "name": "setTokenMintLimits", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "setup", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "tokenAddresses", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "tokenDeployer", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "tokenFrozen", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "tokenMintAmount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "symbol", + "type": "string" + } + ], + "name": "tokenMintLimit", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newGovernance", + "type": "address" + } + ], + "name": "transferGovernance", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newGovernance", + "type": "address" + } + ], + "name": "transferMintLimiter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "newImplementationCodeHash", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "setupParams", + "type": "bytes" + } + ], + "name": "upgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + } + ], + "name": "validateContractCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "validateContractCallAndMint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "allTokensFrozen()": "aa1e1f0a", + "authModule()": "64940c56", + "callContract(string,string,bytes)": "1c92115f", + "callContractWithToken(string,string,bytes,string,uint256)": "b5417084", + "contractId()": "8291286c", + "execute(bytes)": "09c5eabe", + "governance()": "5aa6e675", + "implementation()": "5c60da1b", + "isCommandExecuted(bytes32)": "d26ff210", + "isContractCallAndMintApproved(bytes32,string,string,address,bytes32,string,uint256)": "bc00c216", + "isContractCallApproved(bytes32,string,string,address,bytes32)": "f6a5f9f5", + "mintLimiter()": "c82fe87a", + "sendToken(string,string,string,uint256)": "26ef699d", + "setTokenMintLimits(string[],uint256[])": "67ace8eb", + "setup(bytes)": "9ded06df", + "tokenAddresses(string)": "935b13f6", + "tokenDeployer()": "2a2dae0a", + "tokenFrozen(string)": "7b1b769e", + "tokenMintAmount(string)": "cec7b359", + "tokenMintLimit(string)": "269eb65e", + "transferGovernance(address)": "d38bfff4", + "transferMintLimiter(address)": "41d8f26b", + "upgrade(address,bytes32,bytes)": "a3499c73", + "validateContractCall(bytes32,string,string,bytes32)": "5f6970c3", + "validateContractCallAndMint(bytes32,string,string,bytes32,string,uint256)": "1876eed9" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"BurnFailed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"ExceedMintLimit\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAmount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAuthModule\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidChainId\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidCodeHash\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidCommands\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidGovernance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidMintLimiter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidSetMintLimitsParams\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidTokenDeployer\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"MintFailed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotGovernance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotMintLimiter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotProxy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotSelf\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SetupFailed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"TokenAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenContractDoesNotExist\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"TokenDeployFailed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"TokenDoesNotExist\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationContractAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"ContractCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"sourceTxHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"sourceEventIndex\",\"type\":\"uint256\"}],\"name\":\"ContractCallApproved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"sourceTxHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"sourceEventIndex\",\"type\":\"uint256\"}],\"name\":\"ContractCallApprovedWithMint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"}],\"name\":\"ContractCallExecuted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationContractAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ContractCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"}],\"name\":\"Executed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousGovernance\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"GovernanceTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousGovernance\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"MintLimiterTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"newOperatorsData\",\"type\":\"bytes\"}],\"name\":\"OperatorshipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tokenAddresses\",\"type\":\"address\"}],\"name\":\"TokenDeployed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"limit\",\"type\":\"uint256\"}],\"name\":\"TokenMintLimitUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"TokenSent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"allTokensFrozen\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"authModule\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"contractAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"callContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"contractAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"callContractWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"input\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"governance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"}],\"name\":\"isCommandExecuted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"isContractCallAndMintApproved\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"}],\"name\":\"isContractCallApproved\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"mintLimiter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"sendToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"symbols\",\"type\":\"string[]\"},{\"internalType\":\"uint256[]\",\"name\":\"limits\",\"type\":\"uint256[]\"}],\"name\":\"setTokenMintLimits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"tokenAddresses\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tokenDeployer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"tokenFrozen\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"tokenMintAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"tokenMintLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"transferGovernance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"transferMintLimiter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"newImplementationCodeHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"setupParams\",\"type\":\"bytes\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"}],\"name\":\"validateContractCall\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"validateContractCallAndMint\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}},\"governance()\":{\"returns\":{\"_0\":\"address of the governance\"}},\"mintLimiter()\":{\"returns\":{\"_0\":\"address of the mint limiter\"}},\"transferGovernance(address)\":{\"params\":{\"newGovernance\":\"The new governance address\"}},\"transferMintLimiter(address)\":{\"params\":{\"newGovernance\":\"The new mint limiter address\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"},\"governance()\":{\"notice\":\"Returns the governance address.\"},\"mintLimiter()\":{\"notice\":\"Returns the mint limiter address.\"},\"transferGovernance(address)\":{\"notice\":\"Transfer the governance role to another address.\"},\"transferMintLimiter(address)\":{\"notice\":\"Transfer the mint limiter role to another address.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":\"IAxelarGateway\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol": { + "IContractIdentifier": { + "abi": [ + { + "inputs": [], + "name": "contractId", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "contractId()": "8291286c" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":\"IContractIdentifier\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol": { + "IERC20": { + "abi": [ + { + "inputs": [], + "name": "InvalidAccount", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "allowance(address,address)": "dd62ed3e", + "approve(address,uint256)": "095ea7b3", + "balanceOf(address)": "70a08231", + "totalSupply()": "18160ddd", + "transfer(address,uint256)": "a9059cbb", + "transferFrom(address,address,uint256)": "23b872dd" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 standard as defined in the EIP.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `sender` to `recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\":\"IERC20\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xb77ad755f4eade679279d5ca12b6926595e41e17387e143530f4fb57672d58d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b0d01d0810d12dba98839b084440ab9b52e04d94e9431a6ffadabb1651d0f100\",\"dweb:/ipfs/Qme9KLMtbmNvsAj2giGTzNFKAymkMJq88Ef445pLiawKWa\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol": { + "IGovernable": { + "abi": [ + { + "inputs": [], + "name": "InvalidGovernance", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidMintLimiter", + "type": "error" + }, + { + "inputs": [], + "name": "NotGovernance", + "type": "error" + }, + { + "inputs": [], + "name": "NotMintLimiter", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousGovernance", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newGovernance", + "type": "address" + } + ], + "name": "GovernanceTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousGovernance", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newGovernance", + "type": "address" + } + ], + "name": "MintLimiterTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "governance", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "mintLimiter", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newGovernance", + "type": "address" + } + ], + "name": "transferGovernance", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newGovernance", + "type": "address" + } + ], + "name": "transferMintLimiter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "governance()": "5aa6e675", + "mintLimiter()": "c82fe87a", + "transferGovernance(address)": "d38bfff4", + "transferMintLimiter(address)": "41d8f26b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidGovernance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidMintLimiter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotGovernance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotMintLimiter\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousGovernance\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"GovernanceTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousGovernance\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"MintLimiterTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"governance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"mintLimiter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"transferGovernance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"transferMintLimiter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"governance()\":{\"returns\":{\"_0\":\"address of the governance\"}},\"mintLimiter()\":{\"returns\":{\"_0\":\"address of the mint limiter\"}},\"transferGovernance(address)\":{\"params\":{\"newGovernance\":\"The new governance address\"}},\"transferMintLimiter(address)\":{\"params\":{\"newGovernance\":\"The new mint limiter address\"}}},\"title\":\"IGovernable Interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"governance()\":{\"notice\":\"Returns the governance address.\"},\"mintLimiter()\":{\"notice\":\"Returns the mint limiter address.\"},\"transferGovernance(address)\":{\"notice\":\"Transfer the governance role to another address.\"},\"transferMintLimiter(address)\":{\"notice\":\"Transfer the mint limiter role to another address.\"}},\"notice\":\"This is an interface used by the AxelarGateway contract to manage governance and mint limiter roles.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":\"IGovernable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol": { + "IImplementation": { + "abi": [ + { + "inputs": [], + "name": "NotProxy", + "type": "error" + }, + { + "inputs": [], + "name": "contractId", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "setup", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "contractId()": "8291286c", + "setup(bytes)": "9ded06df" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"NotProxy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":\"IImplementation\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol": { + "IInterchainGasEstimation": { + "abi": [ + { + "inputs": [ + { + "internalType": "enum GasEstimationType", + "name": "gasEstimationType", + "type": "uint8" + } + ], + "name": "UnsupportedEstimationType", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "chain", + "type": "string" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "gasEstimationType", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "l1FeeScalar", + "type": "uint64" + }, + { + "internalType": "uint128", + "name": "axelarBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeGasPrice", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeBlobBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "expressFee", + "type": "uint128" + } + ], + "indexed": false, + "internalType": "struct GasInfo", + "name": "info", + "type": "tuple" + } + ], + "name": "GasInfoUpdated", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "executionGasLimit", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "params", + "type": "bytes" + } + ], + "name": "estimateGasFee", + "outputs": [ + { + "internalType": "uint256", + "name": "gasEstimate", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "chain", + "type": "string" + } + ], + "name": "getGasInfo", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "gasEstimationType", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "l1FeeScalar", + "type": "uint64" + }, + { + "internalType": "uint128", + "name": "axelarBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeGasPrice", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "relativeBlobBaseFee", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "expressFee", + "type": "uint128" + } + ], + "internalType": "struct GasInfo", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "estimateGasFee(string,string,bytes,uint256,bytes)": "135eaa70", + "getGasInfo(string)": "86389f02" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"enum GasEstimationType\",\"name\":\"gasEstimationType\",\"type\":\"uint8\"}],\"name\":\"UnsupportedEstimationType\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"indexed\":false,\"internalType\":\"struct GasInfo\",\"name\":\"info\",\"type\":\"tuple\"}],\"name\":\"GasInfoUpdated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"executionGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"estimateGasFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"gasEstimate\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"}],\"name\":\"getGasInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"internalType\":\"struct GasInfo\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"GasInfoUpdated(string,(uint64,uint64,uint128,uint128,uint128,uint128))\":{\"params\":{\"chain\":\"The name of the chain\",\"info\":\"The gas info for the chain\"}}},\"kind\":\"dev\",\"methods\":{\"estimateGasFee(string,string,bytes,uint256,bytes)\":{\"params\":{\"destinationAddress\":\"Destination contract address being called\",\"destinationChain\":\"Axelar registered name of the destination chain\",\"executionGasLimit\":\"The gas limit to be used for the destination contract execution, e.g. pass in 200k if your app consumes needs upto 200k for this contract call\",\"params\":\"Additional parameters for the gas estimation\"},\"returns\":{\"gasEstimate\":\"The cross-chain gas estimate, in terms of source chain's native gas token that should be forwarded to the gas service.\"}},\"getGasInfo(string)\":{\"params\":{\"chain\":\"The name of the chain\"},\"returns\":{\"_0\":\"gasInfo The gas info for the chain\"}}},\"title\":\"IInterchainGasEstimation Interface\",\"version\":1},\"userdoc\":{\"events\":{\"GasInfoUpdated(string,(uint64,uint64,uint128,uint128,uint128,uint128))\":{\"notice\":\"Event emitted when the gas price for a specific chain is updated.\"}},\"kind\":\"user\",\"methods\":{\"estimateGasFee(string,string,bytes,uint256,bytes)\":{\"notice\":\"Estimates the gas fee for a cross-chain contract call.\"},\"getGasInfo(string)\":{\"notice\":\"Returns the gas price for a specific chain.\"}},\"notice\":\"This is an interface for the InterchainGasEstimation contract which allows for estimating gas fees for cross-chain communication on the Axelar network.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":\"IInterchainGasEstimation\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol": { + "IOwnable": { + "abi": [ + { + "inputs": [], + "name": "InvalidOwner", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidOwnerAddress", + "type": "error" + }, + { + "inputs": [], + "name": "NotOwner", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferStarted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingOwner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "proposeOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "acceptOwnership()": "79ba5097", + "owner()": "8da5cb5b", + "pendingOwner()": "e30c3978", + "proposeOwnership(address)": "710bf322", + "transferOwnership(address)": "f2fde38b" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwnerAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotOwner\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"proposeOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"acceptOwnership()\":{\"details\":\"Can only be called by the pending owner\"},\"owner()\":{\"returns\":{\"_0\":\"address The address of the current owner\"}},\"pendingOwner()\":{\"returns\":{\"_0\":\"address The address of the pending owner\"}},\"proposeOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}},\"transferOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}}},\"title\":\"IOwnable Interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"acceptOwnership()\":{\"notice\":\"Transfers ownership to the pending owner.\"},\"owner()\":{\"notice\":\"Returns the current owner of the contract.\"},\"pendingOwner()\":{\"notice\":\"Returns the address of the pending owner of the contract.\"},\"proposeOwnership(address)\":{\"notice\":\"Proposes to transfer the contract's ownership to a new address. The new owner needs to accept the ownership explicitly.\"},\"transferOwnership(address)\":{\"notice\":\"Transfers ownership of the contract to a new address\"}},\"notice\":\"IOwnable is an interface that abstracts the implementation of a contract with ownership control features. It's commonly used in upgradable contracts and includes the functionality to get current owner, transfer ownership, and propose and accept ownership.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":\"IOwnable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol": { + "IUpgradable": { + "abi": [ + { + "inputs": [], + "name": "InvalidCodeHash", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidImplementation", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidOwner", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidOwnerAddress", + "type": "error" + }, + { + "inputs": [], + "name": "NotOwner", + "type": "error" + }, + { + "inputs": [], + "name": "NotProxy", + "type": "error" + }, + { + "inputs": [], + "name": "SetupFailed", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferStarted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "contractId", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "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": "pendingOwner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "proposeOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "setup", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "newImplementationCodeHash", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "params", + "type": "bytes" + } + ], + "name": "upgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "acceptOwnership()": "79ba5097", + "contractId()": "8291286c", + "implementation()": "5c60da1b", + "owner()": "8da5cb5b", + "pendingOwner()": "e30c3978", + "proposeOwnership(address)": "710bf322", + "setup(bytes)": "9ded06df", + "transferOwnership(address)": "f2fde38b", + "upgrade(address,bytes32,bytes)": "a3499c73" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidCodeHash\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidImplementation\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwnerAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotProxy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SetupFailed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"implementation\",\"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\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"proposeOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"newImplementationCodeHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"acceptOwnership()\":{\"details\":\"Can only be called by the pending owner\"},\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}},\"owner()\":{\"returns\":{\"_0\":\"address The address of the current owner\"}},\"pendingOwner()\":{\"returns\":{\"_0\":\"address The address of the pending owner\"}},\"proposeOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}},\"transferOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"acceptOwnership()\":{\"notice\":\"Transfers ownership to the pending owner.\"},\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"},\"owner()\":{\"notice\":\"Returns the current owner of the contract.\"},\"pendingOwner()\":{\"notice\":\"Returns the address of the pending owner of the contract.\"},\"proposeOwnership(address)\":{\"notice\":\"Proposes to transfer the contract's ownership to a new address. The new owner needs to accept the ownership explicitly.\"},\"transferOwnership(address)\":{\"notice\":\"Transfers ownership of the contract to a new address\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":\"IUpgradable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]}},\"version\":1}" + } + }, + "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol": { + "AddressToString": { + "abi": [], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220344d5d7d03867545e41e5e9b1425a90733df980809859cce545408175a7714ea64736f6c63430008140033", + "opcodes": "PUSH1 0x56 PUSH1 0x37 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x2A JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 CALLVALUE 0x4D 0x5D PUSH30 0x3867545E41E5E9B1425A90733DF980809859CCE545408175A7714EA6473 PUSH16 0x6C634300081400330000000000000000 ", + "sourceMap": "961:587:11:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;961:587:11;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220344d5d7d03867545e41e5e9b1425a90733df980809859cce545408175a7714ea64736f6c63430008140033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 CALLVALUE 0x4D 0x5D PUSH30 0x3867545E41E5E9B1425A90733DF980809859CCE545408175A7714EA6473 PUSH16 0x6C634300081400330000000000000000 ", + "sourceMap": "961:587:11:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":\"AddressToString\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]}},\"version\":1}" + }, + "StringToAddress": { + "abi": [ + { + "inputs": [], + "name": "InvalidAddressString", + "type": "error" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212207a8b11ff93dc89f960738154eb30d9ae302ae63fa91a1b9fe38bbcfd8407a8ee64736f6c63430008140033", + "opcodes": "PUSH1 0x56 PUSH1 0x37 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x2A JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH27 0x8B11FF93DC89F960738154EB30D9AE302AE63FA91A1B9FE38BBCFD DUP5 SMOD 0xA8 0xEE PUSH5 0x736F6C6343 STOP ADDMOD EQ STOP CALLER ", + "sourceMap": "58:901:11:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:901:11;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212207a8b11ff93dc89f960738154eb30d9ae302ae63fa91a1b9fe38bbcfd8407a8ee64736f6c63430008140033", + "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH27 0x8B11FF93DC89F960738154EB30D9AE302AE63FA91A1B9FE38BBCFD DUP5 SMOD 0xA8 0xEE PUSH5 0x736F6C6343 STOP ADDMOD EQ STOP CALLER ", + "sourceMap": "58:901:11:-:0;;;;;;;;" + }, + "methodIdentifiers": {} + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidAddressString\",\"type\":\"error\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":\"StringToAddress\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]}},\"version\":1}" + } + }, + "src/__tests__/contracts/AgoricProxy.sol": { + "AgoricProxy": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "gateway_", + "type": "address" + }, + { + "internalType": "address", + "name": "gasReceiver_", + "type": "address" + }, + { + "internalType": "string", + "name": "chainName_", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "InvalidAddress", + "type": "error" + }, + { + "inputs": [], + "name": "NotApprovedByGateway", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "payload", + "type": "bytes" + } + ], + "name": "CrossChainCallSent", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "Received", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "wallet", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "owner", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourceAddress", + "type": "string" + } + ], + "name": "SmartWalletCreated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "chainName", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "owner", + "type": "string" + } + ], + "name": "createSmartWallet", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "tokenSymbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "executeWithToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "gasService", + "outputs": [ + { + "internalType": "contract IAxelarGasService", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "gateway", + "outputs": [ + { + "internalType": "contract IAxelarGateway", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_1811": { + "entryPoint": null, + "id": 1811, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_32": { + "entryPoint": null, + "id": 32, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_address_fromMemory": { + "entryPoint": 160, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory": { + "entryPoint": 211, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "array_dataslot_string_storage": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_string_storage": { + "entryPoint": 521, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 604, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 461, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x41": { + "entryPoint": 189, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:4131:16", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:16", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "74:117:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "84:22:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "99:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "93:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "93:13:16" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "84:5:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "169:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "178:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "181:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "171:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "171:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "171:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "128:5:16" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "139:5:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "154:3:16", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "159:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "150:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "150:11:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "163:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "146:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "146:19:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "135:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "135:31:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "125:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "125:42:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "118:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "118:50:16" + }, + "nodeType": "YulIf", + "src": "115:70:16" + } + ] + }, + "name": "abi_decode_address_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "53:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "64:5:16", + "type": "" + } + ], + "src": "14:177:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "228:95:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "245:1:16", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "252:3:16", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "257:10:16", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "248:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "248:20:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "238:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "238:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "238:31:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "285:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "288:4:16", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "278:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "278:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "278:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "309:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "312:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "302:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "302:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "302:15:16" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "196:127:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "453:1087:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "499:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "508:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "511:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "501:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "501:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "501:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "474:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "483:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "470:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "470:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "495:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "466:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "466:32:16" + }, + "nodeType": "YulIf", + "src": "463:52:16" + }, + { + "nodeType": "YulAssignment", + "src": "524:50:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "564:9:16" + } + ], + "functionName": { + "name": "abi_decode_address_fromMemory", + "nodeType": "YulIdentifier", + "src": "534:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "534:40:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "524:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "583:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "593:2:16", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "587:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "604:59:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "648:9:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "659:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "644:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "644:18:16" + } + ], + "functionName": { + "name": "abi_decode_address_fromMemory", + "nodeType": "YulIdentifier", + "src": "614:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "614:49:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "604:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "672:39:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "696:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "707:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "692:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "692:18:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "686:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "686:25:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "676:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "720:28:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "738:2:16", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "742:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "734:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "734:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "746:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "730:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "730:18:16" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "724:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "775:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "784:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "787:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "777:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "777:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "777:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "763:6:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "771:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "760:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "760:14:16" + }, + "nodeType": "YulIf", + "src": "757:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "800:32:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "814:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "825:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "810:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "810:22:16" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "804:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "880:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "889:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "892:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "882:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "882:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "882:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "859:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "863:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "855:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "855:13:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "870:7:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "851:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "851:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "844:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "844:35:16" + }, + "nodeType": "YulIf", + "src": "841:55:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "905:19:16", + "value": { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "921:2:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "915:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "915:9:16" + }, + "variables": [ + { + "name": "_4", + "nodeType": "YulTypedName", + "src": "909:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "947:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "949:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "949:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "949:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "939:2:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "943:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "936:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "936:10:16" + }, + "nodeType": "YulIf", + "src": "933:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "978:17:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "992:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "988:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "988:7:16" + }, + "variables": [ + { + "name": "_5", + "nodeType": "YulTypedName", + "src": "982:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1004:23:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1024:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1018:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "1018:9:16" + }, + "variables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "1008:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1036:71:16", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1058:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1082:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1086:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1078:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1078:13:16" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "1093:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1074:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1074:22:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1098:2:16", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1070:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1070:31:16" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "1103:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1066:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1066:40:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1054:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1054:53:16" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "1040:10:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1166:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "1168:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "1168:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1168:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "1125:10:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1137:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1122:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1122:18:16" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "1145:10:16" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1157:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1142:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1142:22:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "1119:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1119:46:16" + }, + "nodeType": "YulIf", + "src": "1116:72:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1204:2:16", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "1208:10:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1197:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1197:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1197:22:16" + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1235:6:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1243:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1228:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1228:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1228:18:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1292:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1301:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1304:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1294:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1294:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1294:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1269:2:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1273:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1265:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1265:11:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1278:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1261:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1261:20:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1283:7:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1258:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1258:33:16" + }, + "nodeType": "YulIf", + "src": "1255:53:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1317:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1326:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "1321:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1382:83:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1411:6:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1419:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1407:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1407:14:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1423:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1403:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1403:23:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1442:2:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1446:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1438:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1438:10:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1450:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1434:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1434:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1428:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "1428:26:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1396:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1396:59:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1396:59:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1347:1:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1350:2:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1344:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1344:9:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "1354:19:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1356:15:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1365:1:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1368:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1361:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1361:10:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1356:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "1340:3:16", + "statements": [] + }, + "src": "1336:129:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1489:6:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1497:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1485:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1485:15:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1502:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1481:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1481:24:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1507:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1474:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1474:35:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1474:35:16" + }, + { + "nodeType": "YulAssignment", + "src": "1518:16:16", + "value": { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1528:6:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "1518:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "403:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "414:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "426:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "434:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "442:6:16", + "type": "" + } + ], + "src": "328:1212:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1600:325:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1610:22:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1624:1:16", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1627:4:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "1620:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1620:12:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1610:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1641:38:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1671:4:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1677:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1667:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1667:12:16" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "1645:18:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1718:31:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1720:27:16", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1734:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1742:4:16", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1730:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1730:17:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1720:6:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "1698:18:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1691:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1691:26:16" + }, + "nodeType": "YulIf", + "src": "1688:61:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1808:111:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1829:1:16", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1836:3:16", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1841:10:16", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1832:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1832:20:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1822:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1822:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1822:31:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1873:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1876:4:16", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1866:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1866:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1866:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1901:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1904:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1894:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1894:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1894:15:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "1764:18:16" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1787:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1795:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1784:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1784:14:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "1761:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1761:38:16" + }, + "nodeType": "YulIf", + "src": "1758:161:16" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "1580:4:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1589:6:16", + "type": "" + } + ], + "src": "1545:380:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1986:65:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2003:1:16", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "2006:3:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1996:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1996:14:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1996:14:16" + }, + { + "nodeType": "YulAssignment", + "src": "2019:26:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2037:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2040:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "2027:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "2027:18:16" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2019:4:16" + } + ] + } + ] + }, + "name": "array_dataslot_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "1969:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "1977:4:16", + "type": "" + } + ], + "src": "1930:121:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2137:464:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2170:425:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2184:11:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2194:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "2188:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2215:2:16" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "2219:5:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2208:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2208:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2208:17:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2238:31:16", + "value": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2260:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2264:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "2250:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "2250:19:16" + }, + "variables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "2242:4:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2282:57:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2305:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2315:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "2322:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2334:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2318:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2318:19:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2311:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2311:27:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2301:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2301:38:16" + }, + "variables": [ + { + "name": "deleteStart", + "nodeType": "YulTypedName", + "src": "2286:11:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2376:23:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2378:19:16", + "value": { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2393:4:16" + }, + "variableNames": [ + { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "2378:11:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "2358:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2370:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2355:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2355:20:16" + }, + "nodeType": "YulIf", + "src": "2352:47:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2412:41:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2426:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2436:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2443:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2448:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2439:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2439:12:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2432:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2432:20:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2422:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2422:31:16" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "2416:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2466:24:16", + "value": { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "2479:11:16" + }, + "variables": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "2470:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2564:21:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2573:5:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2580:2:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2566:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2566:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2566:17:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2514:5:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "2521:2:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2511:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2511:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "2525:26:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2527:22:16", + "value": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2540:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2547:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2536:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2536:13:16" + }, + "variableNames": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2527:5:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "2507:3:16", + "statements": [] + }, + "src": "2503:82:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2153:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2158:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2150:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2150:11:16" + }, + "nodeType": "YulIf", + "src": "2147:448:16" + } + ] + }, + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "2109:5:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "2116:3:16", + "type": "" + }, + { + "name": "startIndex", + "nodeType": "YulTypedName", + "src": "2121:10:16", + "type": "" + } + ], + "src": "2056:545:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2691:81:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2701:65:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2716:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2734:1:16", + "type": "", + "value": "3" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2737:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2730:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2730:11:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2747:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2743:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2743:6:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2726:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2726:24:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2722:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2722:29:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2712:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2712:40:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2758:1:16", + "type": "", + "value": "1" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2761:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2754:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2754:11:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "2709:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2709:57:16" + }, + "variableNames": [ + { + "name": "used", + "nodeType": "YulIdentifier", + "src": "2701:4:16" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "2668:4:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "2674:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nodeType": "YulTypedName", + "src": "2682:4:16", + "type": "" + } + ], + "src": "2606:166:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2873:1256:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2883:24:16", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2903:3:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2897:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "2897:10:16" + }, + "variables": [ + { + "name": "newLen", + "nodeType": "YulTypedName", + "src": "2887:6:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2950:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "2952:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "2952:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2952:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2922:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2938:2:16", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2942:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2934:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2934:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2946:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2930:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2930:18:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2919:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2919:30:16" + }, + "nodeType": "YulIf", + "src": "2916:56:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3025:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3063:4:16" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "3057:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3057:11:16" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "3031:25:16" + }, + "nodeType": "YulFunctionCall", + "src": "3031:38:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3071:6:16" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulIdentifier", + "src": "2981:43:16" + }, + "nodeType": "YulFunctionCall", + "src": "2981:97:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2981:97:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3087:18:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3104:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nodeType": "YulTypedName", + "src": "3091:9:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3114:23:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3133:4:16", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "srcOffset_1", + "nodeType": "YulTypedName", + "src": "3118:11:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3146:24:16", + "value": { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "3159:11:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3146:9:16" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3216:656:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3230:35:16", + "value": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3249:6:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3261:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3257:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3257:7:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3245:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3245:20:16" + }, + "variables": [ + { + "name": "loopEnd", + "nodeType": "YulTypedName", + "src": "3234:7:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3278:49:16", + "value": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3322:4:16" + } + ], + "functionName": { + "name": "array_dataslot_string_storage", + "nodeType": "YulIdentifier", + "src": "3292:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "3292:35:16" + }, + "variables": [ + { + "name": "dstPtr", + "nodeType": "YulTypedName", + "src": "3282:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3340:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3349:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "3344:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3427:172:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3452:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "3470:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3475:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3466:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3466:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3460:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3460:26:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "3445:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3445:42:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3445:42:16" + }, + { + "nodeType": "YulAssignment", + "src": "3504:24:16", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3518:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3526:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3514:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3514:14:16" + }, + "variableNames": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3504:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3545:40:16", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3562:9:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "3573:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3558:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3558:27:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3545:9:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "3374:1:16" + }, + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "3377:7:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "3371:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3371:14:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "3386:28:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3388:24:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "3397:1:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "3400:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3393:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3393:19:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "3388:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "3367:3:16", + "statements": [] + }, + "src": "3363:236:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3647:166:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3665:43:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "3692:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3697:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3688:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3688:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3682:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3682:26:16" + }, + "variables": [ + { + "name": "lastValue", + "nodeType": "YulTypedName", + "src": "3669:9:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3732:6:16" + }, + { + "arguments": [ + { + "name": "lastValue", + "nodeType": "YulIdentifier", + "src": "3744:9:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3771:1:16", + "type": "", + "value": "3" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3774:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3767:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3767:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3783:3:16", + "type": "", + "value": "248" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3763:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3763:24:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3793:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3789:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3789:6:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "3759:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3759:37:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3755:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3755:42:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3740:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3740:58:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "3725:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3725:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3725:74:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "3618:7:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3627:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "3615:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3615:19:16" + }, + "nodeType": "YulIf", + "src": "3612:201:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3833:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3847:1:16", + "type": "", + "value": "1" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3850:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3843:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3843:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3859:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3839:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3839:22:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "3826:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3826:36:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3826:36:16" + } + ] + }, + "nodeType": "YulCase", + "src": "3209:663:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3214:1:16", + "type": "", + "value": "1" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3889:234:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3903:14:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3916:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "3907:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3952:67:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3970:35:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "3989:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3994:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3985:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3985:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3979:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3979:26:16" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3970:5:16" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3933:6:16" + }, + "nodeType": "YulIf", + "src": "3930:89:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "4039:4:16" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4098:5:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "4105:6:16" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulIdentifier", + "src": "4045:52:16" + }, + "nodeType": "YulFunctionCall", + "src": "4045:67:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "4032:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4032:81:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4032:81:16" + } + ] + }, + "nodeType": "YulCase", + "src": "3881:242:16", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3189:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3197:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3186:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3186:14:16" + }, + "nodeType": "YulSwitch", + "src": "3179:944:16" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nodeType": "YulTypedName", + "src": "2858:4:16", + "type": "" + }, + { + "name": "src", + "nodeType": "YulTypedName", + "src": "2864:3:16", + "type": "" + } + ], + "src": "2777:1352:16" + } + ] + }, + "contents": "{\n { }\n function abi_decode_address_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := abi_decode_address_fromMemory(headStart)\n let _1 := 32\n value1 := abi_decode_address_fromMemory(add(headStart, _1))\n let offset := mload(add(headStart, 64))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := mload(_3)\n if gt(_4, _2) { panic_error_0x41() }\n let _5 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_4, 0x1f), _5), 63), _5))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _4)\n if gt(add(add(_3, _4), _1), dataEnd) { revert(0, 0) }\n let i := 0\n for { } lt(i, _4) { i := add(i, _1) }\n {\n mstore(add(add(memPtr, i), _1), mload(add(add(_3, i), _1)))\n }\n mstore(add(add(memPtr, _4), _1), 0)\n value2 := memPtr\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n}", + "id": 16, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "60c06040523480156200001157600080fd5b5060405162002bf938038062002bf98339810160408190526200003491620000d3565b826001600160a01b0381166200005d5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0390811660805282811660a052600080546001600160a01b03191691851691909117905560016200009682826200025c565b5050505062000328565b80516001600160a01b0381168114620000b857600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600060608486031215620000e957600080fd5b620000f484620000a0565b9250602062000105818601620000a0565b60408601519093506001600160401b03808211156200012357600080fd5b818701915087601f8301126200013857600080fd5b8151818111156200014d576200014d620000bd565b604051601f8201601f19908116603f01168101908382118183101715620001785762000178620000bd565b816040528281528a868487010111156200019157600080fd5b600093505b82841015620001b5578484018601518185018701529285019262000196565b60008684830101528096505050505050509250925092565b600181811c90821680620001e257607f821691505b6020821081036200020357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200025757600081815260208120601f850160051c81016020861015620002325750805b601f850160051c820191505b8181101562000253578281556001016200023e565b5050505b505050565b81516001600160401b03811115620002785762000278620000bd565b6200029081620002898454620001cd565b8462000209565b602080601f831160018114620002c85760008415620002af5750858301515b600019600386901b1c1916600185901b17855562000253565b600085815260208120601f198616915b82811015620002f957888601518255948401946001909101908401620002d8565b5085821015620003185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a05161288962000370600039600081816101f001528181610525015261079f01526000818160f80152818161026b0152818161042b015261085901526128896000f3fe608060405260043610620000735760003560e01c80634916065811620000495780634916065814620001925780635e8846f614620001b75780636a22d8cc14620001dc57620000b1565b8063116191b614620000e45780631a98b2e014620001445780631c93b03a146200016b57620000b1565b36620000b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587490602001620000a7565b348015620000f157600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156200015157600080fd5b50620001696200016336600462000971565b62000212565b005b3480156200017857600080fd5b50620001836200033c565b6040516200013b919062000aca565b3480156200019f57600080fd5b5062000169620001b136600462000ae6565b620003d2565b348015620001c457600080fd5b506200011a620001d636600462000bc3565b62000503565b348015620001e957600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b600085856040516200022692919062000c9c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed990620002b2908e908e908e908e908e9089908d908d908d9060040162000cf5565b6020604051808303816000875af1158015620002d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f8919062000d5a565b6200032f576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600180546200034b9062000d7e565b80601f0160208091040260200160405190810160405280929190818152602001828054620003799062000d7e565b8015620003ca5780601f106200039e57610100808354040283529160200191620003ca565b820191906000526020600020905b815481529060010190602001808311620003ac57829003601f168201915b505050505081565b60008282604051620003e692919062000c9c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906200046c908b908b908b908b908b90899060040162000dd3565b6020604051808303816000875af11580156200048c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004b2919062000d5a565b620004e9576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620004f987878787878762000590565b5050505050505050565b60008054604051829173ffffffffffffffffffffffffffffffffffffffff16907f0000000000000000000000000000000000000000000000000000000000000000908590620005529062000917565b620005609392919062000e18565b604051809103906000f0801580156200057d573d6000803e3d6000fd5b509392505050565b505050505050505050565b6000620005d385858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506200050392505050565b90508073ffffffffffffffffffffffffffffffffffffffff167f9281645ccd9d592d9f6456fd9b95f6d2e0d36ebcc2f387399d5ac2b7c7ad7e6e86868a8a8a8a604051620006279695949392919062000e5c565b60405180910390a2604080516001808252818301909252600091816020015b604080518082019091526000815260606020820152815260200190600190039081620006465790505060408051808201825260018152815173ffffffffffffffffffffffffffffffffffffffff861660208281019190915293945090928301910160405160208183030381529060405281525081600081518110620006cf57620006cf62000eab565b602002602001018190525060008060e01b6040518060400160405280600015158152602001848152506040516020016200070a919062000eda565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905262000748929160200162000f88565b60405160208183030381529060405290506200058589898989856040517f0c93e3bb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690630c93e3bb9066038d7ea4c6800090620007eb9030908a908a908a908a908a90869060040162000fd2565b6000604051808303818588803b1580156200080557600080fd5b505af11580156200081a573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506200089b91508890889088908890889060040162001048565b600060405180830381600087803b158015620008b657600080fd5b505af1158015620008cb573d6000803e3d6000fd5b505050507fea1a07f81079879fea1a2eabafefd6f25bc76921237faf7fce963aeaa53c7ea185858585856040516200090895949392919062001048565b60405180910390a15050505050565b6117be806200109683390190565b60008083601f8401126200093857600080fd5b50813567ffffffffffffffff8111156200095157600080fd5b6020830191508360208285010111156200096a57600080fd5b9250929050565b60008060008060008060008060008060c08b8d0312156200099157600080fd5b8a35995060208b013567ffffffffffffffff80821115620009b157600080fd5b620009bf8e838f0162000925565b909b50995060408d0135915080821115620009d957600080fd5b620009e78e838f0162000925565b909950975060608d013591508082111562000a0157600080fd5b62000a0f8e838f0162000925565b909750955060808d013591508082111562000a2957600080fd5b5062000a388d828e0162000925565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b8381101562000a7557818101518382015260200162000a5b565b50506000910152565b6000815180845262000a9881602086016020860162000a58565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600062000adf602083018462000a7e565b9392505050565b60008060008060008060006080888a03121562000b0257600080fd5b87359650602088013567ffffffffffffffff8082111562000b2257600080fd5b62000b308b838c0162000925565b909850965060408a013591508082111562000b4a57600080fd5b62000b588b838c0162000925565b909650945060608a013591508082111562000b7257600080fd5b5062000b818a828b0162000925565b989b979a50959850939692959293505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121562000bd657600080fd5b813567ffffffffffffffff8082111562000bef57600080fd5b818401915084601f83011262000c0457600080fd5b81358181111562000c195762000c1962000b94565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171562000c625762000c6262000b94565b8160405282815287602084870101111562000c7c57600080fd5b826020860160208301376000928101602001929092525095945050505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600062000d1160c083018a8c62000cac565b828103604084015262000d2681898b62000cac565b9050866060840152828103608084015262000d4381868862000cac565b9150508260a08301529a9950505050505050505050565b60006020828403121562000d6d57600080fd5b8151801515811462000adf57600080fd5b600181811c9082168062000d9357607f821691505b60208210810362000dcd577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600062000def60808301878962000cac565b828103604084015262000e0481868862000cac565b915050826060830152979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff80861683528085166020840152506060604083015262000e53606083018462000a7e565b95945050505050565b60608152600062000e7260608301888a62000cac565b828103602084015262000e8781878962000cac565b9050828103604084015262000e9e81858762000cac565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006020808352606083018451151582850152818501516040808187015282825180855260808801915060808160051b8901019450858401935060005b8181101562000f7a578886037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80018352845180511515875287015187870185905262000f668588018262000a7e565b965050938601939186019160010162000f17565b509398975050505050505050565b7fffffffff00000000000000000000000000000000000000000000000000000000831681526000825162000fc481600485016020870162000a58565b919091016004019392505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a060208401526200100560a08401898b62000cac565b83810360408501526200101a81888a62000cac565b9050838103606085015262001030818762000a7e565b92505080841660808401525098975050505050505050565b6060815260006200105e60608301878962000cac565b82810360208401526200107381868862000cac565b9050828103604084015262001089818562000a7e565b9897505050505050505056fe60a06040523480156200001157600080fd5b50604051620017be380380620017be8339810160408190526200003491620001fb565b80836001600160a01b0381166200005e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b031660805262000075816200009e565b5050600180546001600160a01b0319166001600160a01b03929092169190911790555062000454565b6000808054620000ae90620002db565b80601f0160208091040260200160405190810160405280929190818152602001828054620000dc90620002db565b80156200012d5780601f1062000101576101008083540402835291602001916200012d565b820191906000526020600020905b8154815290600101906020018083116200010f57829003601f168201915b5050505050905081600090816200014591906200036a565b508160405162000156919062000436565b6040518091039020816040516200016e919062000436565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b80516001600160a01b0381168114620001ba57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620001f2578181015183820152602001620001d8565b50506000910152565b6000806000606084860312156200021157600080fd5b6200021c84620001a2565b92506200022c60208501620001a2565b60408501519092506001600160401b03808211156200024a57600080fd5b818601915086601f8301126200025f57600080fd5b815181811115620002745762000274620001bf565b604051601f8201601f19908116603f011681019083821181831017156200029f576200029f620001bf565b81604052828152896020848701011115620002b957600080fd5b620002cc836020830160208801620001d5565b80955050505050509250925092565b600181811c90821680620002f057607f821691505b6020821081036200031157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200036557600081815260208120601f850160051c81016020861015620003405750805b601f850160051c820191505b8181101562000361578281556001016200034c565b5050505b505050565b81516001600160401b03811115620003865762000386620001bf565b6200039e81620003978454620002db565b8462000317565b602080601f831160018114620003d65760008415620003bd5750858301515b600019600386901b1c1916600185901b17855562000361565b600085815260208120601f198616915b828110156200040757888601518255948401946001909101908401620003e6565b5085821015620004265787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082516200044a818460208701620001d5565b9190910192915050565b6080516113416200047d6000396000818160f50152818161026901526103ef01526113416000f3fe6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033a2646970667358221220d76f009a2c0afdd386344cb8d04f1e72dbd4b3faf6896e63f6f1e3d3eb0c805964736f6c63430008140033", + "opcodes": "PUSH1 0xC0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x2BF9 CODESIZE SUB DUP1 PUSH3 0x2BF9 DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0xD3 JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5D JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 DUP2 AND PUSH1 0x80 MSTORE DUP3 DUP2 AND PUSH1 0xA0 MSTORE PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP2 DUP6 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE PUSH1 0x1 PUSH3 0x96 DUP3 DUP3 PUSH3 0x25C JUMP JUMPDEST POP POP POP POP PUSH3 0x328 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0xB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0xE9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xF4 DUP5 PUSH3 0xA0 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 PUSH3 0x105 DUP2 DUP7 ADD PUSH3 0xA0 JUMP JUMPDEST PUSH1 0x40 DUP7 ADD MLOAD SWAP1 SWAP4 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x123 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP8 ADD SWAP2 POP DUP8 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x138 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x14D JUMPI PUSH3 0x14D PUSH3 0xBD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x178 JUMPI PUSH3 0x178 PUSH3 0xBD JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP11 DUP7 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x191 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP4 POP JUMPDEST DUP3 DUP5 LT ISZERO PUSH3 0x1B5 JUMPI DUP5 DUP5 ADD DUP7 ADD MLOAD DUP2 DUP6 ADD DUP8 ADD MSTORE SWAP3 DUP6 ADD SWAP3 PUSH3 0x196 JUMP JUMPDEST PUSH1 0x0 DUP7 DUP5 DUP4 ADD ADD MSTORE DUP1 SWAP7 POP POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x1E2 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x203 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x257 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x232 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x253 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x23E JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x278 JUMPI PUSH3 0x278 PUSH3 0xBD JUMP JUMPDEST PUSH3 0x290 DUP2 PUSH3 0x289 DUP5 SLOAD PUSH3 0x1CD JUMP JUMPDEST DUP5 PUSH3 0x209 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x2C8 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x2AF JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x253 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x2F9 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x2D8 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x318 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH2 0x2889 PUSH3 0x370 PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x1F0 ADD MSTORE DUP2 DUP2 PUSH2 0x525 ADD MSTORE PUSH2 0x79F ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH1 0xF8 ADD MSTORE DUP2 DUP2 PUSH2 0x26B ADD MSTORE DUP2 DUP2 PUSH2 0x42B ADD MSTORE PUSH2 0x859 ADD MSTORE PUSH2 0x2889 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH3 0x73 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH3 0x49 JUMPI DUP1 PUSH4 0x49160658 EQ PUSH3 0x192 JUMPI DUP1 PUSH4 0x5E8846F6 EQ PUSH3 0x1B7 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH3 0x1DC JUMPI PUSH3 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH3 0xE4 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH3 0x144 JUMPI DUP1 PUSH4 0x1C93B03A EQ PUSH3 0x16B JUMPI PUSH3 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH3 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH3 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0xF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x151 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x169 PUSH3 0x163 CALLDATASIZE PUSH1 0x4 PUSH3 0x971 JUMP JUMPDEST PUSH3 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x178 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x183 PUSH3 0x33C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x13B SWAP2 SWAP1 PUSH3 0xACA JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x19F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x169 PUSH3 0x1B1 CALLDATASIZE PUSH1 0x4 PUSH3 0xAE6 JUMP JUMPDEST PUSH3 0x3D2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x1C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH3 0x1D6 CALLDATASIZE PUSH1 0x4 PUSH3 0xBC3 JUMP JUMPDEST PUSH3 0x503 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x1E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH3 0x226 SWAP3 SWAP2 SWAP1 PUSH3 0xC9C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH3 0x2B2 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH3 0xCF5 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH3 0x2D2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x2F8 SWAP2 SWAP1 PUSH3 0xD5A JUMP JUMPDEST PUSH3 0x32F JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP1 SLOAD PUSH3 0x34B SWAP1 PUSH3 0xD7E JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0x379 SWAP1 PUSH3 0xD7E JUMP JUMPDEST DUP1 ISZERO PUSH3 0x3CA JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x39E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x3CA JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x3AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH3 0x3E6 SWAP3 SWAP2 SWAP1 PUSH3 0xC9C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH3 0x46C SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH3 0xDD3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH3 0x48C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x4B2 SWAP2 SWAP1 PUSH3 0xD5A JUMP JUMPDEST PUSH3 0x4E9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x4F9 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH3 0x590 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH1 0x40 MLOAD DUP3 SWAP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 PUSH32 0x0 SWAP1 DUP6 SWAP1 PUSH3 0x552 SWAP1 PUSH3 0x917 JUMP JUMPDEST PUSH3 0x560 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xE18 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 PUSH1 0x0 CREATE DUP1 ISZERO DUP1 ISZERO PUSH3 0x57D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x5D3 DUP6 DUP6 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH3 0x503 SWAP3 POP POP POP JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x9281645CCD9D592D9F6456FD9B95F6D2E0D36EBCC2F387399D5AC2B7C7AD7E6E DUP7 DUP7 DUP11 DUP11 DUP11 DUP11 PUSH1 0x40 MLOAD PUSH3 0x627 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xE5C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 DUP1 DUP3 MSTORE DUP2 DUP4 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH3 0x646 JUMPI SWAP1 POP POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE PUSH1 0x1 DUP2 MSTORE DUP2 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP7 AND PUSH1 0x20 DUP3 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP4 SWAP5 POP SWAP1 SWAP3 DUP4 ADD SWAP2 ADD PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH3 0x6CF JUMPI PUSH3 0x6CF PUSH3 0xEAB JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x0 DUP1 PUSH1 0xE0 SHL PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP5 DUP2 MSTORE POP PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0x70A SWAP2 SWAP1 PUSH3 0xEDA JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH3 0x748 SWAP3 SWAP2 PUSH1 0x20 ADD PUSH3 0xF88 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH3 0x585 DUP10 DUP10 DUP10 DUP10 DUP6 PUSH1 0x40 MLOAD PUSH32 0xC93E3BB00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0xC93E3BB SWAP1 PUSH7 0x38D7EA4C68000 SWAP1 PUSH3 0x7EB SWAP1 ADDRESS SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH3 0xFD2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x805 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x81A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH32 0x1C92115F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP4 POP PUSH4 0x1C92115F SWAP3 POP PUSH3 0x89B SWAP2 POP DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH3 0x1048 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x8B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x8CB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0xEA1A07F81079879FEA1A2EABAFEFD6F25BC76921237FAF7FCE963AEAA53C7EA1 DUP6 DUP6 DUP6 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH3 0x908 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0x1048 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP JUMP JUMPDEST PUSH2 0x17BE DUP1 PUSH3 0x1096 DUP4 CODECOPY ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH3 0x938 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH3 0x951 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH3 0x96A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH3 0x991 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0x9B1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x9BF DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0x9D9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x9E7 DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xA01 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xA0F DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0xA38 DUP14 DUP3 DUP15 ADD PUSH3 0x925 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xA75 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0xA5B JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH3 0xA98 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH3 0xA58 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH3 0xADF PUSH1 0x20 DUP4 ADD DUP5 PUSH3 0xA7E JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH3 0xB02 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0xB22 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xB30 DUP12 DUP4 DUP13 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xB4A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xB58 DUP12 DUP4 DUP13 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xB72 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0xB81 DUP11 DUP3 DUP12 ADD PUSH3 0x925 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xBD6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0xBEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP5 ADD SWAP2 POP DUP5 PUSH1 0x1F DUP4 ADD SLT PUSH3 0xC04 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH3 0xC19 JUMPI PUSH3 0xC19 PUSH3 0xB94 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0xC62 JUMPI PUSH3 0xC62 PUSH3 0xB94 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP8 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0xC7C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 SWAP3 DUP2 ADD PUSH1 0x20 ADD SWAP3 SWAP1 SWAP3 MSTORE POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH3 0xD11 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xD26 DUP2 DUP10 DUP12 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH3 0xD43 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xD6D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH3 0xADF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0xD93 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0xDCD JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH3 0xDEF PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xE04 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP7 AND DUP4 MSTORE DUP1 DUP6 AND PUSH1 0x20 DUP5 ADD MSTORE POP PUSH1 0x60 PUSH1 0x40 DUP4 ADD MSTORE PUSH3 0xE53 PUSH1 0x60 DUP4 ADD DUP5 PUSH3 0xA7E JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH3 0xE72 PUSH1 0x60 DUP4 ADD DUP9 DUP11 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0xE87 DUP2 DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xE9E DUP2 DUP6 DUP8 PUSH3 0xCAC JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 MSTORE PUSH1 0x60 DUP4 ADD DUP5 MLOAD ISZERO ISZERO DUP3 DUP6 ADD MSTORE DUP2 DUP6 ADD MLOAD PUSH1 0x40 DUP1 DUP2 DUP8 ADD MSTORE DUP3 DUP3 MLOAD DUP1 DUP6 MSTORE PUSH1 0x80 DUP9 ADD SWAP2 POP PUSH1 0x80 DUP2 PUSH1 0x5 SHL DUP10 ADD ADD SWAP5 POP DUP6 DUP5 ADD SWAP4 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0xF7A JUMPI DUP9 DUP7 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 ADD DUP4 MSTORE DUP5 MLOAD DUP1 MLOAD ISZERO ISZERO DUP8 MSTORE DUP8 ADD MLOAD DUP8 DUP8 ADD DUP6 SWAP1 MSTORE PUSH3 0xF66 DUP6 DUP9 ADD DUP3 PUSH3 0xA7E JUMP JUMPDEST SWAP7 POP POP SWAP4 DUP7 ADD SWAP4 SWAP2 DUP7 ADD SWAP2 PUSH1 0x1 ADD PUSH3 0xF17 JUMP JUMPDEST POP SWAP4 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 AND DUP2 MSTORE PUSH1 0x0 DUP3 MLOAD PUSH3 0xFC4 DUP2 PUSH1 0x4 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH3 0xA58 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD PUSH1 0x4 ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP11 AND DUP4 MSTORE PUSH1 0xA0 PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0x1005 PUSH1 0xA0 DUP5 ADD DUP10 DUP12 PUSH3 0xCAC JUMP JUMPDEST DUP4 DUP2 SUB PUSH1 0x40 DUP6 ADD MSTORE PUSH3 0x101A DUP2 DUP9 DUP11 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP4 DUP2 SUB PUSH1 0x60 DUP6 ADD MSTORE PUSH3 0x1030 DUP2 DUP8 PUSH3 0xA7E JUMP JUMPDEST SWAP3 POP POP DUP1 DUP5 AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH3 0x105E PUSH1 0x60 DUP4 ADD DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0x1073 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0x1089 DUP2 DUP6 PUSH3 0xA7E JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x17BE CODESIZE SUB DUP1 PUSH3 0x17BE DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0x1FB JUMP JUMPDEST DUP1 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5E JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x80 MSTORE PUSH3 0x75 DUP2 PUSH3 0x9E JUMP JUMPDEST POP POP PUSH1 0x1 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE POP PUSH3 0x454 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH3 0xAE SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0xDC SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 ISZERO PUSH3 0x12D JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x101 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x12D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x10F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH3 0x145 SWAP2 SWAP1 PUSH3 0x36A JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH3 0x156 SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH3 0x16E SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0x1BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0x1F2 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0x1D8 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0x211 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x21C DUP5 PUSH3 0x1A2 JUMP JUMPDEST SWAP3 POP PUSH3 0x22C PUSH1 0x20 DUP6 ADD PUSH3 0x1A2 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x24A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP7 ADD SWAP2 POP DUP7 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x25F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x274 JUMPI PUSH3 0x274 PUSH3 0x1BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x29F JUMPI PUSH3 0x29F PUSH3 0x1BF JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP10 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x2B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x2CC DUP4 PUSH1 0x20 DUP4 ADD PUSH1 0x20 DUP9 ADD PUSH3 0x1D5 JUMP JUMPDEST DUP1 SWAP6 POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x2F0 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x311 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x365 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x340 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x361 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x34C JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x386 JUMPI PUSH3 0x386 PUSH3 0x1BF JUMP JUMPDEST PUSH3 0x39E DUP2 PUSH3 0x397 DUP5 SLOAD PUSH3 0x2DB JUMP JUMPDEST DUP5 PUSH3 0x317 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x3D6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x3BD JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x361 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x407 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x3E6 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x426 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH3 0x44A DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH3 0x1D5 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH2 0x1341 PUSH3 0x47D PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0xF5 ADD MSTORE DUP2 DUP2 PUSH2 0x269 ADD MSTORE PUSH2 0x3EF ADD MSTORE PUSH2 0x1341 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x74 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x183 JUMPI DUP1 PUSH4 0x4FDB7F44 EQ PUSH2 0x1A3 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x1C3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F0 JUMPI PUSH2 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0xE3 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x141 JUMPI DUP1 PUSH4 0x268CA07E EQ PUSH2 0x163 JUMPI PUSH2 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH2 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH2 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x117 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x14D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x15C CALLDATASIZE PUSH1 0x4 PUSH2 0x9EB JUMP JUMPDEST PUSH2 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x16F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x17E CALLDATASIZE PUSH1 0x4 PUSH2 0xAC5 JUMP JUMPDEST PUSH2 0x345 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x19E CALLDATASIZE PUSH1 0x4 PUSH2 0xB31 JUMP JUMPDEST PUSH2 0x398 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x1BE CALLDATASIZE PUSH1 0x4 PUSH2 0xBD5 JUMP JUMPDEST PUSH2 0x4BF JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1CF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 SLOAD PUSH2 0x117 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH2 0x541 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x138 SWAP2 SWAP1 PUSH2 0xC85 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x224 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x2AE SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xCF8 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F1 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x338 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 PUSH2 0x5D3 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x351 DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x390 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH2 0x658 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AA SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x42E SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0xD79 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x44D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x4A7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4B5 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x74E JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH2 0x4CB DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x53B PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x527 SWAP1 PUSH32 0x3078303030303030303030303030303030303030303030303030303030303030 DUP2 MSTORE PUSH32 0x3030303030303030303000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x2A ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x658 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x550 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x57C SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5C9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x59E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5C9 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x5DD DUP6 DUP6 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH2 0x609 PUSH2 0x541 JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x654 JUMPI DUP2 DUP2 PUSH1 0x40 MLOAD PUSH32 0xDE6A3CBF00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64B SWAP3 SWAP2 SWAP1 PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0x666 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x692 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6DF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x6F5 SWAP2 SWAP1 PUSH2 0xEA3 JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH2 0x704 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH2 0x71A SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x75A DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x764 DUP5 DUP5 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x77F DUP4 DUP6 ADD DUP6 PUSH2 0x1051 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79D JUMPI PUSH2 0x79D PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x7E3 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x7BB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0x0 DUP1 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x807 JUMPI PUSH2 0x807 PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x83B JUMPI PUSH2 0x83B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x854 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP7 GAS CALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x891 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x896 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x14 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x436F6E74726163742063616C6C206661696C6564000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x64B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP4 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x92B JUMPI PUSH2 0x92B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x943 SWAP1 PUSH2 0x1218 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x7E9 JUMP JUMPDEST POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FC27C8074EE9BA6D8A94064CDEE28DDCBC36E7B0A4C730262CB845CA06332B2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x992 SWAP2 SWAP1 PUSH2 0x1277 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x9B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x9E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA35 DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA4E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA5A DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA7F DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA5 DUP14 DUP3 DUP15 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xAF3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xAFF DUP9 DUP4 DUP10 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB25 DUP8 DUP3 DUP9 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xB4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xB6B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB77 DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB9C DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xBB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBC2 DUP11 DUP3 DUP12 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xBE8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xBFF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC0B DUP6 DUP3 DUP7 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xC32 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xC1A JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xC53 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xC17 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xC98 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC3B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD12 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xD25 DUP2 DUP10 DUP12 PUSH2 0xCAF JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0xD40 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xC98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD93 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xDA6 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xDCE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0xE07 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xE21 PUSH1 0x20 DUP4 ADD DUP5 DUP7 PUSH2 0xCAF JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0xE9E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0xE7F JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x390 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xE8B JUMP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xEBD JUMPI PUSH2 0xEBD PUSH2 0xE29 JUMP JUMPDEST PUSH2 0xED1 DUP2 PUSH2 0xECB DUP5 SLOAD PUSH2 0xDBA JUMP JUMPDEST DUP5 PUSH2 0xE58 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0xF24 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0xEEE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x390 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0xF71 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0xF52 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0xFAD JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0xFCF DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0xC17 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP1 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0xFFC JUMPI PUSH2 0xFFC PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1049 JUMPI PUSH2 0x1049 PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1064 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x107C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1090 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x10A2 JUMPI PUSH2 0x10A2 PUSH2 0xE29 JUMP JUMPDEST DUP1 PUSH1 0x5 SHL PUSH2 0x10B1 DUP6 DUP3 ADD PUSH2 0x1002 JUMP JUMPDEST SWAP2 DUP3 MSTORE DUP4 DUP2 ADD DUP6 ADD SWAP2 DUP6 DUP2 ADD SWAP1 DUP10 DUP5 GT ISZERO PUSH2 0x10CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP7 ADD SWAP3 POP JUMPDEST DUP4 DUP4 LT ISZERO PUSH2 0x11DC JUMPI DUP3 CALLDATALOAD DUP6 DUP2 GT ISZERO PUSH2 0x10E9 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP7 ADD PUSH1 0x40 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP3 DUP14 SUB DUP2 ADD DUP3 SGT ISZERO PUSH2 0x1120 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST PUSH2 0x1128 PUSH2 0xFD9 JUMP JUMPDEST DUP11 DUP5 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x114F JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP2 MSTORE DUP4 DUP4 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x1163 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP6 ADD SWAP5 POP POP DUP14 PUSH1 0x3F DUP6 ADD SLT PUSH2 0x1179 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP11 DUP5 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x118D JUMPI PUSH2 0x118D PUSH2 0xE29 JUMP JUMPDEST PUSH2 0x119D DUP13 DUP5 PUSH1 0x1F DUP5 ADD AND ADD PUSH2 0x1002 JUMP JUMPDEST SWAP3 POP DUP1 DUP4 MSTORE DUP15 DUP5 DUP3 DUP8 ADD ADD GT ISZERO PUSH2 0x11B4 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP5 DUP7 ADD DUP14 DUP6 ADD CALLDATACOPY PUSH1 0x0 SWAP1 DUP4 ADD DUP13 ADD MSTORE DUP1 DUP12 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MSTORE POP POP SWAP2 DUP7 ADD SWAP2 SWAP1 DUP7 ADD SWAP1 PUSH2 0x10D1 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1270 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12FD JUMPI DUP9 DUP4 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD ISZERO ISZERO DUP5 MSTORE DUP8 ADD MLOAD DUP8 DUP5 ADD DUP8 SWAP1 MSTORE PUSH2 0x12EA DUP8 DUP6 ADD DUP3 PUSH2 0xC3B JUMP JUMPDEST SWAP6 DUP9 ADD SWAP6 SWAP4 POP POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x129E JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB0 DUP16 NOT 0xB2 PUSH29 0x5B96E2196BCC61C4069DC8FAC27E30816AC61FF2278165FDDA761B6473 PUSH16 0x6C63430008140033A264697066735822 SLT KECCAK256 0xD7 PUSH16 0x9A2C0AFDD386344CB8D04F1E72DBD4 0xB3 STATICCALL 0xF6 DUP10 PUSH15 0x63F6F1E3D3EB0C805964736F6C6343 STOP ADDMOD EQ STOP CALLER ", + "sourceMap": "2571:2483:13:-:0;;;3135:257;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3260:8;-1:-1:-1;;;;;342:22:0;;338:51;;373:16;;-1:-1:-1;;;373:16:0;;;;;;;;;;;338:51;-1:-1:-1;;;;;400:34:0;;;;;3280:44:13;;::::1;;::::0;3334:8:::1;:19:::0;;-1:-1:-1;;;;;;3334:19:13::1;::::0;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;3363:22:13::1;3375:10:::0;-1:-1:-1;3363:22:13::1;:::i;:::-;;3135:257:::0;;;2571:2483;;14:177:16;93:13;;-1:-1:-1;;;;;135:31:16;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:127::-;257:10;252:3;248:20;245:1;238:31;288:4;285:1;278:15;312:4;309:1;302:15;328:1212;426:6;434;442;495:2;483:9;474:7;470:23;466:32;463:52;;;511:1;508;501:12;463:52;534:40;564:9;534:40;:::i;:::-;524:50;;593:2;614:49;659:2;648:9;644:18;614:49;:::i;:::-;707:2;692:18;;686:25;604:59;;-1:-1:-1;;;;;;760:14:16;;;757:34;;;787:1;784;777:12;757:34;825:6;814:9;810:22;800:32;;870:7;863:4;859:2;855:13;851:27;841:55;;892:1;889;882:12;841:55;921:2;915:9;943:2;939;936:10;933:36;;;949:18;;:::i;:::-;1024:2;1018:9;992:2;1078:13;;-1:-1:-1;;1074:22:16;;;1098:2;1070:31;1066:40;1054:53;;;1122:18;;;1142:22;;;1119:46;1116:72;;;1168:18;;:::i;:::-;1208:10;1204:2;1197:22;1243:2;1235:6;1228:18;1283:7;1278:2;1273;1269;1265:11;1261:20;1258:33;1255:53;;;1304:1;1301;1294:12;1255:53;1326:1;1317:10;;1336:129;1350:2;1347:1;1344:9;1336:129;;;1438:10;;;1434:19;;1428:26;1407:14;;;1403:23;;1396:59;1361:10;;;;1336:129;;;1507:1;1502:2;1497;1489:6;1485:15;1481:24;1474:35;1528:6;1518:16;;;;;;;;328:1212;;;;;:::o;1545:380::-;1624:1;1620:12;;;;1667;;;1688:61;;1742:4;1734:6;1730:17;1720:27;;1688:61;1795:2;1787:6;1784:14;1764:18;1761:38;1758:161;;1841:10;1836:3;1832:20;1829:1;1822:31;1876:4;1873:1;1866:15;1904:4;1901:1;1894:15;1758:161;;1545:380;;;:::o;2056:545::-;2158:2;2153:3;2150:11;2147:448;;;2194:1;2219:5;2215:2;2208:17;2264:4;2260:2;2250:19;2334:2;2322:10;2318:19;2315:1;2311:27;2305:4;2301:38;2370:4;2358:10;2355:20;2352:47;;;-1:-1:-1;2393:4:16;2352:47;2448:2;2443:3;2439:12;2436:1;2432:20;2426:4;2422:31;2412:41;;2503:82;2521:2;2514:5;2511:13;2503:82;;;2566:17;;;2547:1;2536:13;2503:82;;;2507:3;;;2147:448;2056:545;;;:::o;2777:1352::-;2897:10;;-1:-1:-1;;;;;2919:30:16;;2916:56;;;2952:18;;:::i;:::-;2981:97;3071:6;3031:38;3063:4;3057:11;3031:38;:::i;:::-;3025:4;2981:97;:::i;:::-;3133:4;;3197:2;3186:14;;3214:1;3209:663;;;;3916:1;3933:6;3930:89;;;-1:-1:-1;3985:19:16;;;3979:26;3930:89;-1:-1:-1;;2734:1:16;2730:11;;;2726:24;2722:29;2712:40;2758:1;2754:11;;;2709:57;4032:81;;3179:944;;3209:663;2003:1;1996:14;;;2040:4;2027:18;;-1:-1:-1;;3245:20:16;;;3363:236;3377:7;3374:1;3371:14;3363:236;;;3466:19;;;3460:26;3445:42;;3558:27;;;;3526:1;3514:14;;;;3393:19;;3363:236;;;3367:3;3627:6;3618:7;3615:19;3612:201;;;3688:19;;;3682:26;-1:-1:-1;;3771:1:16;3767:14;;;3783:3;3763:24;3759:37;3755:42;3740:58;3725:74;;3612:201;-1:-1:-1;;;;;3859:1:16;3843:14;;;3839:22;3826:36;;-1:-1:-1;2777:1352:16:o;:::-;2571:2483:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_1961": { + "entryPoint": null, + "id": 1961, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_1972": { + "entryPoint": null, + "id": 1972, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_executeWithToken_136": { + "entryPoint": 1413, + "id": 136, + "parameterSlots": 9, + "returnSlots": 0 + }, + "@_execute_1908": { + "entryPoint": 1424, + "id": 1908, + "parameterSlots": 6, + "returnSlots": 0 + }, + "@_send_1950": { + "entryPoint": null, + "id": 1950, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@chainName_1760": { + "entryPoint": 828, + "id": 1760, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@createSmartWallet_1837": { + "entryPoint": 1283, + "id": 1837, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@executeWithToken_112": { + "entryPoint": 530, + "id": 112, + "parameterSlots": 10, + "returnSlots": 0 + }, + "@execute_68": { + "entryPoint": 978, + "id": 68, + "parameterSlots": 7, + "returnSlots": 0 + }, + "@gasService_1758": { + "entryPoint": null, + "id": 1758, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@gateway_10": { + "entryPoint": null, + "id": 10, + "parameterSlots": 0, + "returnSlots": 0 + }, + "abi_decode_string_calldata": { + "entryPoint": 2341, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bool_fromMemory": { + "entryPoint": 3418, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr": { + "entryPoint": 2790, + "id": null, + "parameterSlots": 2, + "returnSlots": 7 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256": { + "entryPoint": 2417, + "id": null, + "parameterSlots": 2, + "returnSlots": 10 + }, + "abi_decode_tuple_t_string_memory_ptr": { + "entryPoint": 3011, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_string": { + "entryPoint": 2686, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_string_calldata": { + "entryPoint": 3244, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 3976, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 3228, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_address_t_string_memory_ptr__to_t_address_t_address_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 3608, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed": { + "entryPoint": 4050, + "id": null, + "parameterSlots": 8, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed": { + "entryPoint": 3539, + "id": null, + "parameterSlots": 7, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed": { + "entryPoint": 3317, + "id": null, + "parameterSlots": 10, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 4168, + "id": null, + "parameterSlots": 6, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 3676, + "id": null, + "parameterSlots": 7, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 2762, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_struct$_AgoricResponse_$1551_memory_ptr__to_t_struct$_AgoricResponse_$1551_memory_ptr__fromStack_reversed": { + "entryPoint": 3802, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 2648, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 3454, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x32": { + "entryPoint": 3755, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 2964, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:12946:16", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:16", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "115:76:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "125:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "137:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "148:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "133:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "133:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "125:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "167:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "178:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "160:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "160:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "160:25:16" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "84:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "95:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "106:4:16", + "type": "" + } + ], + "src": "14:177:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "319:125:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "329:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "341:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "352:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "337:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "337:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "329:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "371:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "386:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "394:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "382:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "382:55:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "364:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "364:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "364:74:16" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "288:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "299:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "310:4:16", + "type": "" + } + ], + "src": "196:248:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "522:275:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "571:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "580:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "583:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "573:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "573:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "573:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "550:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "558:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "546:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "546:17:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "565:3:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "542:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "542:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "535:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "535:35:16" + }, + "nodeType": "YulIf", + "src": "532:55:16" + }, + { + "nodeType": "YulAssignment", + "src": "596:30:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "619:6:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "606:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "606:20:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "596:6:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "669:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "678:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "681:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "671:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "671:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "671:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "641:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "649:18:16", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "638:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "638:30:16" + }, + "nodeType": "YulIf", + "src": "635:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "694:29:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "710:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "718:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "706:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "706:17:16" + }, + "variableNames": [ + { + "name": "arrayPos", + "nodeType": "YulIdentifier", + "src": "694:8:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "775:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "784:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "787:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "777:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "777:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "777:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "746:6:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "754:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "742:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "742:19:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "763:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "738:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "738:30:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "770:3:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "735:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "735:39:16" + }, + "nodeType": "YulIf", + "src": "732:59:16" + } + ] + }, + "name": "abi_decode_string_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "485:6:16", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "493:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nodeType": "YulTypedName", + "src": "501:8:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "511:6:16", + "type": "" + } + ], + "src": "449:348:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1036:1203:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1083:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1092:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1095:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1085:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1085:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1085:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1057:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1066:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "1053:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1053:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1078:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "1049:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1049:33:16" + }, + "nodeType": "YulIf", + "src": "1046:53:16" + }, + { + "nodeType": "YulAssignment", + "src": "1108:33:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1131:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1118:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1118:23:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "1108:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1150:46:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1181:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1192:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1177:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1177:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1164:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1164:32:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1154:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1205:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1215:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "1209:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1260:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1269:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1272:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1262:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1262:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1262:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1248:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1256:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1245:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1245:14:16" + }, + "nodeType": "YulIf", + "src": "1242:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1285:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1342:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1353:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1338:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1338:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1362:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1311:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1311:59:16" + }, + "variables": [ + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "1289:8:16", + "type": "" + }, + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "1299:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1379:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "1389:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "1379:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1406:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "1416:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "1406:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1433:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1466:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1477:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1462:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1462:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1449:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1449:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "1437:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1510:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1519:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1522:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1512:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1512:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1512:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "1496:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1506:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1493:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1493:16:16" + }, + "nodeType": "YulIf", + "src": "1490:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1535:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1592:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "1603:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1588:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1588:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1614:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1561:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1561:61:16" + }, + "variables": [ + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "1539:8:16", + "type": "" + }, + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "1549:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1631:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "1641:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "1631:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1658:18:16", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "1668:8:16" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "1658:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1685:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1718:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1729:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1714:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1714:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1701:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1701:32:16" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "1689:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1762:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1771:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1774:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1764:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1764:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1764:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "1748:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1758:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1745:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1745:16:16" + }, + "nodeType": "YulIf", + "src": "1742:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1787:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1844:9:16" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "1855:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1840:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1840:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1866:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1813:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1813:61:16" + }, + "variables": [ + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "1791:8:16", + "type": "" + }, + { + "name": "value6_1", + "nodeType": "YulTypedName", + "src": "1801:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1883:18:16", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "1893:8:16" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "1883:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1910:18:16", + "value": { + "name": "value6_1", + "nodeType": "YulIdentifier", + "src": "1920:8:16" + }, + "variableNames": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "1910:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1937:49:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1970:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1981:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1966:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1966:19:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1953:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1953:33:16" + }, + "variables": [ + { + "name": "offset_3", + "nodeType": "YulTypedName", + "src": "1941:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2015:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2024:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2027:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2017:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2017:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2017:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_3", + "nodeType": "YulIdentifier", + "src": "2001:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2011:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1998:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1998:16:16" + }, + "nodeType": "YulIf", + "src": "1995:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2040:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2097:9:16" + }, + { + "name": "offset_3", + "nodeType": "YulIdentifier", + "src": "2108:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2093:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2093:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2119:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "2066:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "2066:61:16" + }, + "variables": [ + { + "name": "value7_1", + "nodeType": "YulTypedName", + "src": "2044:8:16", + "type": "" + }, + { + "name": "value8_1", + "nodeType": "YulTypedName", + "src": "2054:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2136:18:16", + "value": { + "name": "value7_1", + "nodeType": "YulIdentifier", + "src": "2146:8:16" + }, + "variableNames": [ + { + "name": "value7", + "nodeType": "YulIdentifier", + "src": "2136:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2163:18:16", + "value": { + "name": "value8_1", + "nodeType": "YulIdentifier", + "src": "2173:8:16" + }, + "variableNames": [ + { + "name": "value8", + "nodeType": "YulIdentifier", + "src": "2163:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2190:43:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2217:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2228:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2213:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2213:19:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2200:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2200:33:16" + }, + "variableNames": [ + { + "name": "value9", + "nodeType": "YulIdentifier", + "src": "2190:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "930:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "941:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "953:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "961:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "969:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "977:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "985:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "993:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "1001:6:16", + "type": "" + }, + { + "name": "value7", + "nodeType": "YulTypedName", + "src": "1009:6:16", + "type": "" + }, + { + "name": "value8", + "nodeType": "YulTypedName", + "src": "1017:6:16", + "type": "" + }, + { + "name": "value9", + "nodeType": "YulTypedName", + "src": "1025:6:16", + "type": "" + } + ], + "src": "802:1437:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2310:184:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2320:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2329:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "2324:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2389:63:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "2414:3:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2419:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2410:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2410:11:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2433:3:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2438:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2429:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2429:11:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2423:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "2423:18:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2403:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2403:39:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2403:39:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2350:1:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2353:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2347:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2347:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "2361:19:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2363:15:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2372:1:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2375:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2368:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2368:10:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2363:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "2343:3:16", + "statements": [] + }, + "src": "2339:113:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "2472:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2477:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2468:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2468:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2486:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2461:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2461:27:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2461:27:16" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "2288:3:16", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "2293:3:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "2298:6:16", + "type": "" + } + ], + "src": "2244:250:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2549:280:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2559:26:16", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2579:5:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2573:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "2573:12:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "2563:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2601:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2606:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2594:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2594:19:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2594:19:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2661:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2668:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2657:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2657:16:16" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2679:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2684:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2675:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2675:14:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2691:6:16" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulIdentifier", + "src": "2622:34:16" + }, + "nodeType": "YulFunctionCall", + "src": "2622:76:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2622:76:16" + }, + { + "nodeType": "YulAssignment", + "src": "2707:116:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2722:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2735:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2743:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2731:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2731:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2748:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2727:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2727:88:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2718:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2718:98:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2818:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2714:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2714:109:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "2707:3:16" + } + ] + } + ] + }, + "name": "abi_encode_string", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2526:5:16", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "2533:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "2541:3:16", + "type": "" + } + ], + "src": "2499:330:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2955:99:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2972:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2983:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2965:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2965:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2965:21:16" + }, + { + "nodeType": "YulAssignment", + "src": "2995:53:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3021:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3033:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3044:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3029:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3029:18:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "3003:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "3003:45:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "2995:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2924:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2935:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "2946:4:16", + "type": "" + } + ], + "src": "2834:220:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3239:898:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3286:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3295:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3298:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3288:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3288:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3288:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3260:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3269:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3256:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3256:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3281:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3252:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3252:33:16" + }, + "nodeType": "YulIf", + "src": "3249:53:16" + }, + { + "nodeType": "YulAssignment", + "src": "3311:33:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3334:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3321:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3321:23:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3311:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3353:46:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3384:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3395:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3380:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3380:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3367:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3367:32:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3357:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3408:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3418:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "3412:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3463:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3472:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3475:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3465:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3465:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3465:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3451:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3459:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3448:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3448:14:16" + }, + "nodeType": "YulIf", + "src": "3445:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3488:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3545:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3556:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3541:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3541:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3565:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "3514:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "3514:59:16" + }, + "variables": [ + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "3492:8:16", + "type": "" + }, + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "3502:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3582:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "3592:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "3582:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3609:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "3619:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "3609:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3636:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3669:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3680:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3665:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3665:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3652:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3652:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "3640:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3713:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3722:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3725:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3715:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3715:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3715:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "3699:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3709:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3696:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3696:16:16" + }, + "nodeType": "YulIf", + "src": "3693:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3738:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3795:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "3806:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3791:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3791:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3817:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "3764:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "3764:61:16" + }, + "variables": [ + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "3742:8:16", + "type": "" + }, + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "3752:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3834:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "3844:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "3834:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3861:18:16", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "3871:8:16" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "3861:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3888:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3921:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3932:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3917:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3917:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3904:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3904:32:16" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "3892:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3965:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3974:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3977:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3967:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3967:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3967:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "3951:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3961:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3948:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3948:16:16" + }, + "nodeType": "YulIf", + "src": "3945:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3990:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4047:9:16" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "4058:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4043:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4043:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4069:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "4016:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "4016:61:16" + }, + "variables": [ + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "3994:8:16", + "type": "" + }, + { + "name": "value6_1", + "nodeType": "YulTypedName", + "src": "4004:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4086:18:16", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "4096:8:16" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "4086:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4113:18:16", + "value": { + "name": "value6_1", + "nodeType": "YulIdentifier", + "src": "4123:8:16" + }, + "variableNames": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "4113:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3157:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "3168:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3180:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "3188:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "3196:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "3204:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "3212:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "3220:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "3228:6:16", + "type": "" + } + ], + "src": "3059:1078:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4174:152:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4191:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4194:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4184:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4184:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4184:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4288:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4291:4:16", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4281:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4281:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4281:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4312:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4315:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4305:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4305:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4305:15:16" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "4142:184:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4411:901:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "4457:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4466:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4469:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4459:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4459:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4459:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4432:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4441:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4428:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4428:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4453:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "4424:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4424:32:16" + }, + "nodeType": "YulIf", + "src": "4421:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4482:37:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4509:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4496:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "4496:23:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "4486:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4528:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4538:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "4532:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4583:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4592:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4595:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4585:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4585:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4585:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4571:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4579:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4568:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4568:14:16" + }, + "nodeType": "YulIf", + "src": "4565:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4608:32:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4622:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4633:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4618:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4618:22:16" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "4612:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4688:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4697:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4700:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4690:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4690:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4690:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "4667:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4671:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4663:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4663:13:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4678:7:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "4659:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4659:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "4652:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4652:35:16" + }, + "nodeType": "YulIf", + "src": "4649:55:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4713:26:16", + "value": { + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "4736:2:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4723:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "4723:16:16" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "4717:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4762:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "4764:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "4764:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4764:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "4754:2:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4758:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4751:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4751:10:16" + }, + "nodeType": "YulIf", + "src": "4748:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4793:76:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4803:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + }, + "variables": [ + { + "name": "_4", + "nodeType": "YulTypedName", + "src": "4797:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4878:23:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4898:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "4892:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "4892:9:16" + }, + "variables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "4882:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4910:71:16", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "4932:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "4956:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4960:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4952:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4952:13:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "4967:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "4948:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4948:22:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4972:2:16", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4944:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4944:31:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "4977:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "4940:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4940:40:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4928:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4928:53:16" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "4914:10:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5040:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "5042:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "5042:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5042:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "4999:10:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "5011:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4996:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4996:18:16" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "5019:10:16" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "5031:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "5016:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "5016:22:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "4993:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4993:46:16" + }, + "nodeType": "YulIf", + "src": "4990:72:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5078:2:16", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "5082:10:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5071:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5071:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5071:22:16" + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "5109:6:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "5117:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5102:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5102:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5102:18:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5166:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5175:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5178:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "5168:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5168:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5168:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "5143:2:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "5147:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5139:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5139:11:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5152:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5135:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5135:20:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "5157:7:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "5132:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "5132:33:16" + }, + "nodeType": "YulIf", + "src": "5129:53:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "5208:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5216:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5204:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5204:15:16" + }, + { + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "5225:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5229:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5221:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5221:11:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "5234:2:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "5191:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "5191:46:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5191:46:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "5261:6:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "5269:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5257:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5257:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5274:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5253:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5253:24:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5279:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5246:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5246:35:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5246:35:16" + }, + { + "nodeType": "YulAssignment", + "src": "5290:16:16", + "value": { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "5300:6:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5290:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4377:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "4388:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4400:6:16", + "type": "" + } + ], + "src": "4331:981:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5418:125:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5428:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5440:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5451:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5436:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5436:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5428:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5470:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5485:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5493:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "5481:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5481:55:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5463:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5463:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5463:74:16" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5387:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5398:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5409:4:16", + "type": "" + } + ], + "src": "5317:226:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5674:125:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5684:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5696:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5707:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5692:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5692:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5684:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5726:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5741:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5749:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "5737:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5737:55:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5719:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5719:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5719:74:16" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5643:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5654:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5665:4:16", + "type": "" + } + ], + "src": "5548:251:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5951:124:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5974:3:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5979:6:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5987:6:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "5961:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "5961:33:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5961:33:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6003:26:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6017:3:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6022:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6013:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6013:16:16" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "6007:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "6045:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6049:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6038:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6038:13:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6038:13:16" + }, + { + "nodeType": "YulAssignment", + "src": "6060:9:16", + "value": { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "6067:2:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "6060:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5919:3:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "5924:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5932:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "5943:3:16", + "type": "" + } + ], + "src": "5804:271:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6147:259:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6164:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6169:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6157:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6157:19:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6157:19:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6202:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6207:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6198:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6198:14:16" + }, + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "6214:5:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6221:6:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "6185:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "6185:43:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6185:43:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6252:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6257:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6248:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6248:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6266:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6244:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6244:27:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6273:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6237:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6237:38:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6237:38:16" + }, + { + "nodeType": "YulAssignment", + "src": "6284:116:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6299:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6312:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6320:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6308:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6308:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6325:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "6304:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6304:88:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6295:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6295:98:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6395:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6291:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6291:109:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "6284:3:16" + } + ] + } + ] + }, + "name": "abi_encode_string_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "6116:5:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "6123:6:16", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "6131:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "6139:3:16", + "type": "" + } + ], + "src": "6080:326:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6742:513:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6759:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6770:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6752:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6752:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6752:25:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6797:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6808:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6793:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6793:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6813:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6786:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6786:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6786:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6826:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6867:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "6875:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6887:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6898:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6883:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6883:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "6840:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "6840:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "6830:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6923:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6934:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6919:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6919:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "6943:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6951:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6939:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6939:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6912:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6912:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6912:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6971:64:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "7012:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "7020:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "7028:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "6985:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "6985:50:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "6975:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7055:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7066:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7051:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7051:18:16" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "7071:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7044:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7044:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7044:34:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7098:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7109:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7094:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7094:19:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "7119:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7127:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7115:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7115:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7087:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7087:51:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7087:51:16" + }, + { + "nodeType": "YulAssignment", + "src": "7147:58:16", + "value": { + "arguments": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "7182:6:16" + }, + { + "name": "value7", + "nodeType": "YulIdentifier", + "src": "7190:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "7198:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "7155:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "7155:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7147:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7225:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7236:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7221:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7221:19:16" + }, + { + "name": "value8", + "nodeType": "YulIdentifier", + "src": "7242:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7214:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7214:35:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7214:35:16" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6647:9:16", + "type": "" + }, + { + "name": "value8", + "nodeType": "YulTypedName", + "src": "6658:6:16", + "type": "" + }, + { + "name": "value7", + "nodeType": "YulTypedName", + "src": "6666:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "6674:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "6682:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "6690:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "6698:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "6706:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6714:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6722:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6733:4:16", + "type": "" + } + ], + "src": "6411:844:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7338:199:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "7384:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7393:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7396:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7386:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7386:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7386:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7359:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7368:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7355:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7355:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7380:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "7351:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7351:32:16" + }, + "nodeType": "YulIf", + "src": "7348:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7409:29:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7428:9:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "7422:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "7422:16:16" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7413:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7491:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7500:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7503:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7493:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7493:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7493:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7460:5:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7481:5:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7474:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7474:13:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7467:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7467:21:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "7457:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "7457:32:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7450:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7450:40:16" + }, + "nodeType": "YulIf", + "src": "7447:60:16" + }, + { + "nodeType": "YulAssignment", + "src": "7516:15:16", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7526:5:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7516:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bool_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7304:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "7315:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7327:6:16", + "type": "" + } + ], + "src": "7260:277:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7597:382:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7607:22:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7621:1:16", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "7624:4:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "7617:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7617:12:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7607:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7638:38:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "7668:4:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7674:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "7664:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7664:12:16" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "7642:18:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7715:31:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7717:27:16", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7731:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7739:4:16", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "7727:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7727:17:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7717:6:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "7695:18:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7688:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7688:26:16" + }, + "nodeType": "YulIf", + "src": "7685:61:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7805:168:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7826:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7829:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7819:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7819:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7819:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7927:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7930:4:16", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7920:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7920:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7920:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7955:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7958:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7948:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7948:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7948:15:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "7761:18:16" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7784:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7792:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "7781:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "7781:14:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "7758:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "7758:38:16" + }, + "nodeType": "YulIf", + "src": "7755:218:16" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "7577:4:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "7586:6:16", + "type": "" + } + ], + "src": "7542:437:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8229:336:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8246:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8257:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8239:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8239:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8239:25:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8284:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8295:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8280:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8280:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8300:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8273:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8273:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8273:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8313:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "8354:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "8362:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8374:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8385:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8370:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8370:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "8327:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "8327:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "8317:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8410:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8421:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8406:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8406:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "8430:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8438:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8426:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8426:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8399:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8399:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8399:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "8458:58:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "8493:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "8501:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "8509:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "8466:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "8466:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8458:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8536:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8547:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8532:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8532:18:16" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "8552:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8525:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8525:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8525:34:16" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8158:9:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "8169:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "8177:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "8185:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "8193:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "8201:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8209:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8220:4:16", + "type": "" + } + ], + "src": "7984:581:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8747:264:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8757:52:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8767:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "8761:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8825:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8840:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "8848:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8836:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8836:15:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8818:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8818:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8818:34:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8872:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8883:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8868:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8868:18:16" + }, + { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "8892:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "8900:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8888:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8888:15:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8861:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8861:43:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8861:43:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8924:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8935:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8920:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8920:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8940:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8913:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8913:30:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8913:30:16" + }, + { + "nodeType": "YulAssignment", + "src": "8952:53:16", + "value": { + "arguments": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "8978:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8990:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9001:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8986:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8986:18:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "8960:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "8960:45:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8952:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_address_t_address_t_string_memory_ptr__to_t_address_t_address_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8700:9:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "8711:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "8719:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8727:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8738:4:16", + "type": "" + } + ], + "src": "8570:441:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9263:380:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9280:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9291:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9273:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9273:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9273:21:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9303:76:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "9344:6:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "9352:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9364:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9375:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9360:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9360:18:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "9317:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "9317:62:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "9307:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9399:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9410:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9395:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9395:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "9419:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9427:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "9415:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9415:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9388:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9388:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9388:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9447:64:16", + "value": { + "arguments": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "9488:6:16" + }, + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "9496:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "9504:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "9461:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "9461:50:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "9451:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9531:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9542:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9527:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9527:18:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "9551:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9559:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "9547:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9547:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9520:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9520:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9520:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "9579:58:16", + "value": { + "arguments": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "9614:6:16" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "9622:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "9630:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "9587:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "9587:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9579:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "9192:9:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "9203:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "9211:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "9219:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "9227:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "9235:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "9243:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "9254:4:16", + "type": "" + } + ], + "src": "9016:627:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9680:152:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9697:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9700:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9690:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9690:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9690:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9794:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9797:4:16", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9787:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9787:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9787:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9818:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9821:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "9811:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9811:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9811:15:16" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "9648:184:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10002:1077:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10012:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10022:2:16", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "10016:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10040:9:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10051:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10033:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10033:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10033:21:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10063:32:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10081:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10092:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10077:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10077:18:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "10067:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10115:9:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10126:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10111:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10111:18:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "10151:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10145:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10145:13:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "10138:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10138:21:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "10131:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10131:29:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10104:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10104:57:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10104:57:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10170:42:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "10200:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10208:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10196:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10196:15:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10190:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10190:22:16" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "10174:12:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10221:14:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10231:4:16", + "type": "", + "value": "0x40" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "10225:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10255:9:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "10266:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10251:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10251:18:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "10271:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10244:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10244:30:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10244:30:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10283:17:16", + "value": { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "10294:6:16" + }, + "variables": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "10287:3:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10309:33:16", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "10329:12:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10323:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10323:19:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "10313:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "10358:6:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "10366:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10351:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10351:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10351:22:16" + }, + { + "nodeType": "YulAssignment", + "src": "10382:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10393:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10404:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10389:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10389:19:16" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10382:3:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10417:54:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10439:9:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10454:1:16", + "type": "", + "value": "5" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "10457:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "10450:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10450:14:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10435:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10435:30:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10467:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10431:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10431:40:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "10421:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10480:35:16", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "10498:12:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10512:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10494:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10494:21:16" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "10484:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10524:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10533:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "10528:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10592:458:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10613:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "10626:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10634:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10622:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10622:22:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10646:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10618:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10618:95:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10606:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10606:108:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10606:108:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10727:23:16", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "10743:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10737:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10737:13:16" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "10731:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "10770:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "10798:2:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10792:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10792:9:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "10785:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10785:17:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "10778:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10778:25:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10763:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10763:41:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10763:41:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10817:40:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "10849:2:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10853:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10845:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10845:11:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10839:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10839:18:16" + }, + "variables": [ + { + "name": "memberValue0_1", + "nodeType": "YulTypedName", + "src": "10821:14:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "10881:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10889:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10877:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10877:15:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "10894:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10870:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10870:27:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10870:27:16" + }, + { + "nodeType": "YulAssignment", + "src": "10910:60:16", + "value": { + "arguments": [ + { + "name": "memberValue0_1", + "nodeType": "YulIdentifier", + "src": "10938:14:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "10958:6:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "10966:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10954:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10954:15:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "10920:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "10920:50:16" + }, + "variableNames": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "10910:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10983:25:16", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "10997:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "11005:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10993:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10993:15:16" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "10983:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11021:19:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11032:3:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "11037:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11028:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11028:12:16" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11021:3:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "10554:1:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "10557:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "10551:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "10551:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "10565:18:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10567:14:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "10576:1:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10579:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10572:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10572:9:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "10567:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "10547:3:16", + "statements": [] + }, + "src": "10543:507:16" + }, + { + "nodeType": "YulAssignment", + "src": "11059:14:16", + "value": { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "11067:6:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "11059:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_struct$_AgoricResponse_$1551_memory_ptr__to_t_struct$_AgoricResponse_$1551_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "9971:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "9982:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "9993:4:16", + "type": "" + } + ], + "src": "9837:1242:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11247:267:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11264:3:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11273:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11281:66:16", + "type": "", + "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "11269:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11269:79:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11257:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11257:92:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11257:92:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11358:27:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "11378:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "11372:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "11372:13:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "11362:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "11433:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11441:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11429:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11429:17:16" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11452:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11457:1:16", + "type": "", + "value": "4" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11448:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11448:11:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "11461:6:16" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulIdentifier", + "src": "11394:34:16" + }, + "nodeType": "YulFunctionCall", + "src": "11394:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11394:74:16" + }, + { + "nodeType": "YulAssignment", + "src": "11477:31:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11492:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "11497:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11488:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11488:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11506:1:16", + "type": "", + "value": "4" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11484:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11484:24:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "11477:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "11215:3:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "11220:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "11228:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "11239:3:16", + "type": "" + } + ], + "src": "11084:430:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11810:531:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11820:52:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11830:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "11824:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11888:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11903:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "11911:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "11899:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11899:15:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11881:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11881:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11881:34:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11935:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11946:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11931:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11931:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11951:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11924:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11924:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11924:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11964:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "12005:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "12013:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12025:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12036:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12021:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12021:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "11978:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "11978:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "11968:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12061:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12072:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12057:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12057:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "12081:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12089:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "12077:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12077:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12050:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12050:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12050:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12109:64:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "12150:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "12158:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "12166:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "12123:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "12123:50:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "12113:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12193:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12204:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12189:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12189:18:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12213:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12221:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "12209:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12209:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12182:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12182:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12182:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "12241:41:16", + "value": { + "arguments": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "12267:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12275:6:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "12249:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "12249:33:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12241:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12302:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12313:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12298:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12298:19:16" + }, + { + "arguments": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "12323:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12331:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "12319:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12319:15:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12291:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12291:44:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12291:44:16" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "11731:9:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "11742:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "11750:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "11758:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "11766:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "11774:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "11782:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "11790:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "11801:4:16", + "type": "" + } + ], + "src": "11519:822:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12581:363:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12598:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12609:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12591:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12591:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12591:21:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12621:76:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "12662:6:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "12670:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12682:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12693:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12678:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12678:18:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "12635:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "12635:62:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "12625:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12717:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12728:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12713:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12713:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "12737:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12745:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "12733:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12733:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12706:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12706:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12706:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12765:64:16", + "value": { + "arguments": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "12806:6:16" + }, + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "12814:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "12822:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "12779:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "12779:50:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "12769:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12849:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12860:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12845:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12845:18:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12869:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12877:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "12865:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12865:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12838:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12838:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12838:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "12897:41:16", + "value": { + "arguments": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "12923:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "12931:6:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "12905:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "12905:33:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12897:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "12518:9:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "12529:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "12537:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "12545:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "12553:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "12561:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "12572:4:16", + "type": "" + } + ], + "src": "12346:598:16" + } + ] + }, + "contents": "{\n { }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_string_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7, value8, value9\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n let offset_3 := calldataload(add(headStart, 128))\n if gt(offset_3, _1) { revert(0, 0) }\n let value7_1, value8_1 := abi_decode_string_calldata(add(headStart, offset_3), dataEnd)\n value7 := value7_1\n value8 := value8_1\n value9 := calldataload(add(headStart, 160))\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_string_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let _3 := calldataload(_2)\n if gt(_3, _1) { panic_error_0x41() }\n let _4 := 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_3, 0x1f), _4), 63), _4))\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _3)\n if gt(add(add(_2, _3), 32), dataEnd) { revert(0, 0) }\n calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value0 := memPtr\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 192)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value6, value7, tail_2)\n mstore(add(headStart, 160), value8)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 128)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 128))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n }\n function abi_encode_tuple_t_address_t_address_t_string_memory_ptr__to_t_address_t_address_t_string_memory_ptr__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), 96)\n tail := abi_encode_string(value2, add(headStart, 96))\n }\n function abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string_calldata(value0, value1, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value2, value3, tail_1)\n mstore(add(headStart, 64), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value4, value5, tail_2)\n }\n function panic_error_0x32()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_struct$_AgoricResponse_$1551_memory_ptr__to_t_struct$_AgoricResponse_$1551_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n mstore(headStart, _1)\n let tail_1 := add(headStart, 96)\n mstore(add(headStart, _1), iszero(iszero(mload(value0))))\n let memberValue0 := mload(add(value0, _1))\n let _2 := 0x40\n mstore(add(headStart, _2), _2)\n let pos := tail_1\n let length := mload(memberValue0)\n mstore(tail_1, length)\n pos := add(headStart, 128)\n let tail_2 := add(add(headStart, shl(5, length)), 128)\n let srcPtr := add(memberValue0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80))\n let _3 := mload(srcPtr)\n mstore(tail_2, iszero(iszero(mload(_3))))\n let memberValue0_1 := mload(add(_3, _1))\n mstore(add(tail_2, _1), _2)\n tail_2 := abi_encode_string(memberValue0_1, add(tail_2, _2))\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, and(value0, 0xffffffff00000000000000000000000000000000000000000000000000000000))\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 4), length)\n end := add(add(pos, length), 4)\n }\n function abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed(headStart, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), 160)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 160))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), sub(tail_2, headStart))\n tail := abi_encode_string(value5, tail_2)\n mstore(add(headStart, 128), and(value6, _1))\n }\n function abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string_calldata(value0, value1, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value2, value3, tail_1)\n mstore(add(headStart, 64), sub(tail_2, headStart))\n tail := abi_encode_string(value4, tail_2)\n }\n}", + "id": 16, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": { + "10": [ + { + "length": 32, + "start": 248 + }, + { + "length": 32, + "start": 619 + }, + { + "length": 32, + "start": 1067 + }, + { + "length": 32, + "start": 2137 + } + ], + "1758": [ + { + "length": 32, + "start": 496 + }, + { + "length": 32, + "start": 1317 + }, + { + "length": 32, + "start": 1951 + } + ] + }, + "linkReferences": {}, + "object": "608060405260043610620000735760003560e01c80634916065811620000495780634916065814620001925780635e8846f614620001b75780636a22d8cc14620001dc57620000b1565b8063116191b614620000e45780631a98b2e014620001445780631c93b03a146200016b57620000b1565b36620000b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587490602001620000a7565b348015620000f157600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156200015157600080fd5b50620001696200016336600462000971565b62000212565b005b3480156200017857600080fd5b50620001836200033c565b6040516200013b919062000aca565b3480156200019f57600080fd5b5062000169620001b136600462000ae6565b620003d2565b348015620001c457600080fd5b506200011a620001d636600462000bc3565b62000503565b348015620001e957600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b600085856040516200022692919062000c9c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed990620002b2908e908e908e908e908e9089908d908d908d9060040162000cf5565b6020604051808303816000875af1158015620002d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f8919062000d5a565b6200032f576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600180546200034b9062000d7e565b80601f0160208091040260200160405190810160405280929190818152602001828054620003799062000d7e565b8015620003ca5780601f106200039e57610100808354040283529160200191620003ca565b820191906000526020600020905b815481529060010190602001808311620003ac57829003601f168201915b505050505081565b60008282604051620003e692919062000c9c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906200046c908b908b908b908b908b90899060040162000dd3565b6020604051808303816000875af11580156200048c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004b2919062000d5a565b620004e9576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620004f987878787878762000590565b5050505050505050565b60008054604051829173ffffffffffffffffffffffffffffffffffffffff16907f0000000000000000000000000000000000000000000000000000000000000000908590620005529062000917565b620005609392919062000e18565b604051809103906000f0801580156200057d573d6000803e3d6000fd5b509392505050565b505050505050505050565b6000620005d385858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506200050392505050565b90508073ffffffffffffffffffffffffffffffffffffffff167f9281645ccd9d592d9f6456fd9b95f6d2e0d36ebcc2f387399d5ac2b7c7ad7e6e86868a8a8a8a604051620006279695949392919062000e5c565b60405180910390a2604080516001808252818301909252600091816020015b604080518082019091526000815260606020820152815260200190600190039081620006465790505060408051808201825260018152815173ffffffffffffffffffffffffffffffffffffffff861660208281019190915293945090928301910160405160208183030381529060405281525081600081518110620006cf57620006cf62000eab565b602002602001018190525060008060e01b6040518060400160405280600015158152602001848152506040516020016200070a919062000eda565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905262000748929160200162000f88565b60405160208183030381529060405290506200058589898989856040517f0c93e3bb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690630c93e3bb9066038d7ea4c6800090620007eb9030908a908a908a908a908a90869060040162000fd2565b6000604051808303818588803b1580156200080557600080fd5b505af11580156200081a573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506200089b91508890889088908890889060040162001048565b600060405180830381600087803b158015620008b657600080fd5b505af1158015620008cb573d6000803e3d6000fd5b505050507fea1a07f81079879fea1a2eabafefd6f25bc76921237faf7fce963aeaa53c7ea185858585856040516200090895949392919062001048565b60405180910390a15050505050565b6117be806200109683390190565b60008083601f8401126200093857600080fd5b50813567ffffffffffffffff8111156200095157600080fd5b6020830191508360208285010111156200096a57600080fd5b9250929050565b60008060008060008060008060008060c08b8d0312156200099157600080fd5b8a35995060208b013567ffffffffffffffff80821115620009b157600080fd5b620009bf8e838f0162000925565b909b50995060408d0135915080821115620009d957600080fd5b620009e78e838f0162000925565b909950975060608d013591508082111562000a0157600080fd5b62000a0f8e838f0162000925565b909750955060808d013591508082111562000a2957600080fd5b5062000a388d828e0162000925565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b8381101562000a7557818101518382015260200162000a5b565b50506000910152565b6000815180845262000a9881602086016020860162000a58565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600062000adf602083018462000a7e565b9392505050565b60008060008060008060006080888a03121562000b0257600080fd5b87359650602088013567ffffffffffffffff8082111562000b2257600080fd5b62000b308b838c0162000925565b909850965060408a013591508082111562000b4a57600080fd5b62000b588b838c0162000925565b909650945060608a013591508082111562000b7257600080fd5b5062000b818a828b0162000925565b989b979a50959850939692959293505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121562000bd657600080fd5b813567ffffffffffffffff8082111562000bef57600080fd5b818401915084601f83011262000c0457600080fd5b81358181111562000c195762000c1962000b94565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171562000c625762000c6262000b94565b8160405282815287602084870101111562000c7c57600080fd5b826020860160208301376000928101602001929092525095945050505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600062000d1160c083018a8c62000cac565b828103604084015262000d2681898b62000cac565b9050866060840152828103608084015262000d4381868862000cac565b9150508260a08301529a9950505050505050505050565b60006020828403121562000d6d57600080fd5b8151801515811462000adf57600080fd5b600181811c9082168062000d9357607f821691505b60208210810362000dcd577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600062000def60808301878962000cac565b828103604084015262000e0481868862000cac565b915050826060830152979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff80861683528085166020840152506060604083015262000e53606083018462000a7e565b95945050505050565b60608152600062000e7260608301888a62000cac565b828103602084015262000e8781878962000cac565b9050828103604084015262000e9e81858762000cac565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006020808352606083018451151582850152818501516040808187015282825180855260808801915060808160051b8901019450858401935060005b8181101562000f7a578886037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80018352845180511515875287015187870185905262000f668588018262000a7e565b965050938601939186019160010162000f17565b509398975050505050505050565b7fffffffff00000000000000000000000000000000000000000000000000000000831681526000825162000fc481600485016020870162000a58565b919091016004019392505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a060208401526200100560a08401898b62000cac565b83810360408501526200101a81888a62000cac565b9050838103606085015262001030818762000a7e565b92505080841660808401525098975050505050505050565b6060815260006200105e60608301878962000cac565b82810360208401526200107381868862000cac565b9050828103604084015262001089818562000a7e565b9897505050505050505056fe60a06040523480156200001157600080fd5b50604051620017be380380620017be8339810160408190526200003491620001fb565b80836001600160a01b0381166200005e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b031660805262000075816200009e565b5050600180546001600160a01b0319166001600160a01b03929092169190911790555062000454565b6000808054620000ae90620002db565b80601f0160208091040260200160405190810160405280929190818152602001828054620000dc90620002db565b80156200012d5780601f1062000101576101008083540402835291602001916200012d565b820191906000526020600020905b8154815290600101906020018083116200010f57829003601f168201915b5050505050905081600090816200014591906200036a565b508160405162000156919062000436565b6040518091039020816040516200016e919062000436565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b80516001600160a01b0381168114620001ba57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620001f2578181015183820152602001620001d8565b50506000910152565b6000806000606084860312156200021157600080fd5b6200021c84620001a2565b92506200022c60208501620001a2565b60408501519092506001600160401b03808211156200024a57600080fd5b818601915086601f8301126200025f57600080fd5b815181811115620002745762000274620001bf565b604051601f8201601f19908116603f011681019083821181831017156200029f576200029f620001bf565b81604052828152896020848701011115620002b957600080fd5b620002cc836020830160208801620001d5565b80955050505050509250925092565b600181811c90821680620002f057607f821691505b6020821081036200031157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200036557600081815260208120601f850160051c81016020861015620003405750805b601f850160051c820191505b8181101562000361578281556001016200034c565b5050505b505050565b81516001600160401b03811115620003865762000386620001bf565b6200039e81620003978454620002db565b8462000317565b602080601f831160018114620003d65760008415620003bd5750858301515b600019600386901b1c1916600185901b17855562000361565b600085815260208120601f198616915b828110156200040757888601518255948401946001909101908401620003e6565b5085821015620004265787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082516200044a818460208701620001d5565b9190910192915050565b6080516113416200047d6000396000818160f50152818161026901526103ef01526113416000f3fe6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033a2646970667358221220d76f009a2c0afdd386344cb8d04f1e72dbd4b3faf6896e63f6f1e3d3eb0c805964736f6c63430008140033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH3 0x73 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH3 0x49 JUMPI DUP1 PUSH4 0x49160658 EQ PUSH3 0x192 JUMPI DUP1 PUSH4 0x5E8846F6 EQ PUSH3 0x1B7 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH3 0x1DC JUMPI PUSH3 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH3 0xE4 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH3 0x144 JUMPI DUP1 PUSH4 0x1C93B03A EQ PUSH3 0x16B JUMPI PUSH3 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH3 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH3 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0xF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x151 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x169 PUSH3 0x163 CALLDATASIZE PUSH1 0x4 PUSH3 0x971 JUMP JUMPDEST PUSH3 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x178 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x183 PUSH3 0x33C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x13B SWAP2 SWAP1 PUSH3 0xACA JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x19F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x169 PUSH3 0x1B1 CALLDATASIZE PUSH1 0x4 PUSH3 0xAE6 JUMP JUMPDEST PUSH3 0x3D2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x1C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH3 0x1D6 CALLDATASIZE PUSH1 0x4 PUSH3 0xBC3 JUMP JUMPDEST PUSH3 0x503 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x1E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH3 0x226 SWAP3 SWAP2 SWAP1 PUSH3 0xC9C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH3 0x2B2 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH3 0xCF5 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH3 0x2D2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x2F8 SWAP2 SWAP1 PUSH3 0xD5A JUMP JUMPDEST PUSH3 0x32F JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP1 SLOAD PUSH3 0x34B SWAP1 PUSH3 0xD7E JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0x379 SWAP1 PUSH3 0xD7E JUMP JUMPDEST DUP1 ISZERO PUSH3 0x3CA JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x39E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x3CA JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x3AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH3 0x3E6 SWAP3 SWAP2 SWAP1 PUSH3 0xC9C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH3 0x46C SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH3 0xDD3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH3 0x48C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x4B2 SWAP2 SWAP1 PUSH3 0xD5A JUMP JUMPDEST PUSH3 0x4E9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x4F9 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH3 0x590 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH1 0x40 MLOAD DUP3 SWAP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 PUSH32 0x0 SWAP1 DUP6 SWAP1 PUSH3 0x552 SWAP1 PUSH3 0x917 JUMP JUMPDEST PUSH3 0x560 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xE18 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 PUSH1 0x0 CREATE DUP1 ISZERO DUP1 ISZERO PUSH3 0x57D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x5D3 DUP6 DUP6 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH3 0x503 SWAP3 POP POP POP JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x9281645CCD9D592D9F6456FD9B95F6D2E0D36EBCC2F387399D5AC2B7C7AD7E6E DUP7 DUP7 DUP11 DUP11 DUP11 DUP11 PUSH1 0x40 MLOAD PUSH3 0x627 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xE5C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 DUP1 DUP3 MSTORE DUP2 DUP4 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH3 0x646 JUMPI SWAP1 POP POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE PUSH1 0x1 DUP2 MSTORE DUP2 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP7 AND PUSH1 0x20 DUP3 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP4 SWAP5 POP SWAP1 SWAP3 DUP4 ADD SWAP2 ADD PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH3 0x6CF JUMPI PUSH3 0x6CF PUSH3 0xEAB JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x0 DUP1 PUSH1 0xE0 SHL PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP5 DUP2 MSTORE POP PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0x70A SWAP2 SWAP1 PUSH3 0xEDA JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH3 0x748 SWAP3 SWAP2 PUSH1 0x20 ADD PUSH3 0xF88 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH3 0x585 DUP10 DUP10 DUP10 DUP10 DUP6 PUSH1 0x40 MLOAD PUSH32 0xC93E3BB00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0xC93E3BB SWAP1 PUSH7 0x38D7EA4C68000 SWAP1 PUSH3 0x7EB SWAP1 ADDRESS SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH3 0xFD2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x805 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x81A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH32 0x1C92115F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP4 POP PUSH4 0x1C92115F SWAP3 POP PUSH3 0x89B SWAP2 POP DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH3 0x1048 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x8B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x8CB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0xEA1A07F81079879FEA1A2EABAFEFD6F25BC76921237FAF7FCE963AEAA53C7EA1 DUP6 DUP6 DUP6 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH3 0x908 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0x1048 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP JUMP JUMPDEST PUSH2 0x17BE DUP1 PUSH3 0x1096 DUP4 CODECOPY ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH3 0x938 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH3 0x951 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH3 0x96A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH3 0x991 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0x9B1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x9BF DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0x9D9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x9E7 DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xA01 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xA0F DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0xA38 DUP14 DUP3 DUP15 ADD PUSH3 0x925 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xA75 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0xA5B JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH3 0xA98 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH3 0xA58 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH3 0xADF PUSH1 0x20 DUP4 ADD DUP5 PUSH3 0xA7E JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH3 0xB02 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0xB22 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xB30 DUP12 DUP4 DUP13 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xB4A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xB58 DUP12 DUP4 DUP13 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xB72 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0xB81 DUP11 DUP3 DUP12 ADD PUSH3 0x925 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xBD6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0xBEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP5 ADD SWAP2 POP DUP5 PUSH1 0x1F DUP4 ADD SLT PUSH3 0xC04 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH3 0xC19 JUMPI PUSH3 0xC19 PUSH3 0xB94 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0xC62 JUMPI PUSH3 0xC62 PUSH3 0xB94 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP8 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0xC7C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 SWAP3 DUP2 ADD PUSH1 0x20 ADD SWAP3 SWAP1 SWAP3 MSTORE POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH3 0xD11 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xD26 DUP2 DUP10 DUP12 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH3 0xD43 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xD6D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH3 0xADF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0xD93 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0xDCD JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH3 0xDEF PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xE04 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP7 AND DUP4 MSTORE DUP1 DUP6 AND PUSH1 0x20 DUP5 ADD MSTORE POP PUSH1 0x60 PUSH1 0x40 DUP4 ADD MSTORE PUSH3 0xE53 PUSH1 0x60 DUP4 ADD DUP5 PUSH3 0xA7E JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH3 0xE72 PUSH1 0x60 DUP4 ADD DUP9 DUP11 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0xE87 DUP2 DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xE9E DUP2 DUP6 DUP8 PUSH3 0xCAC JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 MSTORE PUSH1 0x60 DUP4 ADD DUP5 MLOAD ISZERO ISZERO DUP3 DUP6 ADD MSTORE DUP2 DUP6 ADD MLOAD PUSH1 0x40 DUP1 DUP2 DUP8 ADD MSTORE DUP3 DUP3 MLOAD DUP1 DUP6 MSTORE PUSH1 0x80 DUP9 ADD SWAP2 POP PUSH1 0x80 DUP2 PUSH1 0x5 SHL DUP10 ADD ADD SWAP5 POP DUP6 DUP5 ADD SWAP4 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0xF7A JUMPI DUP9 DUP7 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 ADD DUP4 MSTORE DUP5 MLOAD DUP1 MLOAD ISZERO ISZERO DUP8 MSTORE DUP8 ADD MLOAD DUP8 DUP8 ADD DUP6 SWAP1 MSTORE PUSH3 0xF66 DUP6 DUP9 ADD DUP3 PUSH3 0xA7E JUMP JUMPDEST SWAP7 POP POP SWAP4 DUP7 ADD SWAP4 SWAP2 DUP7 ADD SWAP2 PUSH1 0x1 ADD PUSH3 0xF17 JUMP JUMPDEST POP SWAP4 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 AND DUP2 MSTORE PUSH1 0x0 DUP3 MLOAD PUSH3 0xFC4 DUP2 PUSH1 0x4 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH3 0xA58 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD PUSH1 0x4 ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP11 AND DUP4 MSTORE PUSH1 0xA0 PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0x1005 PUSH1 0xA0 DUP5 ADD DUP10 DUP12 PUSH3 0xCAC JUMP JUMPDEST DUP4 DUP2 SUB PUSH1 0x40 DUP6 ADD MSTORE PUSH3 0x101A DUP2 DUP9 DUP11 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP4 DUP2 SUB PUSH1 0x60 DUP6 ADD MSTORE PUSH3 0x1030 DUP2 DUP8 PUSH3 0xA7E JUMP JUMPDEST SWAP3 POP POP DUP1 DUP5 AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH3 0x105E PUSH1 0x60 DUP4 ADD DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0x1073 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0x1089 DUP2 DUP6 PUSH3 0xA7E JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x17BE CODESIZE SUB DUP1 PUSH3 0x17BE DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0x1FB JUMP JUMPDEST DUP1 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5E JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x80 MSTORE PUSH3 0x75 DUP2 PUSH3 0x9E JUMP JUMPDEST POP POP PUSH1 0x1 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE POP PUSH3 0x454 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH3 0xAE SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0xDC SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 ISZERO PUSH3 0x12D JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x101 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x12D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x10F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH3 0x145 SWAP2 SWAP1 PUSH3 0x36A JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH3 0x156 SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH3 0x16E SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0x1BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0x1F2 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0x1D8 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0x211 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x21C DUP5 PUSH3 0x1A2 JUMP JUMPDEST SWAP3 POP PUSH3 0x22C PUSH1 0x20 DUP6 ADD PUSH3 0x1A2 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x24A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP7 ADD SWAP2 POP DUP7 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x25F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x274 JUMPI PUSH3 0x274 PUSH3 0x1BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x29F JUMPI PUSH3 0x29F PUSH3 0x1BF JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP10 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x2B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x2CC DUP4 PUSH1 0x20 DUP4 ADD PUSH1 0x20 DUP9 ADD PUSH3 0x1D5 JUMP JUMPDEST DUP1 SWAP6 POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x2F0 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x311 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x365 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x340 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x361 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x34C JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x386 JUMPI PUSH3 0x386 PUSH3 0x1BF JUMP JUMPDEST PUSH3 0x39E DUP2 PUSH3 0x397 DUP5 SLOAD PUSH3 0x2DB JUMP JUMPDEST DUP5 PUSH3 0x317 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x3D6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x3BD JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x361 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x407 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x3E6 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x426 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH3 0x44A DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH3 0x1D5 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH2 0x1341 PUSH3 0x47D PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0xF5 ADD MSTORE DUP2 DUP2 PUSH2 0x269 ADD MSTORE PUSH2 0x3EF ADD MSTORE PUSH2 0x1341 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x74 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x183 JUMPI DUP1 PUSH4 0x4FDB7F44 EQ PUSH2 0x1A3 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x1C3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F0 JUMPI PUSH2 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0xE3 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x141 JUMPI DUP1 PUSH4 0x268CA07E EQ PUSH2 0x163 JUMPI PUSH2 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH2 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH2 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x117 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x14D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x15C CALLDATASIZE PUSH1 0x4 PUSH2 0x9EB JUMP JUMPDEST PUSH2 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x16F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x17E CALLDATASIZE PUSH1 0x4 PUSH2 0xAC5 JUMP JUMPDEST PUSH2 0x345 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x19E CALLDATASIZE PUSH1 0x4 PUSH2 0xB31 JUMP JUMPDEST PUSH2 0x398 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x1BE CALLDATASIZE PUSH1 0x4 PUSH2 0xBD5 JUMP JUMPDEST PUSH2 0x4BF JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1CF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 SLOAD PUSH2 0x117 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH2 0x541 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x138 SWAP2 SWAP1 PUSH2 0xC85 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x224 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x2AE SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xCF8 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F1 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x338 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 PUSH2 0x5D3 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x351 DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x390 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH2 0x658 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AA SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x42E SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0xD79 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x44D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x4A7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4B5 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x74E JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH2 0x4CB DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x53B PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x527 SWAP1 PUSH32 0x3078303030303030303030303030303030303030303030303030303030303030 DUP2 MSTORE PUSH32 0x3030303030303030303000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x2A ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x658 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x550 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x57C SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5C9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x59E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5C9 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x5DD DUP6 DUP6 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH2 0x609 PUSH2 0x541 JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x654 JUMPI DUP2 DUP2 PUSH1 0x40 MLOAD PUSH32 0xDE6A3CBF00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64B SWAP3 SWAP2 SWAP1 PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0x666 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x692 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6DF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x6F5 SWAP2 SWAP1 PUSH2 0xEA3 JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH2 0x704 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH2 0x71A SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x75A DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x764 DUP5 DUP5 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x77F DUP4 DUP6 ADD DUP6 PUSH2 0x1051 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79D JUMPI PUSH2 0x79D PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x7E3 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x7BB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0x0 DUP1 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x807 JUMPI PUSH2 0x807 PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x83B JUMPI PUSH2 0x83B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x854 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP7 GAS CALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x891 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x896 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x14 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x436F6E74726163742063616C6C206661696C6564000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x64B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP4 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x92B JUMPI PUSH2 0x92B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x943 SWAP1 PUSH2 0x1218 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x7E9 JUMP JUMPDEST POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FC27C8074EE9BA6D8A94064CDEE28DDCBC36E7B0A4C730262CB845CA06332B2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x992 SWAP2 SWAP1 PUSH2 0x1277 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x9B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x9E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA35 DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA4E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA5A DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA7F DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA5 DUP14 DUP3 DUP15 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xAF3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xAFF DUP9 DUP4 DUP10 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB25 DUP8 DUP3 DUP9 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xB4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xB6B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB77 DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB9C DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xBB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBC2 DUP11 DUP3 DUP12 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xBE8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xBFF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC0B DUP6 DUP3 DUP7 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xC32 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xC1A JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xC53 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xC17 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xC98 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC3B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD12 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xD25 DUP2 DUP10 DUP12 PUSH2 0xCAF JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0xD40 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xC98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD93 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xDA6 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xDCE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0xE07 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xE21 PUSH1 0x20 DUP4 ADD DUP5 DUP7 PUSH2 0xCAF JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0xE9E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0xE7F JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x390 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xE8B JUMP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xEBD JUMPI PUSH2 0xEBD PUSH2 0xE29 JUMP JUMPDEST PUSH2 0xED1 DUP2 PUSH2 0xECB DUP5 SLOAD PUSH2 0xDBA JUMP JUMPDEST DUP5 PUSH2 0xE58 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0xF24 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0xEEE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x390 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0xF71 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0xF52 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0xFAD JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0xFCF DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0xC17 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP1 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0xFFC JUMPI PUSH2 0xFFC PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1049 JUMPI PUSH2 0x1049 PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1064 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x107C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1090 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x10A2 JUMPI PUSH2 0x10A2 PUSH2 0xE29 JUMP JUMPDEST DUP1 PUSH1 0x5 SHL PUSH2 0x10B1 DUP6 DUP3 ADD PUSH2 0x1002 JUMP JUMPDEST SWAP2 DUP3 MSTORE DUP4 DUP2 ADD DUP6 ADD SWAP2 DUP6 DUP2 ADD SWAP1 DUP10 DUP5 GT ISZERO PUSH2 0x10CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP7 ADD SWAP3 POP JUMPDEST DUP4 DUP4 LT ISZERO PUSH2 0x11DC JUMPI DUP3 CALLDATALOAD DUP6 DUP2 GT ISZERO PUSH2 0x10E9 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP7 ADD PUSH1 0x40 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP3 DUP14 SUB DUP2 ADD DUP3 SGT ISZERO PUSH2 0x1120 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST PUSH2 0x1128 PUSH2 0xFD9 JUMP JUMPDEST DUP11 DUP5 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x114F JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP2 MSTORE DUP4 DUP4 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x1163 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP6 ADD SWAP5 POP POP DUP14 PUSH1 0x3F DUP6 ADD SLT PUSH2 0x1179 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP11 DUP5 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x118D JUMPI PUSH2 0x118D PUSH2 0xE29 JUMP JUMPDEST PUSH2 0x119D DUP13 DUP5 PUSH1 0x1F DUP5 ADD AND ADD PUSH2 0x1002 JUMP JUMPDEST SWAP3 POP DUP1 DUP4 MSTORE DUP15 DUP5 DUP3 DUP8 ADD ADD GT ISZERO PUSH2 0x11B4 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP5 DUP7 ADD DUP14 DUP6 ADD CALLDATACOPY PUSH1 0x0 SWAP1 DUP4 ADD DUP13 ADD MSTORE DUP1 DUP12 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MSTORE POP POP SWAP2 DUP7 ADD SWAP2 SWAP1 DUP7 ADD SWAP1 PUSH2 0x10D1 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1270 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12FD JUMPI DUP9 DUP4 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD ISZERO ISZERO DUP5 MSTORE DUP8 ADD MLOAD DUP8 DUP5 ADD DUP8 SWAP1 MSTORE PUSH2 0x12EA DUP8 DUP6 ADD DUP3 PUSH2 0xC3B JUMP JUMPDEST SWAP6 DUP9 ADD SWAP6 SWAP4 POP POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x129E JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB0 DUP16 NOT 0xB2 PUSH29 0x5B96E2196BCC61C4069DC8FAC27E30816AC61FF2278165FDDA761B6473 PUSH16 0x6C63430008140033A264697066735822 SLT KECCAK256 0xD7 PUSH16 0x9A2C0AFDD386344CB8D04F1E72DBD4 0xB3 STATICCALL 0xF6 DUP10 PUSH15 0x63F6F1E3D3EB0C805964736F6C6343 STOP ADDMOD EQ STOP CALLER ", + "sourceMap": "2571:2483:13:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4927:31;;4948:9;160:25:16;;4936:10:13;;4927:31;;148:2:16;133:18;4927:31:13;;;;;;;;2571:2483;;5014:31;;5035:9;160:25:16;;5023:10:13;;5014:31;;148:2:16;133:18;5014:31:13;14:177:16;252:39:0;;;;;;;;;;;;;;;;;;394:42:16;382:55;;;364:74;;352:2;337:18;252:39:0;;;;;;;;872:667;;;;;;;;;;-1:-1:-1;872:667:0;;;;;:::i;:::-;;:::i;:::-;;2769:23:13;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;447:419:0:-;;;;;;;;;;-1:-1:-1;447:419:0;;;;;:::i;:::-;;:::i;3398:215:13:-;;;;;;;;;;-1:-1:-1;3398:215:13;;;;;:::i;:::-;;:::i;2718:45::-;;;;;;;;;;;;;;;872:667:0;1119:19;1151:7;;1141:18;;;;;;;:::i;:::-;;;;;;;;;1188:218;;;1141:18;-1:-1:-1;1188:35:0;:7;:35;;;;:218;;1241:9;;1268:11;;;;1297:13;;;;1141:18;;1357:11;;;;1386:6;;1188:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1170:276;;1424:22;;;;;;;;;;;;;;1170:276;1109:430;872:667;;;;;;;;;;:::o;2769:23:13:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;447:419:0:-;624:19;656:7;;646:18;;;;;;;:::i;:::-;;;;;;;;;680:80;;;646:18;-1:-1:-1;680:28:0;:7;:28;;;;:80;;709:9;;720:11;;;;733:13;;;;646:18;;680:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;675:128;;781:22;;;;;;;;;;;;;;675:128;814:45;823:11;;836:13;;851:7;;814:8;:45::i;:::-;614:252;447:419;;;;;;;:::o;3398:215:13:-;3462:7;3533:8;;3522:48;;3462:7;;3533:8;;;3551:10;;3564:5;;3522:48;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3481:99:13;3398:215;-1:-1:-1;;;3398:215:13:o;1702:221:0:-;;;;;;;;;;:::o;3619:723:13:-;3783:26;3812:32;3830:13;;3812:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3812:17:13;;-1:-1:-1;;;3812:32:13:i;:::-;3783:61;;3891:18;3859:139;;;3923:13;;3950:11;;3975:13;;3859:139;;;;;;;;;;;:::i;:::-;;;;;;;;4038:19;;;4055:1;4038:19;;;;;;;;;4008:27;;4038:19;;;;-1:-1:-1;;;;;;;;;;;;;;;;;4038:19:13;;;;;;;;;;;;;;-1:-1:-1;4081:48:13;;;;;;;;4092:4;4081:48;;4098:30;;394:42:16;382:55;;4081:48:13;4098:30;;;364:74:16;;;;4008:49:13;;-1:-1:-1;4081:48:13;;;;;337:18:16;4098:30:13;;;;;;;;;;;;4081:48;;;4068:7;4076:1;4068:10;;;;;;;;:::i;:::-;;;;;;:61;;;;4140:23;4203:10;4196:18;;4239:30;;;;;;;;4254:5;4239:30;;;;;;4261:7;4239:30;;;4228:42;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;4166:114;;;4228:42;4166:114;;:::i;:::-;;;;;;;;;;;;;4140:140;;4290:45;4296:11;;4309:13;;4324:10;4504:210;;;;;:38;:10;:38;;;;4550:16;;4504:210;;4589:4;;4608:16;;;;4638:18;;;;4670:7;;4589:4;;4504:210;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4725:67:13;;;;;:20;:7;:20;;-1:-1:-1;4725:20:13;;-1:-1:-1;4725:67:13;;-1:-1:-1;4746:16:13;;;;4764:18;;;;4784:7;;4725:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4807:65;4826:16;;4844:18;;4864:7;4807:65;;;;;;;;;;:::i;:::-;;;;;;;;4348:531;;;;;:::o;-1:-1:-1:-;;;;;;;;:::o;449:348:16:-;501:8;511:6;565:3;558:4;550:6;546:17;542:27;532:55;;583:1;580;573:12;532:55;-1:-1:-1;606:20:16;;649:18;638:30;;635:50;;;681:1;678;671:12;635:50;718:4;710:6;706:17;694:29;;770:3;763:4;754:6;746;742:19;738:30;735:39;732:59;;;787:1;784;777:12;732:59;449:348;;;;;:::o;802:1437::-;953:6;961;969;977;985;993;1001;1009;1017;1025;1078:3;1066:9;1057:7;1053:23;1049:33;1046:53;;;1095:1;1092;1085:12;1046:53;1131:9;1118:23;1108:33;;1192:2;1181:9;1177:18;1164:32;1215:18;1256:2;1248:6;1245:14;1242:34;;;1272:1;1269;1262:12;1242:34;1311:59;1362:7;1353:6;1342:9;1338:22;1311:59;:::i;:::-;1389:8;;-1:-1:-1;1285:85:16;-1:-1:-1;1477:2:16;1462:18;;1449:32;;-1:-1:-1;1493:16:16;;;1490:36;;;1522:1;1519;1512:12;1490:36;1561:61;1614:7;1603:8;1592:9;1588:24;1561:61;:::i;:::-;1641:8;;-1:-1:-1;1535:87:16;-1:-1:-1;1729:2:16;1714:18;;1701:32;;-1:-1:-1;1745:16:16;;;1742:36;;;1774:1;1771;1764:12;1742:36;1813:61;1866:7;1855:8;1844:9;1840:24;1813:61;:::i;:::-;1893:8;;-1:-1:-1;1787:87:16;-1:-1:-1;1981:3:16;1966:19;;1953:33;;-1:-1:-1;1998:16:16;;;1995:36;;;2027:1;2024;2017:12;1995:36;;2066:61;2119:7;2108:8;2097:9;2093:24;2066:61;:::i;:::-;2040:87;;2146:8;2136:18;;;2173:8;2163:18;;;2228:3;2217:9;2213:19;2200:33;2190:43;;802:1437;;;;;;;;;;;;;:::o;2244:250::-;2329:1;2339:113;2353:6;2350:1;2347:13;2339:113;;;2429:11;;;2423:18;2410:11;;;2403:39;2375:2;2368:10;2339:113;;;-1:-1:-1;;2486:1:16;2468:16;;2461:27;2244:250::o;2499:330::-;2541:3;2579:5;2573:12;2606:6;2601:3;2594:19;2622:76;2691:6;2684:4;2679:3;2675:14;2668:4;2661:5;2657:16;2622:76;:::i;:::-;2743:2;2731:15;2748:66;2727:88;2718:98;;;;2818:4;2714:109;;2499:330;-1:-1:-1;;2499:330:16:o;2834:220::-;2983:2;2972:9;2965:21;2946:4;3003:45;3044:2;3033:9;3029:18;3021:6;3003:45;:::i;:::-;2995:53;2834:220;-1:-1:-1;;;2834:220:16:o;3059:1078::-;3180:6;3188;3196;3204;3212;3220;3228;3281:3;3269:9;3260:7;3256:23;3252:33;3249:53;;;3298:1;3295;3288:12;3249:53;3334:9;3321:23;3311:33;;3395:2;3384:9;3380:18;3367:32;3418:18;3459:2;3451:6;3448:14;3445:34;;;3475:1;3472;3465:12;3445:34;3514:59;3565:7;3556:6;3545:9;3541:22;3514:59;:::i;:::-;3592:8;;-1:-1:-1;3488:85:16;-1:-1:-1;3680:2:16;3665:18;;3652:32;;-1:-1:-1;3696:16:16;;;3693:36;;;3725:1;3722;3715:12;3693:36;3764:61;3817:7;3806:8;3795:9;3791:24;3764:61;:::i;:::-;3844:8;;-1:-1:-1;3738:87:16;-1:-1:-1;3932:2:16;3917:18;;3904:32;;-1:-1:-1;3948:16:16;;;3945:36;;;3977:1;3974;3967:12;3945:36;;4016:61;4069:7;4058:8;4047:9;4043:24;4016:61;:::i;:::-;3059:1078;;;;-1:-1:-1;3059:1078:16;;-1:-1:-1;3059:1078:16;;;;3990:87;;-1:-1:-1;;;3059:1078:16:o;4142:184::-;4194:77;4191:1;4184:88;4291:4;4288:1;4281:15;4315:4;4312:1;4305:15;4331:981;4400:6;4453:2;4441:9;4432:7;4428:23;4424:32;4421:52;;;4469:1;4466;4459:12;4421:52;4509:9;4496:23;4538:18;4579:2;4571:6;4568:14;4565:34;;;4595:1;4592;4585:12;4565:34;4633:6;4622:9;4618:22;4608:32;;4678:7;4671:4;4667:2;4663:13;4659:27;4649:55;;4700:1;4697;4690:12;4649:55;4736:2;4723:16;4758:2;4754;4751:10;4748:36;;;4764:18;;:::i;:::-;4898:2;4892:9;4960:4;4952:13;;4803:66;4948:22;;;4972:2;4944:31;4940:40;4928:53;;;4996:18;;;5016:22;;;4993:46;4990:72;;;5042:18;;:::i;:::-;5082:10;5078:2;5071:22;5117:2;5109:6;5102:18;5157:7;5152:2;5147;5143;5139:11;5135:20;5132:33;5129:53;;;5178:1;5175;5168:12;5129:53;5234:2;5229;5225;5221:11;5216:2;5208:6;5204:15;5191:46;5279:1;5257:15;;;5274:2;5253:24;5246:35;;;;-1:-1:-1;5261:6:16;4331:981;-1:-1:-1;;;;;4331:981:16:o;5804:271::-;5987:6;5979;5974:3;5961:33;5943:3;6013:16;;6038:13;;;6013:16;5804:271;-1:-1:-1;5804:271:16:o;6080:326::-;6169:6;6164:3;6157:19;6221:6;6214:5;6207:4;6202:3;6198:14;6185:43;;6273:1;6266:4;6257:6;6252:3;6248:16;6244:27;6237:38;6139:3;6395:4;6325:66;6320:2;6312:6;6308:15;6304:88;6299:3;6295:98;6291:109;6284:116;;6080:326;;;;:::o;6411:844::-;6770:6;6759:9;6752:25;6813:3;6808:2;6797:9;6793:18;6786:31;6733:4;6840:63;6898:3;6887:9;6883:19;6875:6;6867;6840:63;:::i;:::-;6951:9;6943:6;6939:22;6934:2;6923:9;6919:18;6912:50;6985;7028:6;7020;7012;6985:50;:::i;:::-;6971:64;;7071:6;7066:2;7055:9;7051:18;7044:34;7127:9;7119:6;7115:22;7109:3;7098:9;7094:19;7087:51;7155:50;7198:6;7190;7182;7155:50;:::i;:::-;7147:58;;;7242:6;7236:3;7225:9;7221:19;7214:35;6411:844;;;;;;;;;;;;:::o;7260:277::-;7327:6;7380:2;7368:9;7359:7;7355:23;7351:32;7348:52;;;7396:1;7393;7386:12;7348:52;7428:9;7422:16;7481:5;7474:13;7467:21;7460:5;7457:32;7447:60;;7503:1;7500;7493:12;7542:437;7621:1;7617:12;;;;7664;;;7685:61;;7739:4;7731:6;7727:17;7717:27;;7685:61;7792:2;7784:6;7781:14;7761:18;7758:38;7755:218;;7829:77;7826:1;7819:88;7930:4;7927:1;7920:15;7958:4;7955:1;7948:15;7755:218;;7542:437;;;:::o;7984:581::-;8257:6;8246:9;8239:25;8300:3;8295:2;8284:9;8280:18;8273:31;8220:4;8327:63;8385:3;8374:9;8370:19;8362:6;8354;8327:63;:::i;:::-;8438:9;8430:6;8426:22;8421:2;8410:9;8406:18;8399:50;8466;8509:6;8501;8493;8466:50;:::i;:::-;8458:58;;;8552:6;8547:2;8536:9;8532:18;8525:34;7984:581;;;;;;;;;:::o;8570:441::-;8738:4;8767:42;8848:2;8840:6;8836:15;8825:9;8818:34;8900:2;8892:6;8888:15;8883:2;8872:9;8868:18;8861:43;;8940:2;8935;8924:9;8920:18;8913:30;8960:45;9001:2;8990:9;8986:18;8978:6;8960:45;:::i;:::-;8952:53;8570:441;-1:-1:-1;;;;;8570:441:16:o;9016:627::-;9291:2;9280:9;9273:21;9254:4;9317:62;9375:2;9364:9;9360:18;9352:6;9344;9317:62;:::i;:::-;9427:9;9419:6;9415:22;9410:2;9399:9;9395:18;9388:50;9461;9504:6;9496;9488;9461:50;:::i;:::-;9447:64;;9559:9;9551:6;9547:22;9542:2;9531:9;9527:18;9520:50;9587;9630:6;9622;9614;9587:50;:::i;:::-;9579:58;9016:627;-1:-1:-1;;;;;;;;;9016:627:16:o;9648:184::-;9700:77;9697:1;9690:88;9797:4;9794:1;9787:15;9821:4;9818:1;9811:15;9837:1242;9993:4;10022:2;10051;10040:9;10033:21;10092:2;10081:9;10077:18;10151:6;10145:13;10138:21;10131:29;10126:2;10115:9;10111:18;10104:57;10208:2;10200:6;10196:15;10190:22;10231:4;10271:2;10266;10255:9;10251:18;10244:30;10294:6;10329:12;10323:19;10366:6;10358;10351:22;10404:3;10393:9;10389:19;10382:26;;10467:3;10457:6;10454:1;10450:14;10439:9;10435:30;10431:40;10417:54;;10512:2;10498:12;10494:21;10480:35;;10533:1;10543:507;10557:6;10554:1;10551:13;10543:507;;;10622:22;;;10646:66;10618:95;10606:108;;10737:13;;10792:9;;10785:17;10778:25;10763:41;;10845:11;;10839:18;10877:15;;;10870:27;;;10920:50;10954:15;;;10839:18;10920:50;:::i;:::-;10910:60;-1:-1:-1;;10993:15:16;;;;11028:12;;;;10579:1;10572:9;10543:507;;;-1:-1:-1;11067:6:16;;9837:1242;-1:-1:-1;;;;;;;;9837:1242:16:o;11084:430::-;11281:66;11273:6;11269:79;11264:3;11257:92;11239:3;11378:6;11372:13;11394:74;11461:6;11457:1;11452:3;11448:11;11441:4;11433:6;11429:17;11394:74;:::i;:::-;11488:16;;;;11506:1;11484:24;;11084:430;-1:-1:-1;;;11084:430:16:o;11519:822::-;11801:4;11830:42;11911:2;11903:6;11899:15;11888:9;11881:34;11951:3;11946:2;11935:9;11931:18;11924:31;11978:63;12036:3;12025:9;12021:19;12013:6;12005;11978:63;:::i;:::-;12089:9;12081:6;12077:22;12072:2;12061:9;12057:18;12050:50;12123;12166:6;12158;12150;12123:50;:::i;:::-;12109:64;;12221:9;12213:6;12209:22;12204:2;12193:9;12189:18;12182:50;12249:33;12275:6;12267;12249:33;:::i;:::-;12241:41;;;12331:2;12323:6;12319:15;12313:3;12302:9;12298:19;12291:44;;11519:822;;;;;;;;;;:::o;12346:598::-;12609:2;12598:9;12591:21;12572:4;12635:62;12693:2;12682:9;12678:18;12670:6;12662;12635:62;:::i;:::-;12745:9;12737:6;12733:22;12728:2;12717:9;12713:18;12706:50;12779;12822:6;12814;12806;12779:50;:::i;:::-;12765:64;;12877:9;12869:6;12865:22;12860:2;12849:9;12845:18;12838:50;12905:33;12931:6;12923;12905:33;:::i;:::-;12897:41;12346:598;-1:-1:-1;;;;;;;;12346:598:16:o" + }, + "methodIdentifiers": { + "chainName()": "1c93b03a", + "createSmartWallet(string)": "5e8846f6", + "execute(bytes32,string,string,bytes)": "49160658", + "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", + "gasService()": "6a22d8cc", + "gateway()": "116191b6" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"gateway_\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"gasReceiver_\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"chainName_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"CrossChainCallSent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Received\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"wallet\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"owner\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"}],\"name\":\"SmartWalletCreated\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"chainName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"owner\",\"type\":\"string\"}],\"name\":\"createSmartWallet\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasService\",\"outputs\":[{\"internalType\":\"contract IAxelarGasService\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/__tests__/contracts/AgoricProxy.sol\":\"AgoricProxy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":{\"keccak256\":\"0x2a88d046f9cdc664afc7b788d6c5b534d361b46fb45ab7abf721a58dd813359b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ac48adfa686aa78e2474bcb72f49791b631bd5dd15e0991ccd91b9660caacdb\",\"dweb:/ipfs/QmQ7uFDHagPUDq93T4vaeANzLE8J8Ch3jcdTAdNT7kkfEW\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":{\"keccak256\":\"0x7ad77d3af41f342e9032889a7b5aa224ab0c6dfaf9ce9350fe403d4a596c5eae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc2358f1f1138cd742a7cfdfc83420c488c19c3b3e39d703482e124e453953ee\",\"dweb:/ipfs/QmYki4j2yWrixJVs955DyS1ZmLD5zcxe8ss52w6DLBLRi4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xb77ad755f4eade679279d5ca12b6926595e41e17387e143530f4fb57672d58d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b0d01d0810d12dba98839b084440ab9b52e04d94e9431a6ffadabb1651d0f100\",\"dweb:/ipfs/Qme9KLMtbmNvsAj2giGTzNFKAymkMJq88Ef445pLiawKWa\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]},\"src/__tests__/contracts/AgoricProxy.sol\":{\"keccak256\":\"0x1f89b022460ace074827cd232c5ea192b1b3192be4be264cb3563189c921943f\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4fcdc4b827ef417d3e86c44c8b439a877899284d28636d17a8277a810fae54bc\",\"dweb:/ipfs/QmXXx3o6Tkx7T4fFDJRZayFfUMB1FwLuy4dzNHoEJ9HP1j\"]},\"src/__tests__/contracts/Ownable.sol\":{\"keccak256\":\"0xe58b7ff3c99e14494af44e1588a94bba12319b3ee559e5868a5a646036be0f31\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4e57d0fccf76dcdf1ef09a62138bf7810c95d3d721a942af11fd9496b2e58a1e\",\"dweb:/ipfs/QmQYSKgBPHumQ92NfQx4wkxj8rG2EzggNuj2pbBWYexxRo\"]}},\"version\":1}" + }, + "Wallet": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "gateway_", + "type": "address" + }, + { + "internalType": "address", + "name": "gasReceiver_", + "type": "address" + }, + { + "internalType": "string", + "name": "owner_", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "InvalidAddress", + "type": "error" + }, + { + "inputs": [], + "name": "NotApprovedByGateway", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "owner", + "type": "string" + } + ], + "name": "OwnableInvalidOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "account", + "type": "string" + } + ], + "name": "OwnableUnauthorizedAccount", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "executor", + "type": "address" + }, + { + "components": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "result", + "type": "bytes" + } + ], + "indexed": false, + "internalType": "struct CallResult[]", + "name": "results", + "type": "tuple[]" + } + ], + "name": "MulticallExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "string", + "name": "previousOwner", + "type": "string" + }, + { + "indexed": true, + "internalType": "string", + "name": "newOwner", + "type": "string" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "Received", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "tokenSymbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "executeWithToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "gasService", + "outputs": [ + { + "internalType": "contract IAxelarGasService", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "gateway", + "outputs": [ + { + "internalType": "contract IAxelarGateway", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "currentOwner", + "type": "string" + } + ], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "oldOwner", + "type": "string" + }, + { + "internalType": "string", + "name": "newOwner", + "type": "string" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_1599": { + "entryPoint": null, + "id": 1599, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_2005": { + "entryPoint": null, + "id": 2005, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_32": { + "entryPoint": null, + "id": 32, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_transferOwnership_2108": { + "entryPoint": 158, + "id": 2108, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_address_fromMemory": { + "entryPoint": 418, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory": { + "entryPoint": 507, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 1078, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_dataslot_string_storage": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_string_storage": { + "entryPoint": 791, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 874, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 469, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 731, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x41": { + "entryPoint": 447, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:4535:16", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:16", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "74:117:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "84:22:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "99:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "93:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "93:13:16" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "84:5:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "169:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "178:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "181:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "171:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "171:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "171:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "128:5:16" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "139:5:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "154:3:16", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "159:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "150:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "150:11:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "163:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "146:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "146:19:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "135:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "135:31:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "125:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "125:42:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "118:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "118:50:16" + }, + "nodeType": "YulIf", + "src": "115:70:16" + } + ] + }, + "name": "abi_decode_address_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "53:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "64:5:16", + "type": "" + } + ], + "src": "14:177:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "228:95:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "245:1:16", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "252:3:16", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "257:10:16", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "248:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "248:20:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "238:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "238:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "238:31:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "285:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "288:4:16", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "278:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "278:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "278:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "309:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "312:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "302:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "302:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "302:15:16" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "196:127:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "394:184:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "404:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "413:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "408:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "473:63:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "498:3:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "503:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "494:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "494:11:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "517:3:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "522:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "513:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "513:11:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "507:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "507:18:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "487:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "487:39:16" + }, + "nodeType": "YulExpressionStatement", + "src": "487:39:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "434:1:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "437:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "431:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "431:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "445:19:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "447:15:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "456:1:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "459:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "452:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "452:10:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "447:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "427:3:16", + "statements": [] + }, + "src": "423:113:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "556:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "561:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "552:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "552:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "570:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "545:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "545:27:16" + }, + "nodeType": "YulExpressionStatement", + "src": "545:27:16" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "372:3:16", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "377:3:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "382:6:16", + "type": "" + } + ], + "src": "328:250:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "708:942:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "754:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "763:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "766:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "756:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "756:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "756:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "729:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "738:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "725:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "725:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "750:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "721:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "721:32:16" + }, + "nodeType": "YulIf", + "src": "718:52:16" + }, + { + "nodeType": "YulAssignment", + "src": "779:50:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "819:9:16" + } + ], + "functionName": { + "name": "abi_decode_address_fromMemory", + "nodeType": "YulIdentifier", + "src": "789:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "789:40:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "779:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "838:59:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "882:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "893:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "878:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "878:18:16" + } + ], + "functionName": { + "name": "abi_decode_address_fromMemory", + "nodeType": "YulIdentifier", + "src": "848:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "848:49:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "838:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "906:39:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "930:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "941:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "926:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "926:18:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "920:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "920:25:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "910:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "954:28:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "972:2:16", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "976:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "968:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "968:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "980:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "964:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "964:18:16" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "958:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1009:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1018:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1021:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1011:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1011:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1011:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "997:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1005:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "994:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "994:14:16" + }, + "nodeType": "YulIf", + "src": "991:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1034:32:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1048:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1059:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1044:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1044:22:16" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "1038:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1114:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1123:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1126:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1116:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1116:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1116:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1093:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1097:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1089:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1089:13:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1104:7:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "1085:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1085:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1078:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1078:35:16" + }, + "nodeType": "YulIf", + "src": "1075:55:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1139:19:16", + "value": { + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1155:2:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1149:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "1149:9:16" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "1143:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1181:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "1183:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "1183:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1183:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1173:2:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1177:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1170:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1170:10:16" + }, + "nodeType": "YulIf", + "src": "1167:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1212:17:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1226:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "1222:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1222:7:16" + }, + "variables": [ + { + "name": "_4", + "nodeType": "YulTypedName", + "src": "1216:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1238:23:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1258:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1252:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "1252:9:16" + }, + "variables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "1242:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1270:71:16", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1292:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1316:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1320:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1312:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1312:13:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1327:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1308:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1308:22:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1332:2:16", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1304:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1304:31:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1337:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1300:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1300:40:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1288:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1288:53:16" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "1274:10:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1400:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "1402:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "1402:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1402:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "1359:10:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1371:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1356:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1356:18:16" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "1379:10:16" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1391:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1376:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1376:22:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "1353:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1353:46:16" + }, + "nodeType": "YulIf", + "src": "1350:72:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1438:2:16", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "1442:10:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1431:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1431:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1431:22:16" + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1469:6:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1477:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1462:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1462:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1462:18:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1526:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1535:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1538:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1528:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1528:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1528:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1503:2:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1507:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1499:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1499:11:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1512:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1495:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1495:20:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1517:7:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1492:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1492:33:16" + }, + "nodeType": "YulIf", + "src": "1489:53:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1590:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1594:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1586:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1586:11:16" + }, + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1603:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1611:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1599:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1599:15:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1616:2:16" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulIdentifier", + "src": "1551:34:16" + }, + "nodeType": "YulFunctionCall", + "src": "1551:68:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1551:68:16" + }, + { + "nodeType": "YulAssignment", + "src": "1628:16:16", + "value": { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1638:6:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "1628:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "658:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "669:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "681:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "689:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "697:6:16", + "type": "" + } + ], + "src": "583:1067:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1710:325:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1720:22:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1734:1:16", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1737:4:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "1730:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1730:12:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1720:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1751:38:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1781:4:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1787:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1777:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1777:12:16" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "1755:18:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1828:31:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1830:27:16", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1844:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1852:4:16", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1840:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1840:17:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1830:6:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "1808:18:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1801:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1801:26:16" + }, + "nodeType": "YulIf", + "src": "1798:61:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1918:111:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1939:1:16", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1946:3:16", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1951:10:16", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1942:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1942:20:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1932:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1932:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1932:31:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1983:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1986:4:16", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1976:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1976:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1976:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2011:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2014:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2004:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2004:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2004:15:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "1874:18:16" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1897:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1905:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1894:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1894:14:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "1871:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1871:38:16" + }, + "nodeType": "YulIf", + "src": "1868:161:16" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "1690:4:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1699:6:16", + "type": "" + } + ], + "src": "1655:380:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2096:65:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2113:1:16", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "2116:3:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2106:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2106:14:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2106:14:16" + }, + { + "nodeType": "YulAssignment", + "src": "2129:26:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2147:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2150:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "2137:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "2137:18:16" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2129:4:16" + } + ] + } + ] + }, + "name": "array_dataslot_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "2079:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "2087:4:16", + "type": "" + } + ], + "src": "2040:121:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2247:464:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2280:425:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2294:11:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2304:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "2298:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2325:2:16" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "2329:5:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2318:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2318:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2318:17:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2348:31:16", + "value": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2370:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2374:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "2360:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "2360:19:16" + }, + "variables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "2352:4:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2392:57:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2415:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2425:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "2432:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2444:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2428:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2428:19:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2421:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2421:27:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2411:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2411:38:16" + }, + "variables": [ + { + "name": "deleteStart", + "nodeType": "YulTypedName", + "src": "2396:11:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2486:23:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2488:19:16", + "value": { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2503:4:16" + }, + "variableNames": [ + { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "2488:11:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "2468:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2480:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2465:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2465:20:16" + }, + "nodeType": "YulIf", + "src": "2462:47:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2522:41:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2536:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2546:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2553:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2558:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2549:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2549:12:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2542:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2542:20:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2532:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2532:31:16" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "2526:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2576:24:16", + "value": { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "2589:11:16" + }, + "variables": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "2580:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2674:21:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2683:5:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2690:2:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2676:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2676:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2676:17:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2624:5:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "2631:2:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2621:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2621:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "2635:26:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2637:22:16", + "value": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2650:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2657:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2646:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2646:13:16" + }, + "variableNames": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2637:5:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "2617:3:16", + "statements": [] + }, + "src": "2613:82:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2263:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2268:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2260:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2260:11:16" + }, + "nodeType": "YulIf", + "src": "2257:448:16" + } + ] + }, + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "2219:5:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "2226:3:16", + "type": "" + }, + { + "name": "startIndex", + "nodeType": "YulTypedName", + "src": "2231:10:16", + "type": "" + } + ], + "src": "2166:545:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2801:81:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2811:65:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2826:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2844:1:16", + "type": "", + "value": "3" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2847:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2840:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2840:11:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2857:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2853:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2853:6:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2836:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2836:24:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2832:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2832:29:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2822:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2822:40:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2868:1:16", + "type": "", + "value": "1" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2871:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2864:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2864:11:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "2819:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2819:57:16" + }, + "variableNames": [ + { + "name": "used", + "nodeType": "YulIdentifier", + "src": "2811:4:16" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "2778:4:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "2784:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nodeType": "YulTypedName", + "src": "2792:4:16", + "type": "" + } + ], + "src": "2716:166:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2983:1256:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2993:24:16", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "3013:3:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3007:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3007:10:16" + }, + "variables": [ + { + "name": "newLen", + "nodeType": "YulTypedName", + "src": "2997:6:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3060:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "3062:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "3062:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3062:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3032:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3048:2:16", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3052:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3044:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3044:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3056:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3040:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3040:18:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3029:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3029:30:16" + }, + "nodeType": "YulIf", + "src": "3026:56:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3135:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3173:4:16" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "3167:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3167:11:16" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "3141:25:16" + }, + "nodeType": "YulFunctionCall", + "src": "3141:38:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3181:6:16" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulIdentifier", + "src": "3091:43:16" + }, + "nodeType": "YulFunctionCall", + "src": "3091:97:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3091:97:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3197:18:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3214:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nodeType": "YulTypedName", + "src": "3201:9:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3224:23:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3243:4:16", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "srcOffset_1", + "nodeType": "YulTypedName", + "src": "3228:11:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3256:24:16", + "value": { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "3269:11:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3256:9:16" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3326:656:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3340:35:16", + "value": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3359:6:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3371:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3367:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3367:7:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3355:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3355:20:16" + }, + "variables": [ + { + "name": "loopEnd", + "nodeType": "YulTypedName", + "src": "3344:7:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3388:49:16", + "value": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3432:4:16" + } + ], + "functionName": { + "name": "array_dataslot_string_storage", + "nodeType": "YulIdentifier", + "src": "3402:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "3402:35:16" + }, + "variables": [ + { + "name": "dstPtr", + "nodeType": "YulTypedName", + "src": "3392:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3450:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3459:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "3454:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3537:172:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3562:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "3580:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3585:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3576:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3576:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3570:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3570:26:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "3555:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3555:42:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3555:42:16" + }, + { + "nodeType": "YulAssignment", + "src": "3614:24:16", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3628:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3636:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3624:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3624:14:16" + }, + "variableNames": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3614:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3655:40:16", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3672:9:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "3683:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3668:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3668:27:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3655:9:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "3484:1:16" + }, + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "3487:7:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "3481:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3481:14:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "3496:28:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3498:24:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "3507:1:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "3510:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3503:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3503:19:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "3498:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "3477:3:16", + "statements": [] + }, + "src": "3473:236:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3757:166:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3775:43:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "3802:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3807:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3798:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3798:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3792:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3792:26:16" + }, + "variables": [ + { + "name": "lastValue", + "nodeType": "YulTypedName", + "src": "3779:9:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3842:6:16" + }, + { + "arguments": [ + { + "name": "lastValue", + "nodeType": "YulIdentifier", + "src": "3854:9:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3881:1:16", + "type": "", + "value": "3" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3884:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3877:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3877:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3893:3:16", + "type": "", + "value": "248" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3873:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3873:24:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3903:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3899:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3899:6:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "3869:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3869:37:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3865:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3865:42:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3850:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3850:58:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "3835:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3835:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3835:74:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "3728:7:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3737:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "3725:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3725:19:16" + }, + "nodeType": "YulIf", + "src": "3722:201:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3943:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3957:1:16", + "type": "", + "value": "1" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3960:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3953:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3953:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3969:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3949:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3949:22:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "3936:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3936:36:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3936:36:16" + } + ] + }, + "nodeType": "YulCase", + "src": "3319:663:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3324:1:16", + "type": "", + "value": "1" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3999:234:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "4013:14:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4026:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4017:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4062:67:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "4080:35:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "4099:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "4104:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4095:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4095:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "4089:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "4089:26:16" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4080:5:16" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "4043:6:16" + }, + "nodeType": "YulIf", + "src": "4040:89:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "4149:4:16" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4208:5:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "4215:6:16" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulIdentifier", + "src": "4155:52:16" + }, + "nodeType": "YulFunctionCall", + "src": "4155:67:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "4142:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4142:81:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4142:81:16" + } + ] + }, + "nodeType": "YulCase", + "src": "3991:242:16", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3299:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3307:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3296:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3296:14:16" + }, + "nodeType": "YulSwitch", + "src": "3289:944:16" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nodeType": "YulTypedName", + "src": "2968:4:16", + "type": "" + }, + { + "name": "src", + "nodeType": "YulTypedName", + "src": "2974:3:16", + "type": "" + } + ], + "src": "2887:1352:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4383:150:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "4393:27:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4413:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "4407:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "4407:13:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "4397:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4468:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4476:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4464:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4464:17:16" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4483:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4488:6:16" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulIdentifier", + "src": "4429:34:16" + }, + "nodeType": "YulFunctionCall", + "src": "4429:66:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4429:66:16" + }, + { + "nodeType": "YulAssignment", + "src": "4504:23:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4515:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4520:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4511:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4511:16:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "4504:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4359:3:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4364:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "4375:3:16", + "type": "" + } + ], + "src": "4244:289:16" + } + ] + }, + "contents": "{\n { }\n function abi_decode_address_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := abi_decode_address_fromMemory(headStart)\n value1 := abi_decode_address_fromMemory(add(headStart, 32))\n let offset := mload(add(headStart, 64))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let _3 := mload(_2)\n if gt(_3, _1) { panic_error_0x41() }\n let _4 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_3, 0x1f), _4), 63), _4))\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _3)\n if gt(add(add(_2, _3), 32), dataEnd) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(_2, 32), add(memPtr, 32), _3)\n value2 := memPtr\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n}", + "id": 16, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "60a06040523480156200001157600080fd5b50604051620017be380380620017be8339810160408190526200003491620001fb565b80836001600160a01b0381166200005e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b031660805262000075816200009e565b5050600180546001600160a01b0319166001600160a01b03929092169190911790555062000454565b6000808054620000ae90620002db565b80601f0160208091040260200160405190810160405280929190818152602001828054620000dc90620002db565b80156200012d5780601f1062000101576101008083540402835291602001916200012d565b820191906000526020600020905b8154815290600101906020018083116200010f57829003601f168201915b5050505050905081600090816200014591906200036a565b508160405162000156919062000436565b6040518091039020816040516200016e919062000436565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b80516001600160a01b0381168114620001ba57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620001f2578181015183820152602001620001d8565b50506000910152565b6000806000606084860312156200021157600080fd5b6200021c84620001a2565b92506200022c60208501620001a2565b60408501519092506001600160401b03808211156200024a57600080fd5b818601915086601f8301126200025f57600080fd5b815181811115620002745762000274620001bf565b604051601f8201601f19908116603f011681019083821181831017156200029f576200029f620001bf565b81604052828152896020848701011115620002b957600080fd5b620002cc836020830160208801620001d5565b80955050505050509250925092565b600181811c90821680620002f057607f821691505b6020821081036200031157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200036557600081815260208120601f850160051c81016020861015620003405750805b601f850160051c820191505b8181101562000361578281556001016200034c565b5050505b505050565b81516001600160401b03811115620003865762000386620001bf565b6200039e81620003978454620002db565b8462000317565b602080601f831160018114620003d65760008415620003bd5750858301515b600019600386901b1c1916600185901b17855562000361565b600085815260208120601f198616915b828110156200040757888601518255948401946001909101908401620003e6565b5085821015620004265787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082516200044a818460208701620001d5565b9190910192915050565b6080516113416200047d6000396000818160f50152818161026901526103ef01526113416000f3fe6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033", + "opcodes": "PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x17BE CODESIZE SUB DUP1 PUSH3 0x17BE DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0x1FB JUMP JUMPDEST DUP1 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5E JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x80 MSTORE PUSH3 0x75 DUP2 PUSH3 0x9E JUMP JUMPDEST POP POP PUSH1 0x1 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE POP PUSH3 0x454 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH3 0xAE SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0xDC SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 ISZERO PUSH3 0x12D JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x101 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x12D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x10F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH3 0x145 SWAP2 SWAP1 PUSH3 0x36A JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH3 0x156 SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH3 0x16E SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0x1BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0x1F2 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0x1D8 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0x211 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x21C DUP5 PUSH3 0x1A2 JUMP JUMPDEST SWAP3 POP PUSH3 0x22C PUSH1 0x20 DUP6 ADD PUSH3 0x1A2 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x24A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP7 ADD SWAP2 POP DUP7 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x25F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x274 JUMPI PUSH3 0x274 PUSH3 0x1BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x29F JUMPI PUSH3 0x29F PUSH3 0x1BF JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP10 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x2B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x2CC DUP4 PUSH1 0x20 DUP4 ADD PUSH1 0x20 DUP9 ADD PUSH3 0x1D5 JUMP JUMPDEST DUP1 SWAP6 POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x2F0 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x311 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x365 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x340 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x361 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x34C JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x386 JUMPI PUSH3 0x386 PUSH3 0x1BF JUMP JUMPDEST PUSH3 0x39E DUP2 PUSH3 0x397 DUP5 SLOAD PUSH3 0x2DB JUMP JUMPDEST DUP5 PUSH3 0x317 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x3D6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x3BD JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x361 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x407 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x3E6 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x426 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH3 0x44A DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH3 0x1D5 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH2 0x1341 PUSH3 0x47D PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0xF5 ADD MSTORE DUP2 DUP2 PUSH2 0x269 ADD MSTORE PUSH2 0x3EF ADD MSTORE PUSH2 0x1341 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x74 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x183 JUMPI DUP1 PUSH4 0x4FDB7F44 EQ PUSH2 0x1A3 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x1C3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F0 JUMPI PUSH2 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0xE3 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x141 JUMPI DUP1 PUSH4 0x268CA07E EQ PUSH2 0x163 JUMPI PUSH2 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH2 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH2 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x117 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x14D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x15C CALLDATASIZE PUSH1 0x4 PUSH2 0x9EB JUMP JUMPDEST PUSH2 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x16F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x17E CALLDATASIZE PUSH1 0x4 PUSH2 0xAC5 JUMP JUMPDEST PUSH2 0x345 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x19E CALLDATASIZE PUSH1 0x4 PUSH2 0xB31 JUMP JUMPDEST PUSH2 0x398 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x1BE CALLDATASIZE PUSH1 0x4 PUSH2 0xBD5 JUMP JUMPDEST PUSH2 0x4BF JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1CF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 SLOAD PUSH2 0x117 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH2 0x541 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x138 SWAP2 SWAP1 PUSH2 0xC85 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x224 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x2AE SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xCF8 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F1 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x338 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 PUSH2 0x5D3 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x351 DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x390 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH2 0x658 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AA SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x42E SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0xD79 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x44D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x4A7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4B5 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x74E JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH2 0x4CB DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x53B PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x527 SWAP1 PUSH32 0x3078303030303030303030303030303030303030303030303030303030303030 DUP2 MSTORE PUSH32 0x3030303030303030303000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x2A ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x658 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x550 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x57C SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5C9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x59E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5C9 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x5DD DUP6 DUP6 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH2 0x609 PUSH2 0x541 JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x654 JUMPI DUP2 DUP2 PUSH1 0x40 MLOAD PUSH32 0xDE6A3CBF00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64B SWAP3 SWAP2 SWAP1 PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0x666 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x692 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6DF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x6F5 SWAP2 SWAP1 PUSH2 0xEA3 JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH2 0x704 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH2 0x71A SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x75A DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x764 DUP5 DUP5 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x77F DUP4 DUP6 ADD DUP6 PUSH2 0x1051 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79D JUMPI PUSH2 0x79D PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x7E3 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x7BB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0x0 DUP1 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x807 JUMPI PUSH2 0x807 PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x83B JUMPI PUSH2 0x83B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x854 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP7 GAS CALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x891 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x896 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x14 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x436F6E74726163742063616C6C206661696C6564000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x64B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP4 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x92B JUMPI PUSH2 0x92B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x943 SWAP1 PUSH2 0x1218 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x7E9 JUMP JUMPDEST POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FC27C8074EE9BA6D8A94064CDEE28DDCBC36E7B0A4C730262CB845CA06332B2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x992 SWAP2 SWAP1 PUSH2 0x1277 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x9B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x9E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA35 DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA4E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA5A DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA7F DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA5 DUP14 DUP3 DUP15 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xAF3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xAFF DUP9 DUP4 DUP10 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB25 DUP8 DUP3 DUP9 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xB4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xB6B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB77 DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB9C DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xBB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBC2 DUP11 DUP3 DUP12 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xBE8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xBFF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC0B DUP6 DUP3 DUP7 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xC32 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xC1A JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xC53 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xC17 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xC98 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC3B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD12 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xD25 DUP2 DUP10 DUP12 PUSH2 0xCAF JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0xD40 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xC98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD93 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xDA6 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xDCE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0xE07 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xE21 PUSH1 0x20 DUP4 ADD DUP5 DUP7 PUSH2 0xCAF JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0xE9E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0xE7F JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x390 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xE8B JUMP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xEBD JUMPI PUSH2 0xEBD PUSH2 0xE29 JUMP JUMPDEST PUSH2 0xED1 DUP2 PUSH2 0xECB DUP5 SLOAD PUSH2 0xDBA JUMP JUMPDEST DUP5 PUSH2 0xE58 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0xF24 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0xEEE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x390 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0xF71 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0xF52 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0xFAD JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0xFCF DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0xC17 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP1 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0xFFC JUMPI PUSH2 0xFFC PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1049 JUMPI PUSH2 0x1049 PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1064 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x107C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1090 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x10A2 JUMPI PUSH2 0x10A2 PUSH2 0xE29 JUMP JUMPDEST DUP1 PUSH1 0x5 SHL PUSH2 0x10B1 DUP6 DUP3 ADD PUSH2 0x1002 JUMP JUMPDEST SWAP2 DUP3 MSTORE DUP4 DUP2 ADD DUP6 ADD SWAP2 DUP6 DUP2 ADD SWAP1 DUP10 DUP5 GT ISZERO PUSH2 0x10CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP7 ADD SWAP3 POP JUMPDEST DUP4 DUP4 LT ISZERO PUSH2 0x11DC JUMPI DUP3 CALLDATALOAD DUP6 DUP2 GT ISZERO PUSH2 0x10E9 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP7 ADD PUSH1 0x40 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP3 DUP14 SUB DUP2 ADD DUP3 SGT ISZERO PUSH2 0x1120 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST PUSH2 0x1128 PUSH2 0xFD9 JUMP JUMPDEST DUP11 DUP5 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x114F JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP2 MSTORE DUP4 DUP4 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x1163 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP6 ADD SWAP5 POP POP DUP14 PUSH1 0x3F DUP6 ADD SLT PUSH2 0x1179 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP11 DUP5 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x118D JUMPI PUSH2 0x118D PUSH2 0xE29 JUMP JUMPDEST PUSH2 0x119D DUP13 DUP5 PUSH1 0x1F DUP5 ADD AND ADD PUSH2 0x1002 JUMP JUMPDEST SWAP3 POP DUP1 DUP4 MSTORE DUP15 DUP5 DUP3 DUP8 ADD ADD GT ISZERO PUSH2 0x11B4 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP5 DUP7 ADD DUP14 DUP6 ADD CALLDATACOPY PUSH1 0x0 SWAP1 DUP4 ADD DUP13 ADD MSTORE DUP1 DUP12 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MSTORE POP POP SWAP2 DUP7 ADD SWAP2 SWAP1 DUP7 ADD SWAP1 PUSH2 0x10D1 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1270 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12FD JUMPI DUP9 DUP4 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD ISZERO ISZERO DUP5 MSTORE DUP8 ADD MLOAD DUP8 DUP5 ADD DUP8 SWAP1 MSTORE PUSH2 0x12EA DUP8 DUP6 ADD DUP3 PUSH2 0xC3B JUMP JUMPDEST SWAP6 DUP9 ADD SWAP6 SWAP4 POP POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x129E JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB0 DUP16 NOT 0xB2 PUSH29 0x5B96E2196BCC61C4069DC8FAC27E30816AC61FF2278165FDDA761B6473 PUSH16 0x6C634300081400330000000000000000 ", + "sourceMap": "835:1734:13:-:0;;;1066:208;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1205:6;1187:8;-1:-1:-1;;;;;342:22:0;;338:51;;373:16;;-1:-1:-1;;;373:16:0;;;;;;;;;;;338:51;-1:-1:-1;;;;;400:34:0;;;1347:32:14;1366:12;1347:18;:32::i;:::-;-1:-1:-1;;1223:10:13::2;:44:::0;;-1:-1:-1;;;;;;1223:44:13::2;-1:-1:-1::0;;;;;1223:44:13;;;::::2;::::0;;;::::2;::::0;;-1:-1:-1;835:1734:13;;3268:199:14;3347:22;3372:6;3347:31;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3397:8;3388:6;:17;;;;;;:::i;:::-;;3451:8;3420:40;;;;;;:::i;:::-;;;;;;;;3441:8;3420:40;;;;;;:::i;:::-;;;;;;;;;;;;;;;3337:130;3268:199;:::o;14:177:16:-;93:13;;-1:-1:-1;;;;;135:31:16;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:127::-;257:10;252:3;248:20;245:1;238:31;288:4;285:1;278:15;312:4;309:1;302:15;328:250;413:1;423:113;437:6;434:1;431:13;423:113;;;513:11;;;507:18;494:11;;;487:39;459:2;452:10;423:113;;;-1:-1:-1;;570:1:16;552:16;;545:27;328:250::o;583:1067::-;681:6;689;697;750:2;738:9;729:7;725:23;721:32;718:52;;;766:1;763;756:12;718:52;789:40;819:9;789:40;:::i;:::-;779:50;;848:49;893:2;882:9;878:18;848:49;:::i;:::-;941:2;926:18;;920:25;838:59;;-1:-1:-1;;;;;;994:14:16;;;991:34;;;1021:1;1018;1011:12;991:34;1059:6;1048:9;1044:22;1034:32;;1104:7;1097:4;1093:2;1089:13;1085:27;1075:55;;1126:1;1123;1116:12;1075:55;1155:2;1149:9;1177:2;1173;1170:10;1167:36;;;1183:18;;:::i;:::-;1258:2;1252:9;1226:2;1312:13;;-1:-1:-1;;1308:22:16;;;1332:2;1304:31;1300:40;1288:53;;;1356:18;;;1376:22;;;1353:46;1350:72;;;1402:18;;:::i;:::-;1442:10;1438:2;1431:22;1477:2;1469:6;1462:18;1517:7;1512:2;1507;1503;1499:11;1495:20;1492:33;1489:53;;;1538:1;1535;1528:12;1489:53;1551:68;1616:2;1611;1603:6;1599:15;1594:2;1590;1586:11;1551:68;:::i;:::-;1638:6;1628:16;;;;;;;583:1067;;;;;:::o;1655:380::-;1734:1;1730:12;;;;1777;;;1798:61;;1852:4;1844:6;1840:17;1830:27;;1798:61;1905:2;1897:6;1894:14;1874:18;1871:38;1868:161;;1951:10;1946:3;1942:20;1939:1;1932:31;1986:4;1983:1;1976:15;2014:4;2011:1;2004:15;1868:161;;1655:380;;;:::o;2166:545::-;2268:2;2263:3;2260:11;2257:448;;;2304:1;2329:5;2325:2;2318:17;2374:4;2370:2;2360:19;2444:2;2432:10;2428:19;2425:1;2421:27;2415:4;2411:38;2480:4;2468:10;2465:20;2462:47;;;-1:-1:-1;2503:4:16;2462:47;2558:2;2553:3;2549:12;2546:1;2542:20;2536:4;2532:31;2522:41;;2613:82;2631:2;2624:5;2621:13;2613:82;;;2676:17;;;2657:1;2646:13;2613:82;;;2617:3;;;2257:448;2166:545;;;:::o;2887:1352::-;3007:10;;-1:-1:-1;;;;;3029:30:16;;3026:56;;;3062:18;;:::i;:::-;3091:97;3181:6;3141:38;3173:4;3167:11;3141:38;:::i;:::-;3135:4;3091:97;:::i;:::-;3243:4;;3307:2;3296:14;;3324:1;3319:663;;;;4026:1;4043:6;4040:89;;;-1:-1:-1;4095:19:16;;;4089:26;4040:89;-1:-1:-1;;2844:1:16;2840:11;;;2836:24;2832:29;2822:40;2868:1;2864:11;;;2819:57;4142:81;;3289:944;;3319:663;2113:1;2106:14;;;2150:4;2137:18;;-1:-1:-1;;3355:20:16;;;3473:236;3487:7;3484:1;3481:14;3473:236;;;3576:19;;;3570:26;3555:42;;3668:27;;;;3636:1;3624:14;;;;3503:19;;3473:236;;;3477:3;3737:6;3728:7;3725:19;3722:201;;;3798:19;;;3792:26;-1:-1:-1;;3881:1:16;3877:14;;;3893:3;3873:24;3869:37;3865:42;3850:58;3835:74;;3722:201;-1:-1:-1;;;;;3969:1:16;3953:14;;;3949:22;3936:36;;-1:-1:-1;2887:1352:16:o;4244:289::-;4375:3;4413:6;4407:13;4429:66;4488:6;4483:3;4476:4;4468:6;4464:17;4429:66;:::i;:::-;4511:16;;;;;4244:289;-1:-1:-1;;4244:289:16:o;:::-;835:1734:13;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_1733": { + "entryPoint": null, + "id": 1733, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_1744": { + "entryPoint": null, + "id": 1744, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_checkOwner_2052": { + "entryPoint": 1513, + "id": 2052, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@_executeWithToken_1722": { + "entryPoint": 1491, + "id": 1722, + "parameterSlots": 9, + "returnSlots": 0 + }, + "@_execute_1703": { + "entryPoint": 1870, + "id": 1703, + "parameterSlots": 6, + "returnSlots": 0 + }, + "@_multicall_1685": { + "entryPoint": 1903, + "id": 1685, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@_transferOwnership_2108": { + "entryPoint": 1624, + "id": 2108, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@executeWithToken_112": { + "entryPoint": 530, + "id": 112, + "parameterSlots": 10, + "returnSlots": 0 + }, + "@execute_68": { + "entryPoint": 920, + "id": 68, + "parameterSlots": 7, + "returnSlots": 0 + }, + "@gasService_1563": { + "entryPoint": null, + "id": 1563, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@gateway_10": { + "entryPoint": null, + "id": 10, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@owner_2025": { + "entryPoint": 1345, + "id": 2025, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@renounceOwnership_2072": { + "entryPoint": 1215, + "id": 2072, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@transferOwnership_2088": { + "entryPoint": 837, + "id": 2088, + "parameterSlots": 4, + "returnSlots": 0 + }, + "abi_decode_string_calldata": { + "entryPoint": 2466, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 4177, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bool_fromMemory": { + "entryPoint": 3415, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr": { + "entryPoint": 2865, + "id": null, + "parameterSlots": 2, + "returnSlots": 7 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256": { + "entryPoint": 2539, + "id": null, + "parameterSlots": 2, + "returnSlots": 10 + }, + "abi_decode_tuple_t_string_calldata_ptr": { + "entryPoint": 3029, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptr": { + "entryPoint": 2757, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_encode_string": { + "entryPoint": 3131, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_string_calldata": { + "entryPoint": 3247, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 3231, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 4029, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 4727, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed": { + "entryPoint": 3449, + "id": null, + "parameterSlots": 7, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed": { + "entryPoint": 3320, + "id": null, + "parameterSlots": 10, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_calldata_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 3597, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 3205, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 4098, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_memory_2466": { + "entryPoint": 4057, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_dataslot_string_storage": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_string_storage": { + "entryPoint": 3672, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 3747, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 3095, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 3514, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "increment_t_uint256": { + "entryPoint": 4632, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x32": { + "entryPoint": 4585, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 3625, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:17260:16", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:16", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "115:76:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "125:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "137:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "148:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "133:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "133:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "125:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "167:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "178:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "160:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "160:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "160:25:16" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "84:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "95:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "106:4:16", + "type": "" + } + ], + "src": "14:177:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "319:125:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "329:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "341:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "352:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "337:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "337:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "329:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "371:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "386:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "394:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "382:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "382:55:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "364:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "364:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "364:74:16" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "288:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "299:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "310:4:16", + "type": "" + } + ], + "src": "196:248:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "522:275:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "571:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "580:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "583:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "573:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "573:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "573:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "550:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "558:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "546:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "546:17:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "565:3:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "542:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "542:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "535:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "535:35:16" + }, + "nodeType": "YulIf", + "src": "532:55:16" + }, + { + "nodeType": "YulAssignment", + "src": "596:30:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "619:6:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "606:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "606:20:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "596:6:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "669:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "678:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "681:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "671:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "671:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "671:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "641:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "649:18:16", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "638:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "638:30:16" + }, + "nodeType": "YulIf", + "src": "635:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "694:29:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "710:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "718:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "706:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "706:17:16" + }, + "variableNames": [ + { + "name": "arrayPos", + "nodeType": "YulIdentifier", + "src": "694:8:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "775:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "784:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "787:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "777:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "777:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "777:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "746:6:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "754:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "742:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "742:19:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "763:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "738:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "738:30:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "770:3:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "735:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "735:39:16" + }, + "nodeType": "YulIf", + "src": "732:59:16" + } + ] + }, + "name": "abi_decode_string_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "485:6:16", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "493:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nodeType": "YulTypedName", + "src": "501:8:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "511:6:16", + "type": "" + } + ], + "src": "449:348:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1036:1203:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1083:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1092:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1095:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1085:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1085:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1085:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1057:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1066:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "1053:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1053:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1078:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "1049:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1049:33:16" + }, + "nodeType": "YulIf", + "src": "1046:53:16" + }, + { + "nodeType": "YulAssignment", + "src": "1108:33:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1131:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1118:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1118:23:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "1108:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1150:46:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1181:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1192:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1177:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1177:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1164:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1164:32:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1154:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1205:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1215:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "1209:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1260:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1269:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1272:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1262:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1262:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1262:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1248:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1256:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1245:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1245:14:16" + }, + "nodeType": "YulIf", + "src": "1242:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1285:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1342:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1353:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1338:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1338:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1362:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1311:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1311:59:16" + }, + "variables": [ + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "1289:8:16", + "type": "" + }, + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "1299:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1379:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "1389:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "1379:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1406:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "1416:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "1406:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1433:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1466:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1477:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1462:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1462:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1449:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1449:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "1437:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1510:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1519:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1522:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1512:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1512:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1512:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "1496:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1506:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1493:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1493:16:16" + }, + "nodeType": "YulIf", + "src": "1490:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1535:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1592:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "1603:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1588:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1588:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1614:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1561:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1561:61:16" + }, + "variables": [ + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "1539:8:16", + "type": "" + }, + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "1549:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1631:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "1641:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "1631:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1658:18:16", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "1668:8:16" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "1658:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1685:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1718:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1729:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1714:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1714:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1701:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1701:32:16" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "1689:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1762:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1771:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1774:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1764:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1764:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1764:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "1748:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1758:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1745:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1745:16:16" + }, + "nodeType": "YulIf", + "src": "1742:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1787:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1844:9:16" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "1855:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1840:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1840:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1866:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1813:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1813:61:16" + }, + "variables": [ + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "1791:8:16", + "type": "" + }, + { + "name": "value6_1", + "nodeType": "YulTypedName", + "src": "1801:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1883:18:16", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "1893:8:16" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "1883:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1910:18:16", + "value": { + "name": "value6_1", + "nodeType": "YulIdentifier", + "src": "1920:8:16" + }, + "variableNames": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "1910:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1937:49:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1970:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1981:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1966:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1966:19:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1953:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1953:33:16" + }, + "variables": [ + { + "name": "offset_3", + "nodeType": "YulTypedName", + "src": "1941:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2015:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2024:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2027:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2017:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2017:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2017:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_3", + "nodeType": "YulIdentifier", + "src": "2001:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2011:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1998:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1998:16:16" + }, + "nodeType": "YulIf", + "src": "1995:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2040:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2097:9:16" + }, + { + "name": "offset_3", + "nodeType": "YulIdentifier", + "src": "2108:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2093:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2093:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2119:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "2066:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "2066:61:16" + }, + "variables": [ + { + "name": "value7_1", + "nodeType": "YulTypedName", + "src": "2044:8:16", + "type": "" + }, + { + "name": "value8_1", + "nodeType": "YulTypedName", + "src": "2054:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2136:18:16", + "value": { + "name": "value7_1", + "nodeType": "YulIdentifier", + "src": "2146:8:16" + }, + "variableNames": [ + { + "name": "value7", + "nodeType": "YulIdentifier", + "src": "2136:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2163:18:16", + "value": { + "name": "value8_1", + "nodeType": "YulIdentifier", + "src": "2173:8:16" + }, + "variableNames": [ + { + "name": "value8", + "nodeType": "YulIdentifier", + "src": "2163:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2190:43:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2217:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2228:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2213:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2213:19:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2200:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2200:33:16" + }, + "variableNames": [ + { + "name": "value9", + "nodeType": "YulIdentifier", + "src": "2190:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "930:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "941:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "953:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "961:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "969:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "977:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "985:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "993:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "1001:6:16", + "type": "" + }, + { + "name": "value7", + "nodeType": "YulTypedName", + "src": "1009:6:16", + "type": "" + }, + { + "name": "value8", + "nodeType": "YulTypedName", + "src": "1017:6:16", + "type": "" + }, + { + "name": "value9", + "nodeType": "YulTypedName", + "src": "1025:6:16", + "type": "" + } + ], + "src": "802:1437:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2371:594:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2417:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2426:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2429:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2419:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2419:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2419:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2392:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2401:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2388:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2388:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2413:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2384:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2384:32:16" + }, + "nodeType": "YulIf", + "src": "2381:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2442:37:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2469:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2456:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2456:23:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2446:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2488:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2498:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "2492:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2543:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2552:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2555:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2545:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2545:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2545:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2531:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2539:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2528:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2528:14:16" + }, + "nodeType": "YulIf", + "src": "2525:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2568:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2625:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2636:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2621:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2621:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2645:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "2594:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "2594:59:16" + }, + "variables": [ + { + "name": "value0_1", + "nodeType": "YulTypedName", + "src": "2572:8:16", + "type": "" + }, + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "2582:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2662:18:16", + "value": { + "name": "value0_1", + "nodeType": "YulIdentifier", + "src": "2672:8:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2662:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2689:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "2699:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "2689:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2716:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2749:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2760:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2745:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2745:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2732:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2732:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "2720:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2793:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2802:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2805:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2795:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2795:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2795:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "2779:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2789:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2776:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2776:16:16" + }, + "nodeType": "YulIf", + "src": "2773:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2818:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2875:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "2886:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2871:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2871:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2897:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "2844:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "2844:61:16" + }, + "variables": [ + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "2822:8:16", + "type": "" + }, + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "2832:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2914:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "2924:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "2914:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2941:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "2951:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "2941:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2313:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2324:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2336:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "2344:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "2352:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "2360:6:16", + "type": "" + } + ], + "src": "2244:721:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3150:898:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3197:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3206:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3209:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3199:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3199:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3199:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3171:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3180:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3167:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3167:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3192:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3163:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3163:33:16" + }, + "nodeType": "YulIf", + "src": "3160:53:16" + }, + { + "nodeType": "YulAssignment", + "src": "3222:33:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3245:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3232:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3232:23:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3222:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3264:46:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3295:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3306:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3291:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3291:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3278:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3278:32:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3268:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3319:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3329:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "3323:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3374:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3383:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3386:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3376:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3376:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3376:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3362:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3370:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3359:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3359:14:16" + }, + "nodeType": "YulIf", + "src": "3356:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3399:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3456:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3467:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3452:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3452:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3476:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "3425:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "3425:59:16" + }, + "variables": [ + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "3403:8:16", + "type": "" + }, + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "3413:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3493:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "3503:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "3493:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3520:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "3530:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "3520:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3547:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3580:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3591:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3576:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3576:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3563:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3563:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "3551:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3624:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3633:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3636:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3626:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3626:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3626:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "3610:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3620:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3607:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3607:16:16" + }, + "nodeType": "YulIf", + "src": "3604:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3649:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3706:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "3717:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3702:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3702:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3728:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "3675:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "3675:61:16" + }, + "variables": [ + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "3653:8:16", + "type": "" + }, + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "3663:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3745:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "3755:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "3745:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3772:18:16", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "3782:8:16" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "3772:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3799:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3832:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3843:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3828:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3828:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3815:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3815:32:16" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "3803:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3876:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3885:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3888:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3878:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3878:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3878:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "3862:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3872:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3859:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3859:16:16" + }, + "nodeType": "YulIf", + "src": "3856:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3901:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3958:9:16" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "3969:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3954:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3954:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3980:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "3927:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "3927:61:16" + }, + "variables": [ + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "3905:8:16", + "type": "" + }, + { + "name": "value6_1", + "nodeType": "YulTypedName", + "src": "3915:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3997:18:16", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "4007:8:16" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "3997:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4024:18:16", + "value": { + "name": "value6_1", + "nodeType": "YulIdentifier", + "src": "4034:8:16" + }, + "variableNames": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "4024:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3068:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "3079:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3091:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "3099:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "3107:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "3115:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "3123:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "3131:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "3139:6:16", + "type": "" + } + ], + "src": "2970:1078:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4143:321:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "4189:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4198:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4201:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4191:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4191:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4191:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4164:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4173:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4160:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4160:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4185:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "4156:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4156:32:16" + }, + "nodeType": "YulIf", + "src": "4153:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4214:37:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4241:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4228:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "4228:23:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "4218:6:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4294:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4303:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4306:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4296:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4296:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4296:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4266:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4274:18:16", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4263:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4263:30:16" + }, + "nodeType": "YulIf", + "src": "4260:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4319:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4376:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4387:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4372:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4372:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4396:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "4345:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "4345:59:16" + }, + "variables": [ + { + "name": "value0_1", + "nodeType": "YulTypedName", + "src": "4323:8:16", + "type": "" + }, + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "4333:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4413:18:16", + "value": { + "name": "value0_1", + "nodeType": "YulIdentifier", + "src": "4423:8:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4413:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4440:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "4450:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "4440:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4101:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "4112:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4124:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "4132:6:16", + "type": "" + } + ], + "src": "4053:411:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4595:125:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "4605:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4617:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4628:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4613:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4613:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "4605:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4647:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4662:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4670:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "4658:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4658:55:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4640:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4640:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4640:74:16" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4564:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4575:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "4586:4:16", + "type": "" + } + ], + "src": "4469:251:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4791:184:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "4801:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4810:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "4805:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4870:63:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "4895:3:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4900:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4891:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4891:11:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "4914:3:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4919:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4910:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4910:11:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "4904:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "4904:18:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4884:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4884:39:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4884:39:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4831:1:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4834:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "4828:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4828:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "4842:19:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "4844:15:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4853:1:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4856:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4849:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4849:10:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4844:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "4824:3:16", + "statements": [] + }, + "src": "4820:113:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "4953:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4958:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4949:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4949:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4967:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4942:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4942:27:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4942:27:16" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "4769:3:16", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "4774:3:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "4779:6:16", + "type": "" + } + ], + "src": "4725:250:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5030:280:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "5040:26:16", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5060:5:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5054:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "5054:12:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "5044:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5082:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5087:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5075:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5075:19:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5075:19:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5142:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5149:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5138:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5138:16:16" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5160:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5165:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5156:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5156:14:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5172:6:16" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulIdentifier", + "src": "5103:34:16" + }, + "nodeType": "YulFunctionCall", + "src": "5103:76:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5103:76:16" + }, + { + "nodeType": "YulAssignment", + "src": "5188:116:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5203:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5216:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5224:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5212:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5212:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5229:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "5208:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5208:88:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5199:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5199:98:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5299:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5195:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5195:109:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "5188:3:16" + } + ] + } + ] + }, + "name": "abi_encode_string", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5007:5:16", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5014:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "5022:3:16", + "type": "" + } + ], + "src": "4980:330:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5436:99:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5453:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5464:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5446:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5446:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5446:21:16" + }, + { + "nodeType": "YulAssignment", + "src": "5476:53:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5502:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5514:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5525:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5510:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5510:18:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "5484:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "5484:45:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5476:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5405:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5416:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5427:4:16", + "type": "" + } + ], + "src": "5315:220:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5687:124:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5710:3:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5715:6:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5723:6:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "5697:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "5697:33:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5697:33:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5739:26:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5753:3:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5758:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5749:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5749:16:16" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "5743:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "5781:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5785:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5774:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5774:13:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5774:13:16" + }, + { + "nodeType": "YulAssignment", + "src": "5796:9:16", + "value": { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "5803:2:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "5796:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5655:3:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "5660:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5668:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "5679:3:16", + "type": "" + } + ], + "src": "5540:271:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5883:259:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5900:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5905:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5893:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5893:19:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5893:19:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5938:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5943:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5934:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5934:14:16" + }, + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "5950:5:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5957:6:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "5921:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "5921:43:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5921:43:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5988:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5993:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5984:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5984:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6002:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5980:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5980:27:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6009:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5973:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5973:38:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5973:38:16" + }, + { + "nodeType": "YulAssignment", + "src": "6020:116:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6035:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6048:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6056:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6044:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6044:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6061:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "6040:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6040:88:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6031:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6031:98:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6131:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6027:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6027:109:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "6020:3:16" + } + ] + } + ] + }, + "name": "abi_encode_string_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "5852:5:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "5859:6:16", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5867:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "5875:3:16", + "type": "" + } + ], + "src": "5816:326:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6478:513:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6495:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6506:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6488:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6488:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6488:25:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6533:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6544:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6529:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6529:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6549:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6522:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6522:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6522:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6562:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6603:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "6611:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6623:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6634:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6619:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6619:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "6576:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "6576:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "6566:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6659:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6670:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6655:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6655:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "6679:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6687:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6675:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6675:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6648:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6648:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6648:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6707:64:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "6748:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "6756:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "6764:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "6721:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "6721:50:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "6711:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6791:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6802:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6787:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6787:18:16" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "6807:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6780:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6780:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6780:34:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6834:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6845:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6830:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6830:19:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "6855:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6863:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6851:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6851:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6823:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6823:51:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6823:51:16" + }, + { + "nodeType": "YulAssignment", + "src": "6883:58:16", + "value": { + "arguments": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "6918:6:16" + }, + { + "name": "value7", + "nodeType": "YulIdentifier", + "src": "6926:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "6934:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "6891:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "6891:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6883:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6961:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6972:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6957:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6957:19:16" + }, + { + "name": "value8", + "nodeType": "YulIdentifier", + "src": "6978:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6950:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6950:35:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6950:35:16" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6383:9:16", + "type": "" + }, + { + "name": "value8", + "nodeType": "YulTypedName", + "src": "6394:6:16", + "type": "" + }, + { + "name": "value7", + "nodeType": "YulTypedName", + "src": "6402:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "6410:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "6418:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "6426:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "6434:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "6442:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6450:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6458:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6469:4:16", + "type": "" + } + ], + "src": "6147:844:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7074:199:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "7120:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7129:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7132:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7122:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7122:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7122:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7095:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7104:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7091:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7091:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7116:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "7087:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7087:32:16" + }, + "nodeType": "YulIf", + "src": "7084:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7145:29:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7164:9:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "7158:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "7158:16:16" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7149:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7227:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7236:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7239:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7229:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7229:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7229:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7196:5:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7217:5:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7210:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7210:13:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7203:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7203:21:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "7193:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "7193:32:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7186:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7186:40:16" + }, + "nodeType": "YulIf", + "src": "7183:60:16" + }, + { + "nodeType": "YulAssignment", + "src": "7252:15:16", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7262:5:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7252:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bool_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7040:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "7051:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7063:6:16", + "type": "" + } + ], + "src": "6996:277:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7523:336:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7540:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7551:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7533:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7533:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7533:25:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7578:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7589:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7574:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7574:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7594:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7567:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7567:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7567:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7607:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "7648:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "7656:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7668:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7679:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7664:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7664:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "7621:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "7621:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "7611:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7704:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7715:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7700:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7700:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "7724:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7732:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7720:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7720:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7693:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7693:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7693:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "7752:58:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "7787:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "7795:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "7803:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "7760:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "7760:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7752:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7830:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7841:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7826:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7826:18:16" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "7846:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7819:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7819:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7819:34:16" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7452:9:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "7463:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "7471:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "7479:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "7487:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "7495:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7503:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7514:4:16", + "type": "" + } + ], + "src": "7278:581:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8056:134:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8073:3:16" + }, + { + "hexValue": "3078303030303030303030303030303030303030303030303030303030303030", + "kind": "string", + "nodeType": "YulLiteral", + "src": "8078:34:16", + "type": "", + "value": "0x000000000000000000000000000000" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8066:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8066:47:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8066:47:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8133:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8138:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8129:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8129:12:16" + }, + { + "hexValue": "30303030303030303030", + "kind": "string", + "nodeType": "YulLiteral", + "src": "8143:12:16", + "type": "", + "value": "0000000000" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8122:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8122:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8122:34:16" + }, + { + "nodeType": "YulAssignment", + "src": "8165:19:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8176:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8181:2:16", + "type": "", + "value": "42" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8172:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8172:12:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "8165:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "8040:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "8048:3:16", + "type": "" + } + ], + "src": "7864:326:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8250:382:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8260:22:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8274:1:16", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "8277:4:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "8270:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8270:12:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8260:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8291:38:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "8321:4:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8327:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8317:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8317:12:16" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "8295:18:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8368:31:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8370:27:16", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8384:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8392:4:16", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8380:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8380:17:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8370:6:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "8348:18:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "8341:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8341:26:16" + }, + "nodeType": "YulIf", + "src": "8338:61:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8458:168:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8479:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8482:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8472:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8472:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8472:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8580:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8583:4:16", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8573:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8573:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8573:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8608:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8611:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "8601:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8601:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8601:15:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "8414:18:16" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8437:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8445:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "8434:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "8434:14:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "8411:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "8411:38:16" + }, + "nodeType": "YulIf", + "src": "8408:218:16" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "8230:4:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "8239:6:16", + "type": "" + } + ], + "src": "8195:437:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8768:116:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8785:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8796:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8778:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8778:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8778:21:16" + }, + { + "nodeType": "YulAssignment", + "src": "8808:70:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8843:6:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "8851:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8863:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8874:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8859:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8859:18:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "8816:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "8816:62:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8808:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_calldata_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8729:9:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "8740:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8748:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8759:4:16", + "type": "" + } + ], + "src": "8637:247:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8921:152:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8938:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8941:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8931:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8931:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8931:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9035:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9038:4:16", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9028:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9028:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9028:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9059:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9062:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "9052:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9052:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9052:15:16" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "8889:184:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9134:65:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9151:1:16", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "9154:3:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9144:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9144:14:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9144:14:16" + }, + { + "nodeType": "YulAssignment", + "src": "9167:26:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9185:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9188:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "9175:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "9175:18:16" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9167:4:16" + } + ] + } + ] + }, + "name": "array_dataslot_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "9117:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "9125:4:16", + "type": "" + } + ], + "src": "9078:121:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9285:464:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9318:425:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9332:11:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9342:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "9336:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "9363:2:16" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "9367:5:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9356:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9356:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9356:17:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9386:31:16", + "value": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "9408:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9412:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "9398:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "9398:19:16" + }, + "variables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "9390:4:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9430:57:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9453:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9463:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "9470:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9482:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9466:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9466:19:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "9459:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9459:27:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9449:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9449:38:16" + }, + "variables": [ + { + "name": "deleteStart", + "nodeType": "YulTypedName", + "src": "9434:11:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9524:23:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9526:19:16", + "value": { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9541:4:16" + }, + "variableNames": [ + { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "9526:11:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "9506:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9518:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "9503:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "9503:20:16" + }, + "nodeType": "YulIf", + "src": "9500:47:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9560:41:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9574:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9584:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "9591:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9596:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9587:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9587:12:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "9580:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9580:20:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9570:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9570:31:16" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "9564:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9614:24:16", + "value": { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "9627:11:16" + }, + "variables": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "9618:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9712:21:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "9721:5:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "9728:2:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "9714:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9714:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9714:17:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "9662:5:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "9669:2:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "9659:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "9659:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "9673:26:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9675:22:16", + "value": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "9688:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9695:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9684:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9684:13:16" + }, + "variableNames": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "9675:5:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "9655:3:16", + "statements": [] + }, + "src": "9651:82:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "9301:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9306:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9298:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "9298:11:16" + }, + "nodeType": "YulIf", + "src": "9295:448:16" + } + ] + }, + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "9257:5:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "9264:3:16", + "type": "" + }, + { + "name": "startIndex", + "nodeType": "YulTypedName", + "src": "9269:10:16", + "type": "" + } + ], + "src": "9204:545:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9839:141:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9849:125:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9864:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9882:1:16", + "type": "", + "value": "3" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "9885:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "9878:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9878:11:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9891:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "9874:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9874:84:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "9870:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9870:89:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "9860:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9860:100:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9966:1:16", + "type": "", + "value": "1" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "9969:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "9962:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9962:11:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "9857:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "9857:117:16" + }, + "variableNames": [ + { + "name": "used", + "nodeType": "YulIdentifier", + "src": "9849:4:16" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "9816:4:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "9822:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nodeType": "YulTypedName", + "src": "9830:4:16", + "type": "" + } + ], + "src": "9754:226:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10081:1375:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10091:24:16", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "10111:3:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10105:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10105:10:16" + }, + "variables": [ + { + "name": "newLen", + "nodeType": "YulTypedName", + "src": "10095:6:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10158:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "10160:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "10160:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10160:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10130:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10138:18:16", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10127:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "10127:30:16" + }, + "nodeType": "YulIf", + "src": "10124:56:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "10233:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "10271:4:16" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "10265:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10265:11:16" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "10239:25:16" + }, + "nodeType": "YulFunctionCall", + "src": "10239:38:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10279:6:16" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulIdentifier", + "src": "10189:43:16" + }, + "nodeType": "YulFunctionCall", + "src": "10189:97:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10189:97:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10295:18:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10312:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nodeType": "YulTypedName", + "src": "10299:9:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10322:23:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10341:4:16", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "srcOffset_1", + "nodeType": "YulTypedName", + "src": "10326:11:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10354:24:16", + "value": { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "10367:11:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10354:9:16" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "10424:775:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10438:94:16", + "value": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10457:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10465:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "10453:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10453:79:16" + }, + "variables": [ + { + "name": "loopEnd", + "nodeType": "YulTypedName", + "src": "10442:7:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10545:49:16", + "value": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "10589:4:16" + } + ], + "functionName": { + "name": "array_dataslot_string_storage", + "nodeType": "YulIdentifier", + "src": "10559:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "10559:35:16" + }, + "variables": [ + { + "name": "dstPtr", + "nodeType": "YulTypedName", + "src": "10549:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10607:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10616:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "10611:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10694:172:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "10719:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "10737:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10742:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10733:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10733:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10727:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10727:26:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "10712:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10712:42:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10712:42:16" + }, + { + "nodeType": "YulAssignment", + "src": "10771:24:16", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "10785:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10793:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10781:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10781:14:16" + }, + "variableNames": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "10771:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10812:40:16", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10829:9:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "10840:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10825:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10825:27:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10812:9:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "10641:1:16" + }, + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "10644:7:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "10638:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "10638:14:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "10653:28:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10655:24:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "10664:1:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "10667:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10660:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10660:19:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "10655:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "10634:3:16", + "statements": [] + }, + "src": "10630:236:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10914:226:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10932:43:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "10959:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10964:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10955:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10955:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10949:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10949:26:16" + }, + "variables": [ + { + "name": "lastValue", + "nodeType": "YulTypedName", + "src": "10936:9:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "10999:6:16" + }, + { + "arguments": [ + { + "name": "lastValue", + "nodeType": "YulIdentifier", + "src": "11011:9:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11038:1:16", + "type": "", + "value": "3" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "11041:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "11034:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11034:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11050:3:16", + "type": "", + "value": "248" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "11030:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11030:24:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11056:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "11026:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11026:97:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "11022:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11022:102:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "11007:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11007:118:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "10992:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10992:134:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10992:134:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "10885:7:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10894:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "10882:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "10882:19:16" + }, + "nodeType": "YulIf", + "src": "10879:261:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "11160:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11174:1:16", + "type": "", + "value": "1" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "11177:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "11170:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11170:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11186:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11166:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11166:22:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "11153:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11153:36:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11153:36:16" + } + ] + }, + "nodeType": "YulCase", + "src": "10417:782:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10422:1:16", + "type": "", + "value": "1" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11216:234:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11230:14:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11243:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11234:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11279:67:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11297:35:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "11316:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "11321:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11312:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11312:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "11306:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "11306:26:16" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11297:5:16" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "11260:6:16" + }, + "nodeType": "YulIf", + "src": "11257:89:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "11366:4:16" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11425:5:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "11432:6:16" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulIdentifier", + "src": "11372:52:16" + }, + "nodeType": "YulFunctionCall", + "src": "11372:67:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "11359:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11359:81:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11359:81:16" + } + ] + }, + "nodeType": "YulCase", + "src": "11208:242:16", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10397:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10405:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10394:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "10394:14:16" + }, + "nodeType": "YulSwitch", + "src": "10387:1063:16" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nodeType": "YulTypedName", + "src": "10066:4:16", + "type": "" + }, + { + "name": "src", + "nodeType": "YulTypedName", + "src": "10072:3:16", + "type": "" + } + ], + "src": "9985:1471:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11600:150:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11610:27:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11630:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "11624:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "11624:13:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "11614:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11685:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11693:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11681:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11681:17:16" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11700:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "11705:6:16" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulIdentifier", + "src": "11646:34:16" + }, + "nodeType": "YulFunctionCall", + "src": "11646:66:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11646:66:16" + }, + { + "nodeType": "YulAssignment", + "src": "11721:23:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11732:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "11737:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11728:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11728:16:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "11721:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "11576:3:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "11581:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "11592:3:16", + "type": "" + } + ], + "src": "11461:289:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11801:211:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11811:21:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11827:4:16", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "11821:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "11821:11:16" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "11811:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11841:35:16", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "11863:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11871:4:16", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11859:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11859:17:16" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "11845:10:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11951:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "11953:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "11953:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11953:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "11894:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11906:18:16", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "11891:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "11891:34:16" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "11930:10:16" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "11942:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "11927:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "11927:22:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "11888:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "11888:62:16" + }, + "nodeType": "YulIf", + "src": "11885:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11989:4:16", + "type": "", + "value": "0x40" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "11995:10:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11982:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11982:24:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11982:24:16" + } + ] + }, + "name": "allocate_memory_2466", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "11790:6:16", + "type": "" + } + ], + "src": "11755:257:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12062:289:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12072:19:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12088:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12082:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "12082:9:16" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "12072:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12100:117:16", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "12122:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "12138:4:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12144:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12134:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12134:13:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12149:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "12130:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12130:86:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12118:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12118:99:16" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "12104:10:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12292:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "12294:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "12294:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12294:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "12235:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12247:18:16", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "12232:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "12232:34:16" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "12271:10:16" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "12283:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "12268:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "12268:22:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "12229:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "12229:62:16" + }, + "nodeType": "YulIf", + "src": "12226:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12330:2:16", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "12334:10:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12323:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12323:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12323:22:16" + } + ] + }, + "name": "allocate_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "12042:4:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "12051:6:16", + "type": "" + } + ], + "src": "12017:334:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12479:2482:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "12489:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12499:2:16", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "12493:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12546:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12555:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12558:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "12548:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12548:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12548:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "12521:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12530:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "12517:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12517:23:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12542:2:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "12513:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12513:32:16" + }, + "nodeType": "YulIf", + "src": "12510:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12571:37:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12598:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "12585:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "12585:23:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "12575:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12617:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12627:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "12621:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12672:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12681:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12684:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "12674:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12674:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12674:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "12660:6:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "12668:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "12657:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "12657:14:16" + }, + "nodeType": "YulIf", + "src": "12654:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12697:32:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12711:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "12722:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12707:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12707:22:16" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "12701:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12777:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12786:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12789:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "12779:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12779:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12779:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "12756:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12760:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12752:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12752:13:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "12767:7:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "12748:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12748:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "12741:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12741:35:16" + }, + "nodeType": "YulIf", + "src": "12738:55:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12802:26:16", + "value": { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "12825:2:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "12812:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "12812:16:16" + }, + "variables": [ + { + "name": "_4", + "nodeType": "YulTypedName", + "src": "12806:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12851:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "12853:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "12853:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12853:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "12843:2:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "12847:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "12840:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "12840:10:16" + }, + "nodeType": "YulIf", + "src": "12837:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12882:20:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12896:1:16", + "type": "", + "value": "5" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "12899:2:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "12892:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12892:10:16" + }, + "variables": [ + { + "name": "_5", + "nodeType": "YulTypedName", + "src": "12886:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12911:39:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "12942:2:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12946:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12938:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12938:11:16" + } + ], + "functionName": { + "name": "allocate_memory", + "nodeType": "YulIdentifier", + "src": "12922:15:16" + }, + "nodeType": "YulFunctionCall", + "src": "12922:28:16" + }, + "variables": [ + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "12915:3:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12959:16:16", + "value": { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "12972:3:16" + }, + "variables": [ + { + "name": "dst_1", + "nodeType": "YulTypedName", + "src": "12963:5:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "12991:3:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "12996:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12984:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12984:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12984:15:16" + }, + { + "nodeType": "YulAssignment", + "src": "13008:19:16", + "value": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "13019:3:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "13024:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13015:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13015:12:16" + }, + "variableNames": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "13008:3:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13036:34:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "13058:2:16" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "13062:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13054:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13054:11:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "13067:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13050:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13050:20:16" + }, + "variables": [ + { + "name": "srcEnd", + "nodeType": "YulTypedName", + "src": "13040:6:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13102:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13111:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13114:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13104:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "13104:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "13104:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "srcEnd", + "nodeType": "YulIdentifier", + "src": "13085:6:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "13093:7:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "13082:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "13082:19:16" + }, + "nodeType": "YulIf", + "src": "13079:39:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13127:22:16", + "value": { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "13142:2:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "13146:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13138:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13138:11:16" + }, + "variables": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "13131:3:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13214:1717:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13228:36:16", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "13260:3:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "13247:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "13247:17:16" + }, + "variables": [ + { + "name": "innerOffset", + "nodeType": "YulTypedName", + "src": "13232:11:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13312:74:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13330:11:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13340:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_6", + "nodeType": "YulTypedName", + "src": "13334:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_6", + "nodeType": "YulIdentifier", + "src": "13365:2:16" + }, + { + "name": "_6", + "nodeType": "YulIdentifier", + "src": "13369:2:16" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13358:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "13358:14:16" + }, + "nodeType": "YulExpressionStatement", + "src": "13358:14:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "innerOffset", + "nodeType": "YulIdentifier", + "src": "13283:11:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "13296:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "13280:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "13280:19:16" + }, + "nodeType": "YulIf", + "src": "13277:109:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13399:30:16", + "value": { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "13413:2:16" + }, + { + "name": "innerOffset", + "nodeType": "YulIdentifier", + "src": "13417:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13409:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13409:20:16" + }, + "variables": [ + { + "name": "_7", + "nodeType": "YulTypedName", + "src": "13403:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13442:14:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13452:4:16", + "type": "", + "value": "0x40" + }, + "variables": [ + { + "name": "_8", + "nodeType": "YulTypedName", + "src": "13446:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13469:76:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13479:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + }, + "variables": [ + { + "name": "_9", + "nodeType": "YulTypedName", + "src": "13473:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13608:77:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13626:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13637:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_10", + "nodeType": "YulTypedName", + "src": "13630:3:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_10", + "nodeType": "YulIdentifier", + "src": "13662:3:16" + }, + { + "name": "_10", + "nodeType": "YulIdentifier", + "src": "13667:3:16" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13655:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "13655:16:16" + }, + "nodeType": "YulExpressionStatement", + "src": "13655:16:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "13573:7:16" + }, + { + "name": "_7", + "nodeType": "YulIdentifier", + "src": "13582:2:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "13569:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13569:16:16" + }, + { + "name": "_9", + "nodeType": "YulIdentifier", + "src": "13587:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13565:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13565:25:16" + }, + { + "name": "_8", + "nodeType": "YulIdentifier", + "src": "13592:2:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "13561:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13561:34:16" + }, + "nodeType": "YulIf", + "src": "13558:127:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13698:35:16", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_memory_2466", + "nodeType": "YulIdentifier", + "src": "13711:20:16" + }, + "nodeType": "YulFunctionCall", + "src": "13711:22:16" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13702:5:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13746:40:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_7", + "nodeType": "YulIdentifier", + "src": "13778:2:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "13782:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13774:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13774:11:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "13761:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "13761:25:16" + }, + "variables": [ + { + "name": "value_1", + "nodeType": "YulTypedName", + "src": "13750:7:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13892:77:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13910:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13921:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_11", + "nodeType": "YulTypedName", + "src": "13914:3:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_11", + "nodeType": "YulIdentifier", + "src": "13946:3:16" + }, + { + "name": "_11", + "nodeType": "YulIdentifier", + "src": "13951:3:16" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13939:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "13939:16:16" + }, + "nodeType": "YulExpressionStatement", + "src": "13939:16:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value_1", + "nodeType": "YulIdentifier", + "src": "13812:7:16" + }, + { + "arguments": [ + { + "name": "value_1", + "nodeType": "YulIdentifier", + "src": "13825:7:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13834:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "13821:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13821:56:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "13809:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "13809:69:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "13802:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "13802:77:16" + }, + "nodeType": "YulIf", + "src": "13799:170:16" + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13989:5:16" + }, + { + "name": "value_1", + "nodeType": "YulIdentifier", + "src": "13996:7:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13982:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "13982:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "13982:22:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "14017:41:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_7", + "nodeType": "YulIdentifier", + "src": "14050:2:16" + }, + { + "name": "_8", + "nodeType": "YulIdentifier", + "src": "14054:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14046:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14046:11:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "14033:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "14033:25:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "14021:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14103:77:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "14121:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14132:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_12", + "nodeType": "YulTypedName", + "src": "14125:3:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_12", + "nodeType": "YulIdentifier", + "src": "14157:3:16" + }, + { + "name": "_12", + "nodeType": "YulIdentifier", + "src": "14162:3:16" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "14150:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14150:16:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14150:16:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "14077:8:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "14087:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "14074:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "14074:16:16" + }, + "nodeType": "YulIf", + "src": "14071:109:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "14193:28:16", + "value": { + "arguments": [ + { + "name": "_7", + "nodeType": "YulIdentifier", + "src": "14208:2:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "14212:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14204:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14204:17:16" + }, + "variables": [ + { + "name": "_13", + "nodeType": "YulTypedName", + "src": "14197:3:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14284:77:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "14302:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14313:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_14", + "nodeType": "YulTypedName", + "src": "14306:3:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_14", + "nodeType": "YulIdentifier", + "src": "14338:3:16" + }, + { + "name": "_14", + "nodeType": "YulIdentifier", + "src": "14343:3:16" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "14331:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14331:16:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14331:16:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_13", + "nodeType": "YulIdentifier", + "src": "14252:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14257:2:16", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14248:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14248:12:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "14262:7:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "14244:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14244:26:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "14237:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14237:34:16" + }, + "nodeType": "YulIf", + "src": "14234:127:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "14374:37:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_13", + "nodeType": "YulIdentifier", + "src": "14402:3:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "14407:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14398:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14398:12:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "14385:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "14385:26:16" + }, + "variables": [ + { + "name": "_15", + "nodeType": "YulTypedName", + "src": "14378:3:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14439:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "14441:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "14441:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14441:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "_15", + "nodeType": "YulIdentifier", + "src": "14430:3:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "14435:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "14427:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "14427:11:16" + }, + "nodeType": "YulIf", + "src": "14424:37:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "14474:62:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_15", + "nodeType": "YulIdentifier", + "src": "14515:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14520:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14511:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14511:14:16" + }, + { + "name": "_9", + "nodeType": "YulIdentifier", + "src": "14527:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "14507:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14507:23:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "14532:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14503:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14503:32:16" + } + ], + "functionName": { + "name": "allocate_memory", + "nodeType": "YulIdentifier", + "src": "14487:15:16" + }, + "nodeType": "YulFunctionCall", + "src": "14487:49:16" + }, + "variables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "14478:5:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "14556:5:16" + }, + { + "name": "_15", + "nodeType": "YulIdentifier", + "src": "14563:3:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14549:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14549:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14549:18:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14631:77:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "14649:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14660:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_16", + "nodeType": "YulTypedName", + "src": "14653:3:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_16", + "nodeType": "YulIdentifier", + "src": "14685:3:16" + }, + { + "name": "_16", + "nodeType": "YulIdentifier", + "src": "14690:3:16" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "14678:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14678:16:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14678:16:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_13", + "nodeType": "YulIdentifier", + "src": "14594:3:16" + }, + { + "name": "_15", + "nodeType": "YulIdentifier", + "src": "14599:3:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14590:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14590:13:16" + }, + { + "name": "_8", + "nodeType": "YulIdentifier", + "src": "14605:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14586:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14586:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "14610:7:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "14583:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "14583:35:16" + }, + "nodeType": "YulIf", + "src": "14580:128:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "14738:5:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "14745:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14734:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14734:14:16" + }, + { + "arguments": [ + { + "name": "_13", + "nodeType": "YulIdentifier", + "src": "14754:3:16" + }, + { + "name": "_8", + "nodeType": "YulIdentifier", + "src": "14759:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14750:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14750:12:16" + }, + { + "name": "_15", + "nodeType": "YulIdentifier", + "src": "14764:3:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "14721:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "14721:47:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14721:47:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "14796:5:16" + }, + { + "name": "_15", + "nodeType": "YulIdentifier", + "src": "14803:3:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14792:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14792:15:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "14809:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14788:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14788:24:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14814:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14781:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14781:35:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14781:35:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14840:5:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "14847:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14836:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14836:14:16" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "14852:5:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14829:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14829:29:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14829:29:16" + }, + { + "expression": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "14878:3:16" + }, + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14883:5:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14871:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14871:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14871:18:16" + }, + { + "nodeType": "YulAssignment", + "src": "14902:19:16", + "value": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "14913:3:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "14918:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14909:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14909:12:16" + }, + "variableNames": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "14902:3:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "13169:3:16" + }, + { + "name": "srcEnd", + "nodeType": "YulIdentifier", + "src": "13174:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "13166:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "13166:15:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "13182:23:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13184:19:16", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "13195:3:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "13200:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13191:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13191:12:16" + }, + "variableNames": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "13184:3:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "13162:3:16", + "statements": [] + }, + "src": "13158:1773:16" + }, + { + "nodeType": "YulAssignment", + "src": "14940:15:16", + "value": { + "name": "dst_1", + "nodeType": "YulIdentifier", + "src": "14950:5:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "14940:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "12445:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "12456:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "12468:6:16", + "type": "" + } + ], + "src": "12356:2605:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14998:152:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15015:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15018:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15008:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15008:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15008:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15112:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15115:4:16", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15105:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15105:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15105:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15136:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15139:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "15129:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15129:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15129:15:16" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "14966:184:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15292:150:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "15302:27:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "15322:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "15316:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "15316:13:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "15306:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "15377:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15385:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15373:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15373:17:16" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "15392:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "15397:6:16" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulIdentifier", + "src": "15338:34:16" + }, + "nodeType": "YulFunctionCall", + "src": "15338:66:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15338:66:16" + }, + { + "nodeType": "YulAssignment", + "src": "15413:23:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "15424:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "15429:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15420:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15420:16:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "15413:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "15268:3:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "15273:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "15284:3:16", + "type": "" + } + ], + "src": "15155:287:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15621:170:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15638:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15649:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15631:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15631:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15631:21:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15672:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15683:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15668:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15668:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15688:2:16", + "type": "", + "value": "20" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15661:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15661:30:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15661:30:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15711:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15722:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15707:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15707:18:16" + }, + { + "hexValue": "436f6e74726163742063616c6c206661696c6564", + "kind": "string", + "nodeType": "YulLiteral", + "src": "15727:22:16", + "type": "", + "value": "Contract call failed" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15700:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15700:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15700:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "15759:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15771:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15782:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15767:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15767:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "15759:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "15598:9:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "15612:4:16", + "type": "" + } + ], + "src": "15447:344:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15843:302:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "15942:168:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15963:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15966:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15956:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15956:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15956:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16064:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16067:4:16", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16057:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16057:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16057:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16092:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16095:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "16085:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16085:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16085:15:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "15859:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15866:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "15856:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "15856:77:16" + }, + "nodeType": "YulIf", + "src": "15853:257:16" + }, + { + "nodeType": "YulAssignment", + "src": "16119:20:16", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "16130:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16137:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16126:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16126:13:16" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "16119:3:16" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "15825:5:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nodeType": "YulTypedName", + "src": "15835:3:16", + "type": "" + } + ], + "src": "15796:349:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16357:901:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "16367:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16377:2:16", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "16371:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16388:32:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16406:9:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "16417:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16402:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16402:18:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "16392:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16436:9:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "16447:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16429:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16429:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16429:21:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16459:17:16", + "value": { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "16470:6:16" + }, + "variables": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "16463:3:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16485:27:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "16505:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "16499:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "16499:13:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "16489:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "16528:6:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16536:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16521:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16521:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16521:22:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16552:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16562:2:16", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "16556:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "16573:25:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16584:9:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "16595:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16580:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16580:18:16" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16573:3:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16607:53:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16629:9:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16644:1:16", + "type": "", + "value": "5" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16647:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "16640:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16640:14:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16625:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16625:30:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "16657:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16621:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16621:39:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "16611:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16669:29:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "16687:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "16695:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16683:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16683:15:16" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "16673:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16707:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16716:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "16711:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16775:454:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16796:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "16809:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16817:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "16805:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16805:22:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16829:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16801:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16801:95:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16789:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16789:108:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16789:108:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16910:23:16", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "16926:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "16920:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "16920:13:16" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "16914:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "16953:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "16981:2:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "16975:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "16975:9:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "16968:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16968:17:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "16961:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16961:25:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16946:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16946:41:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16946:41:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "17000:38:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "17030:2:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "17034:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17026:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17026:11:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "17020:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "17020:18:16" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "17004:12:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "17062:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "17070:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17058:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17058:15:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "17075:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17051:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "17051:27:16" + }, + "nodeType": "YulExpressionStatement", + "src": "17051:27:16" + }, + { + "nodeType": "YulAssignment", + "src": "17091:58:16", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "17119:12:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "17137:6:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "17145:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17133:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17133:15:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "17101:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "17101:48:16" + }, + "variableNames": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "17091:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "17162:25:16", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "17176:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "17184:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17172:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17172:15:16" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "17162:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "17200:19:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17211:3:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "17216:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17207:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17207:12:16" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17200:3:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16737:1:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16740:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "16734:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "16734:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "16748:18:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "16750:14:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16759:1:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16762:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16755:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16755:9:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16750:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "16730:3:16", + "statements": [] + }, + "src": "16726:503:16" + }, + { + "nodeType": "YulAssignment", + "src": "17238:14:16", + "value": { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "17246:6:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17238:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "16326:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "16337:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "16348:4:16", + "type": "" + } + ], + "src": "16150:1108:16" + } + ] + }, + "contents": "{\n { }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_string_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7, value8, value9\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n let offset_3 := calldataload(add(headStart, 128))\n if gt(offset_3, _1) { revert(0, 0) }\n let value7_1, value8_1 := abi_decode_string_calldata(add(headStart, offset_3), dataEnd)\n value7 := value7_1\n value8 := value8_1\n value9 := calldataload(add(headStart, 160))\n }\n function abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value2 := value2_1\n value3 := value3_1\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n }\n function abi_decode_tuple_t_string_calldata_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n }\n function abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 192)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value6, value7, tail_2)\n mstore(add(headStart, 160), value8)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 128)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 128))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n }\n function abi_encode_tuple_packed_t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"0x000000000000000000000000000000\")\n mstore(add(pos, 32), \"0000000000\")\n end := add(pos, 42)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_string_calldata_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string_calldata(value0, value1, add(headStart, 32))\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function allocate_memory_2466() -> memPtr\n {\n memPtr := mload(0x40)\n let newFreePtr := add(memPtr, 0x40)\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(0x40, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_tuple_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _2 := 0xffffffffffffffff\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := calldataload(_3)\n if gt(_4, _2) { panic_error_0x41() }\n let _5 := shl(5, _4)\n let dst := allocate_memory(add(_5, _1))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, _5), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n let innerOffset := calldataload(src)\n if gt(innerOffset, _2)\n {\n let _6 := 0\n revert(_6, _6)\n }\n let _7 := add(_3, innerOffset)\n let _8 := 0x40\n let _9 := 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0\n if slt(add(sub(dataEnd, _7), _9), _8)\n {\n let _10 := 0\n revert(_10, _10)\n }\n let value := allocate_memory_2466()\n let value_1 := calldataload(add(_7, _1))\n if iszero(eq(value_1, and(value_1, 0xffffffffffffffffffffffffffffffffffffffff)))\n {\n let _11 := 0\n revert(_11, _11)\n }\n mstore(value, value_1)\n let offset_1 := calldataload(add(_7, _8))\n if gt(offset_1, _2)\n {\n let _12 := 0\n revert(_12, _12)\n }\n let _13 := add(_7, offset_1)\n if iszero(slt(add(_13, 63), dataEnd))\n {\n let _14 := 0\n revert(_14, _14)\n }\n let _15 := calldataload(add(_13, _1))\n if gt(_15, _2) { panic_error_0x41() }\n let array := allocate_memory(add(and(add(_15, 0x1f), _9), _1))\n mstore(array, _15)\n if gt(add(add(_13, _15), _8), dataEnd)\n {\n let _16 := 0\n revert(_16, _16)\n }\n calldatacopy(add(array, _1), add(_13, _8), _15)\n mstore(add(add(array, _15), _1), 0)\n mstore(add(value, _1), array)\n mstore(dst, value)\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function panic_error_0x32()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Contract call failed\")\n tail := add(headStart, 96)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, shl(5, length)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0))\n let _3 := mload(srcPtr)\n mstore(tail_2, iszero(iszero(mload(_3))))\n let memberValue0 := mload(add(_3, _1))\n mstore(add(tail_2, _1), _2)\n tail_2 := abi_encode_string(memberValue0, add(tail_2, _2))\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n}", + "id": 16, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": { + "10": [ + { + "length": 32, + "start": 245 + }, + { + "length": 32, + "start": 617 + }, + { + "length": 32, + "start": 1007 + } + ] + }, + "linkReferences": {}, + "object": "6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x74 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x183 JUMPI DUP1 PUSH4 0x4FDB7F44 EQ PUSH2 0x1A3 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x1C3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F0 JUMPI PUSH2 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0xE3 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x141 JUMPI DUP1 PUSH4 0x268CA07E EQ PUSH2 0x163 JUMPI PUSH2 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH2 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH2 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x117 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x14D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x15C CALLDATASIZE PUSH1 0x4 PUSH2 0x9EB JUMP JUMPDEST PUSH2 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x16F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x17E CALLDATASIZE PUSH1 0x4 PUSH2 0xAC5 JUMP JUMPDEST PUSH2 0x345 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x19E CALLDATASIZE PUSH1 0x4 PUSH2 0xB31 JUMP JUMPDEST PUSH2 0x398 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x1BE CALLDATASIZE PUSH1 0x4 PUSH2 0xBD5 JUMP JUMPDEST PUSH2 0x4BF JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1CF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 SLOAD PUSH2 0x117 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH2 0x541 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x138 SWAP2 SWAP1 PUSH2 0xC85 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x224 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x2AE SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xCF8 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F1 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x338 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 PUSH2 0x5D3 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x351 DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x390 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH2 0x658 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AA SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x42E SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0xD79 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x44D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x4A7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4B5 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x74E JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH2 0x4CB DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x53B PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x527 SWAP1 PUSH32 0x3078303030303030303030303030303030303030303030303030303030303030 DUP2 MSTORE PUSH32 0x3030303030303030303000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x2A ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x658 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x550 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x57C SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5C9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x59E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5C9 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x5DD DUP6 DUP6 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH2 0x609 PUSH2 0x541 JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x654 JUMPI DUP2 DUP2 PUSH1 0x40 MLOAD PUSH32 0xDE6A3CBF00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64B SWAP3 SWAP2 SWAP1 PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0x666 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x692 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6DF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x6F5 SWAP2 SWAP1 PUSH2 0xEA3 JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH2 0x704 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH2 0x71A SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x75A DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x764 DUP5 DUP5 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x77F DUP4 DUP6 ADD DUP6 PUSH2 0x1051 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79D JUMPI PUSH2 0x79D PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x7E3 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x7BB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0x0 DUP1 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x807 JUMPI PUSH2 0x807 PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x83B JUMPI PUSH2 0x83B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x854 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP7 GAS CALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x891 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x896 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x14 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x436F6E74726163742063616C6C206661696C6564000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x64B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP4 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x92B JUMPI PUSH2 0x92B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x943 SWAP1 PUSH2 0x1218 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x7E9 JUMP JUMPDEST POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FC27C8074EE9BA6D8A94064CDEE28DDCBC36E7B0A4C730262CB845CA06332B2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x992 SWAP2 SWAP1 PUSH2 0x1277 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x9B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x9E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA35 DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA4E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA5A DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA7F DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA5 DUP14 DUP3 DUP15 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xAF3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xAFF DUP9 DUP4 DUP10 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB25 DUP8 DUP3 DUP9 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xB4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xB6B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB77 DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB9C DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xBB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBC2 DUP11 DUP3 DUP12 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xBE8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xBFF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC0B DUP6 DUP3 DUP7 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xC32 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xC1A JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xC53 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xC17 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xC98 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC3B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD12 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xD25 DUP2 DUP10 DUP12 PUSH2 0xCAF JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0xD40 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xC98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD93 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xDA6 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xDCE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0xE07 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xE21 PUSH1 0x20 DUP4 ADD DUP5 DUP7 PUSH2 0xCAF JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0xE9E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0xE7F JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x390 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xE8B JUMP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xEBD JUMPI PUSH2 0xEBD PUSH2 0xE29 JUMP JUMPDEST PUSH2 0xED1 DUP2 PUSH2 0xECB DUP5 SLOAD PUSH2 0xDBA JUMP JUMPDEST DUP5 PUSH2 0xE58 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0xF24 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0xEEE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x390 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0xF71 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0xF52 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0xFAD JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0xFCF DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0xC17 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP1 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0xFFC JUMPI PUSH2 0xFFC PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1049 JUMPI PUSH2 0x1049 PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1064 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x107C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1090 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x10A2 JUMPI PUSH2 0x10A2 PUSH2 0xE29 JUMP JUMPDEST DUP1 PUSH1 0x5 SHL PUSH2 0x10B1 DUP6 DUP3 ADD PUSH2 0x1002 JUMP JUMPDEST SWAP2 DUP3 MSTORE DUP4 DUP2 ADD DUP6 ADD SWAP2 DUP6 DUP2 ADD SWAP1 DUP10 DUP5 GT ISZERO PUSH2 0x10CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP7 ADD SWAP3 POP JUMPDEST DUP4 DUP4 LT ISZERO PUSH2 0x11DC JUMPI DUP3 CALLDATALOAD DUP6 DUP2 GT ISZERO PUSH2 0x10E9 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP7 ADD PUSH1 0x40 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP3 DUP14 SUB DUP2 ADD DUP3 SGT ISZERO PUSH2 0x1120 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST PUSH2 0x1128 PUSH2 0xFD9 JUMP JUMPDEST DUP11 DUP5 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x114F JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP2 MSTORE DUP4 DUP4 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x1163 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP6 ADD SWAP5 POP POP DUP14 PUSH1 0x3F DUP6 ADD SLT PUSH2 0x1179 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP11 DUP5 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x118D JUMPI PUSH2 0x118D PUSH2 0xE29 JUMP JUMPDEST PUSH2 0x119D DUP13 DUP5 PUSH1 0x1F DUP5 ADD AND ADD PUSH2 0x1002 JUMP JUMPDEST SWAP3 POP DUP1 DUP4 MSTORE DUP15 DUP5 DUP3 DUP8 ADD ADD GT ISZERO PUSH2 0x11B4 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP5 DUP7 ADD DUP14 DUP6 ADD CALLDATACOPY PUSH1 0x0 SWAP1 DUP4 ADD DUP13 ADD MSTORE DUP1 DUP12 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MSTORE POP POP SWAP2 DUP7 ADD SWAP2 SWAP1 DUP7 ADD SWAP1 PUSH2 0x10D1 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1270 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12FD JUMPI DUP9 DUP4 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD ISZERO ISZERO DUP5 MSTORE DUP8 ADD MLOAD DUP8 DUP5 ADD DUP8 SWAP1 MSTORE PUSH2 0x12EA DUP8 DUP6 ADD DUP3 PUSH2 0xC3B JUMP JUMPDEST SWAP6 DUP9 ADD SWAP6 SWAP4 POP POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x129E JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB0 DUP16 NOT 0xB2 PUSH29 0x5B96E2196BCC61C4069DC8FAC27E30816AC61FF2278165FDDA761B6473 PUSH16 0x6C634300081400330000000000000000 ", + "sourceMap": "835:1734:13:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2442:31;;2463:9;160:25:16;;2451:10:13;;2442:31;;148:2:16;133:18;2442:31:13;;;;;;;;835:1734;;2529:31;;2550:9;160:25:16;;2538:10:13;;2529:31;;148:2:16;133:18;2529:31:13;14:177:16;252:39:0;;;;;;;;;;;;;;;;;;394:42:16;382:55;;;364:74;;352:2;337:18;252:39:0;;;;;;;;872:667;;;;;;;;;;-1:-1:-1;872:667:0;;;;;:::i;:::-;;:::i;:::-;;2824:290:14;;;;;;;;;;-1:-1:-1;2824:290:14;;;;;:::i;:::-;;:::i;447:419:0:-;;;;;;;;;;-1:-1:-1;447:419:0;;;;;:::i;:::-;;:::i;2406:269:14:-;;;;;;;;;;-1:-1:-1;2406:269:14;;;;;:::i;:::-;;:::i;886:35:13:-;;;;;;;;;;-1:-1:-1;886:35:13;;;;;;;;1658:91:14;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;872:667:0:-;1119:19;1151:7;;1141:18;;;;;;;:::i;:::-;;;;;;;;;1188:218;;;1141:18;-1:-1:-1;1188:35:0;:7;:35;;;;:218;;1241:9;;1268:11;;;;1297:13;;;;1141:18;;1357:11;;;;1386:6;;1188:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1170:276;;1424:22;;;;;;;;;;;;;;1170:276;1457:75;1475:11;;1488:13;;1503:7;;1512:11;;1525:6;1457:17;:75::i;:::-;1109:430;872:667;;;;;;;;;;:::o;2824:290:14:-;2950:8;;1536:28;1548:15;;1536:11;:28::i;:::-;3079::::1;3098:8;;3079:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;3079:18:14::1;::::0;-1:-1:-1;;;3079:28:14:i:1;:::-;2824:290:::0;;;;;;:::o;447:419:0:-;624:19;656:7;;646:18;;;;;;;:::i;:::-;;;;;;;;;680:80;;;646:18;-1:-1:-1;680:28:0;:7;:28;;;;:80;;709:9;;720:11;;;;733:13;;;;646:18;;680:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;675:128;;781:22;;;;;;;;;;;;;;675:128;814:45;823:11;;836:13;;851:7;;814:8;:45::i;:::-;614:252;447:419;;;;;;;:::o;2406:269:14:-;2502:12;;1536:28;1548:15;;1536:11;:28::i;:::-;2526:142:::1;2582:62;;;;;;8078:34:16::0;8066:47;;8143:12;8138:2;8129:12;;8122:34;8181:2;8172:12;;7864:326;2582:62:14::1;;;;;;;;;;;;;2526:18;:142::i;:::-;2406:269:::0;;;;:::o;1658:91::-;1704:13;1736:6;1729:13;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1658:91;:::o;2122:272:13:-;2368:19;2379:7;;2368:10;:19::i;:::-;;2122:272;;;;;;;;;:::o;1822:249:14:-;1971:15;;1955:33;;;;;;;:::i;:::-;;;;;;;;1942:7;:5;:7::i;:::-;1926:25;;;;;;:62;1922:143;;2038:15;;2011:43;;;;;;;;;;;;:::i;:::-;;;;;;;;1922:143;1822:249;;:::o;3268:199::-;3347:22;3372:6;3347:31;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3397:8;3388:6;:17;;;;;;:::i;:::-;;3451:8;3420:40;;;;;;:::i;:::-;;;;;;;;3441:8;3420:40;;;;;;:::i;:::-;;;;;;;;;;;;;;;3337:130;3268:199;:::o;1901:215:13:-;2065:13;;1536:28:14;1548:15;;1536:11;:28::i;:::-;2090:19:13::1;2101:7;;2090:10;:19::i;:::-;;1901:215:::0;;;;;;;;:::o;1280:615::-;1356:19;1387:25;1415:35;;;;1426:7;1415:35;:::i;:::-;1387:63;;1461:27;1508:5;:12;1491:30;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;1491:30:13;;;;;;;;;;;;;;;;1461:60;;1537:9;1532:279;1556:5;:12;1552:1;:16;1532:279;;;1590:12;1604:19;1627:5;1633:1;1627:8;;;;;;;;:::i;:::-;;;;;;;:15;;;:20;;1665:5;1671:1;1665:8;;;;;;;;:::i;:::-;;;;;;;:13;;;1627:65;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1589:103;;;;1714:7;1706:40;;;;;;;15649:2:16;1706:40:13;;;15631:21:16;15688:2;15668:18;;;15661:30;15727:22;15707:18;;;15700:50;15767:18;;1706:40:13;15447:344:16;1706:40:13;1773:27;;;;;;;;1784:7;1773:27;;;;;;1793:6;1773:27;;;1760:7;1768:1;1760:10;;;;;;;;:::i;:::-;;;;;;:40;;;;1575:236;;1570:3;;;;;:::i;:::-;;;;1532:279;;;;1844:10;1826:38;;;1856:7;1826:38;;;;;;:::i;:::-;;;;;;;;1881:7;1280:615;-1:-1:-1;;;;1280:615:13:o;449:348:16:-;501:8;511:6;565:3;558:4;550:6;546:17;542:27;532:55;;583:1;580;573:12;532:55;-1:-1:-1;606:20:16;;649:18;638:30;;635:50;;;681:1;678;671:12;635:50;718:4;710:6;706:17;694:29;;770:3;763:4;754:6;746;742:19;738:30;735:39;732:59;;;787:1;784;777:12;732:59;449:348;;;;;:::o;802:1437::-;953:6;961;969;977;985;993;1001;1009;1017;1025;1078:3;1066:9;1057:7;1053:23;1049:33;1046:53;;;1095:1;1092;1085:12;1046:53;1131:9;1118:23;1108:33;;1192:2;1181:9;1177:18;1164:32;1215:18;1256:2;1248:6;1245:14;1242:34;;;1272:1;1269;1262:12;1242:34;1311:59;1362:7;1353:6;1342:9;1338:22;1311:59;:::i;:::-;1389:8;;-1:-1:-1;1285:85:16;-1:-1:-1;1477:2:16;1462:18;;1449:32;;-1:-1:-1;1493:16:16;;;1490:36;;;1522:1;1519;1512:12;1490:36;1561:61;1614:7;1603:8;1592:9;1588:24;1561:61;:::i;:::-;1641:8;;-1:-1:-1;1535:87:16;-1:-1:-1;1729:2:16;1714:18;;1701:32;;-1:-1:-1;1745:16:16;;;1742:36;;;1774:1;1771;1764:12;1742:36;1813:61;1866:7;1855:8;1844:9;1840:24;1813:61;:::i;:::-;1893:8;;-1:-1:-1;1787:87:16;-1:-1:-1;1981:3:16;1966:19;;1953:33;;-1:-1:-1;1998:16:16;;;1995:36;;;2027:1;2024;2017:12;1995:36;;2066:61;2119:7;2108:8;2097:9;2093:24;2066:61;:::i;:::-;2040:87;;2146:8;2136:18;;;2173:8;2163:18;;;2228:3;2217:9;2213:19;2200:33;2190:43;;802:1437;;;;;;;;;;;;;:::o;2244:721::-;2336:6;2344;2352;2360;2413:2;2401:9;2392:7;2388:23;2384:32;2381:52;;;2429:1;2426;2419:12;2381:52;2469:9;2456:23;2498:18;2539:2;2531:6;2528:14;2525:34;;;2555:1;2552;2545:12;2525:34;2594:59;2645:7;2636:6;2625:9;2621:22;2594:59;:::i;:::-;2672:8;;-1:-1:-1;2568:85:16;-1:-1:-1;2760:2:16;2745:18;;2732:32;;-1:-1:-1;2776:16:16;;;2773:36;;;2805:1;2802;2795:12;2773:36;;2844:61;2897:7;2886:8;2875:9;2871:24;2844:61;:::i;:::-;2244:721;;;;-1:-1:-1;2924:8:16;-1:-1:-1;;;;2244:721:16:o;2970:1078::-;3091:6;3099;3107;3115;3123;3131;3139;3192:3;3180:9;3171:7;3167:23;3163:33;3160:53;;;3209:1;3206;3199:12;3160:53;3245:9;3232:23;3222:33;;3306:2;3295:9;3291:18;3278:32;3329:18;3370:2;3362:6;3359:14;3356:34;;;3386:1;3383;3376:12;3356:34;3425:59;3476:7;3467:6;3456:9;3452:22;3425:59;:::i;:::-;3503:8;;-1:-1:-1;3399:85:16;-1:-1:-1;3591:2:16;3576:18;;3563:32;;-1:-1:-1;3607:16:16;;;3604:36;;;3636:1;3633;3626:12;3604:36;3675:61;3728:7;3717:8;3706:9;3702:24;3675:61;:::i;:::-;3755:8;;-1:-1:-1;3649:87:16;-1:-1:-1;3843:2:16;3828:18;;3815:32;;-1:-1:-1;3859:16:16;;;3856:36;;;3888:1;3885;3878:12;3856:36;;3927:61;3980:7;3969:8;3958:9;3954:24;3927:61;:::i;:::-;2970:1078;;;;-1:-1:-1;2970:1078:16;;-1:-1:-1;2970:1078:16;;;;3901:87;;-1:-1:-1;;;2970:1078:16:o;4053:411::-;4124:6;4132;4185:2;4173:9;4164:7;4160:23;4156:32;4153:52;;;4201:1;4198;4191:12;4153:52;4241:9;4228:23;4274:18;4266:6;4263:30;4260:50;;;4306:1;4303;4296:12;4260:50;4345:59;4396:7;4387:6;4376:9;4372:22;4345:59;:::i;:::-;4423:8;;4319:85;;-1:-1:-1;4053:411:16;-1:-1:-1;;;;4053:411:16:o;4725:250::-;4810:1;4820:113;4834:6;4831:1;4828:13;4820:113;;;4910:11;;;4904:18;4891:11;;;4884:39;4856:2;4849:10;4820:113;;;-1:-1:-1;;4967:1:16;4949:16;;4942:27;4725:250::o;4980:330::-;5022:3;5060:5;5054:12;5087:6;5082:3;5075:19;5103:76;5172:6;5165:4;5160:3;5156:14;5149:4;5142:5;5138:16;5103:76;:::i;:::-;5224:2;5212:15;5229:66;5208:88;5199:98;;;;5299:4;5195:109;;4980:330;-1:-1:-1;;4980:330:16:o;5315:220::-;5464:2;5453:9;5446:21;5427:4;5484:45;5525:2;5514:9;5510:18;5502:6;5484:45;:::i;:::-;5476:53;5315:220;-1:-1:-1;;;5315:220:16:o;5540:271::-;5723:6;5715;5710:3;5697:33;5679:3;5749:16;;5774:13;;;5749:16;5540:271;-1:-1:-1;5540:271:16:o;5816:326::-;5905:6;5900:3;5893:19;5957:6;5950:5;5943:4;5938:3;5934:14;5921:43;;6009:1;6002:4;5993:6;5988:3;5984:16;5980:27;5973:38;5875:3;6131:4;6061:66;6056:2;6048:6;6044:15;6040:88;6035:3;6031:98;6027:109;6020:116;;5816:326;;;;:::o;6147:844::-;6506:6;6495:9;6488:25;6549:3;6544:2;6533:9;6529:18;6522:31;6469:4;6576:63;6634:3;6623:9;6619:19;6611:6;6603;6576:63;:::i;:::-;6687:9;6679:6;6675:22;6670:2;6659:9;6655:18;6648:50;6721;6764:6;6756;6748;6721:50;:::i;:::-;6707:64;;6807:6;6802:2;6791:9;6787:18;6780:34;6863:9;6855:6;6851:22;6845:3;6834:9;6830:19;6823:51;6891:50;6934:6;6926;6918;6891:50;:::i;:::-;6883:58;;;6978:6;6972:3;6961:9;6957:19;6950:35;6147:844;;;;;;;;;;;;:::o;6996:277::-;7063:6;7116:2;7104:9;7095:7;7091:23;7087:32;7084:52;;;7132:1;7129;7122:12;7084:52;7164:9;7158:16;7217:5;7210:13;7203:21;7196:5;7193:32;7183:60;;7239:1;7236;7229:12;7278:581;7551:6;7540:9;7533:25;7594:3;7589:2;7578:9;7574:18;7567:31;7514:4;7621:63;7679:3;7668:9;7664:19;7656:6;7648;7621:63;:::i;:::-;7732:9;7724:6;7720:22;7715:2;7704:9;7700:18;7693:50;7760;7803:6;7795;7787;7760:50;:::i;:::-;7752:58;;;7846:6;7841:2;7830:9;7826:18;7819:34;7278:581;;;;;;;;;:::o;8195:437::-;8274:1;8270:12;;;;8317;;;8338:61;;8392:4;8384:6;8380:17;8370:27;;8338:61;8445:2;8437:6;8434:14;8414:18;8411:38;8408:218;;8482:77;8479:1;8472:88;8583:4;8580:1;8573:15;8611:4;8608:1;8601:15;8408:218;;8195:437;;;:::o;8637:247::-;8796:2;8785:9;8778:21;8759:4;8816:62;8874:2;8863:9;8859:18;8851:6;8843;8816:62;:::i;:::-;8808:70;8637:247;-1:-1:-1;;;;8637:247:16:o;8889:184::-;8941:77;8938:1;8931:88;9038:4;9035:1;9028:15;9062:4;9059:1;9052:15;9204:545;9306:2;9301:3;9298:11;9295:448;;;9342:1;9367:5;9363:2;9356:17;9412:4;9408:2;9398:19;9482:2;9470:10;9466:19;9463:1;9459:27;9453:4;9449:38;9518:4;9506:10;9503:20;9500:47;;;-1:-1:-1;9541:4:16;9500:47;9596:2;9591:3;9587:12;9584:1;9580:20;9574:4;9570:31;9560:41;;9651:82;9669:2;9662:5;9659:13;9651:82;;;9714:17;;;9695:1;9684:13;9651:82;;9295:448;9204:545;;;:::o;9985:1471::-;10111:3;10105:10;10138:18;10130:6;10127:30;10124:56;;;10160:18;;:::i;:::-;10189:97;10279:6;10239:38;10271:4;10265:11;10239:38;:::i;:::-;10233:4;10189:97;:::i;:::-;10341:4;;10405:2;10394:14;;10422:1;10417:782;;;;11243:1;11260:6;11257:89;;;-1:-1:-1;11312:19:16;;;11306:26;11257:89;9891:66;9882:1;9878:11;;;9874:84;9870:89;9860:100;9966:1;9962:11;;;9857:117;11359:81;;10387:1063;;10417:782;9151:1;9144:14;;;9188:4;9175:18;;10465:66;10453:79;;;10630:236;10644:7;10641:1;10638:14;10630:236;;;10733:19;;;10727:26;10712:42;;10825:27;;;;10793:1;10781:14;;;;10660:19;;10630:236;;;10634:3;10894:6;10885:7;10882:19;10879:261;;;10955:19;;;10949:26;11056:66;11038:1;11034:14;;;11050:3;11030:24;11026:97;11022:102;11007:118;10992:134;;10879:261;-1:-1:-1;;;;;11186:1:16;11170:14;;;11166:22;11153:36;;-1:-1:-1;9985:1471:16:o;11461:289::-;11592:3;11630:6;11624:13;11646:66;11705:6;11700:3;11693:4;11685:6;11681:17;11646:66;:::i;:::-;11728:16;;;;;11461:289;-1:-1:-1;;11461:289:16:o;11755:257::-;11827:4;11821:11;;;11859:17;;11906:18;11891:34;;11927:22;;;11888:62;11885:88;;;11953:18;;:::i;:::-;11989:4;11982:24;11755:257;:::o;12017:334::-;12088:2;12082:9;12144:2;12134:13;;12149:66;12130:86;12118:99;;12247:18;12232:34;;12268:22;;;12229:62;12226:88;;;12294:18;;:::i;:::-;12330:2;12323:22;12017:334;;-1:-1:-1;12017:334:16:o;12356:2605::-;12468:6;12499:2;12542;12530:9;12521:7;12517:23;12513:32;12510:52;;;12558:1;12555;12548:12;12510:52;12598:9;12585:23;12627:18;12668:2;12660:6;12657:14;12654:34;;;12684:1;12681;12674:12;12654:34;12722:6;12711:9;12707:22;12697:32;;12767:7;12760:4;12756:2;12752:13;12748:27;12738:55;;12789:1;12786;12779:12;12738:55;12825:2;12812:16;12847:2;12843;12840:10;12837:36;;;12853:18;;:::i;:::-;12899:2;12896:1;12892:10;12922:28;12946:2;12942;12938:11;12922:28;:::i;:::-;12984:15;;;13054:11;;;13050:20;;;13015:12;;;;13082:19;;;13079:39;;;13114:1;13111;13104:12;13079:39;13146:2;13142;13138:11;13127:22;;13158:1773;13174:6;13169:3;13166:15;13158:1773;;;13260:3;13247:17;13296:2;13283:11;13280:19;13277:109;;;13340:1;13369:2;13365;13358:14;13277:109;13409:20;;13452:4;13479:66;13569:16;;;13565:25;;13561:34;-1:-1:-1;13558:127:16;;;13637:1;13667:3;13662;13655:16;13558:127;13711:22;;:::i;:::-;13782:2;13778;13774:11;13761:25;13834:42;13825:7;13821:56;13812:7;13809:69;13799:170;;13921:1;13951:3;13946;13939:16;13799:170;13982:22;;14046:11;;;14033:25;14074:16;;;14071:109;;;14132:1;14162:3;14157;14150:16;14071:109;14212:8;14208:2;14204:17;14193:28;;;14262:7;14257:2;14252:3;14248:12;14244:26;14234:127;;14313:1;14343:3;14338;14331:16;14234:127;14407:2;14402:3;14398:12;14385:26;14435:2;14430:3;14427:11;14424:37;;;14441:18;;:::i;:::-;14487:49;14532:2;14527;14520:4;14515:3;14511:14;14507:23;14503:32;14487:49;:::i;:::-;14474:62;;14563:3;14556:5;14549:18;14610:7;14605:2;14599:3;14594;14590:13;14586:22;14583:35;14580:128;;;14660:1;14690:3;14685;14678:16;14580:128;14764:3;14759:2;14754:3;14750:12;14745:2;14738:5;14734:14;14721:47;14814:1;14792:15;;;14788:24;;14781:35;14836:14;;;14829:29;;;;14871:18;;-1:-1:-1;;13191:12:16;;;;14909;;;;13158:1773;;;14950:5;12356:2605;-1:-1:-1;;;;;;;;;12356:2605:16:o;14966:184::-;15018:77;15015:1;15008:88;15115:4;15112:1;15105:15;15139:4;15136:1;15129:15;15796:349;15835:3;15866:66;15859:5;15856:77;15853:257;;15966:77;15963:1;15956:88;16067:4;16064:1;16057:15;16095:4;16092:1;16085:15;15853:257;-1:-1:-1;16137:1:16;16126:13;;15796:349::o;16150:1108::-;16348:4;16377:2;16417;16406:9;16402:18;16447:2;16436:9;16429:21;16470:6;16505;16499:13;16536:6;16528;16521:22;16562:2;16552:12;;16595:2;16584:9;16580:18;16573:25;;16657:2;16647:6;16644:1;16640:14;16629:9;16625:30;16621:39;16695:2;16687:6;16683:15;16716:1;16726:503;16740:6;16737:1;16734:13;16726:503;;;16805:22;;;16829:66;16801:95;16789:108;;16920:13;;16975:9;;16968:17;16961:25;16946:41;;17026:11;;17020:18;17058:15;;;17051:27;;;17101:48;17133:15;;;17020:18;17101:48;:::i;:::-;17207:12;;;;17091:58;-1:-1:-1;;17172:15:16;;;;16762:1;16755:9;16726:503;;;-1:-1:-1;17246:6:16;;16150:1108;-1:-1:-1;;;;;;;;16150:1108:16:o" + }, + "methodIdentifiers": { + "execute(bytes32,string,string,bytes)": "49160658", + "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", + "gasService()": "6a22d8cc", + "gateway()": "116191b6", + "owner()": "8da5cb5b", + "renounceOwnership(string)": "4fdb7f44", + "transferOwnership(string,string)": "268ca07e" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"gateway_\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"gasReceiver_\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"owner_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"owner\",\"type\":\"string\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"account\",\"type\":\"string\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"executor\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"indexed\":false,\"internalType\":\"struct CallResult[]\",\"name\":\"results\",\"type\":\"tuple[]\"}],\"name\":\"MulticallExecuted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"previousOwner\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"newOwner\",\"type\":\"string\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Received\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasService\",\"outputs\":[{\"internalType\":\"contract IAxelarGasService\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"currentOwner\",\"type\":\"string\"}],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"oldOwner\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"newOwner\",\"type\":\"string\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"errors\":{\"OwnableInvalidOwner(string)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(string)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}]},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership(string)\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(string,string)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/__tests__/contracts/AgoricProxy.sol\":\"Wallet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":{\"keccak256\":\"0x2a88d046f9cdc664afc7b788d6c5b534d361b46fb45ab7abf721a58dd813359b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ac48adfa686aa78e2474bcb72f49791b631bd5dd15e0991ccd91b9660caacdb\",\"dweb:/ipfs/QmQ7uFDHagPUDq93T4vaeANzLE8J8Ch3jcdTAdNT7kkfEW\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":{\"keccak256\":\"0x7ad77d3af41f342e9032889a7b5aa224ab0c6dfaf9ce9350fe403d4a596c5eae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc2358f1f1138cd742a7cfdfc83420c488c19c3b3e39d703482e124e453953ee\",\"dweb:/ipfs/QmYki4j2yWrixJVs955DyS1ZmLD5zcxe8ss52w6DLBLRi4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xb77ad755f4eade679279d5ca12b6926595e41e17387e143530f4fb57672d58d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b0d01d0810d12dba98839b084440ab9b52e04d94e9431a6ffadabb1651d0f100\",\"dweb:/ipfs/Qme9KLMtbmNvsAj2giGTzNFKAymkMJq88Ef445pLiawKWa\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]},\"src/__tests__/contracts/AgoricProxy.sol\":{\"keccak256\":\"0x1f89b022460ace074827cd232c5ea192b1b3192be4be264cb3563189c921943f\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4fcdc4b827ef417d3e86c44c8b439a877899284d28636d17a8277a810fae54bc\",\"dweb:/ipfs/QmXXx3o6Tkx7T4fFDJRZayFfUMB1FwLuy4dzNHoEJ9HP1j\"]},\"src/__tests__/contracts/Ownable.sol\":{\"keccak256\":\"0xe58b7ff3c99e14494af44e1588a94bba12319b3ee559e5868a5a646036be0f31\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4e57d0fccf76dcdf1ef09a62138bf7810c95d3d721a942af11fd9496b2e58a1e\",\"dweb:/ipfs/QmQYSKgBPHumQ92NfQx4wkxj8rG2EzggNuj2pbBWYexxRo\"]}},\"version\":1}" + } + }, + "src/__tests__/contracts/Ownable.sol": { + "Ownable": { + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "owner", + "type": "string" + } + ], + "name": "OwnableInvalidOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "account", + "type": "string" + } + ], + "name": "OwnableUnauthorizedAccount", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "string", + "name": "previousOwner", + "type": "string" + }, + { + "indexed": true, + "internalType": "string", + "name": "newOwner", + "type": "string" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "currentOwner", + "type": "string" + } + ], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "oldOwner", + "type": "string" + }, + { + "internalType": "string", + "name": "newOwner", + "type": "string" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "deployedBytecode": { + "functionDebugData": {}, + "generatedSources": [], + "immutableReferences": {}, + "linkReferences": {}, + "object": "", + "opcodes": "", + "sourceMap": "" + }, + "methodIdentifiers": { + "owner()": "8da5cb5b", + "renounceOwnership(string)": "4fdb7f44", + "transferOwnership(string,string)": "268ca07e" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"owner\",\"type\":\"string\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"account\",\"type\":\"string\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"previousOwner\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"newOwner\",\"type\":\"string\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"currentOwner\",\"type\":\"string\"}],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"oldOwner\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"newOwner\",\"type\":\"string\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. The initial owner is set to the address provided by the deployer. This can later be changed with {transferOwnership}. This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be applied to your functions to restrict their use to the owner.\",\"errors\":{\"OwnableInvalidOwner(string)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(string)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}]},\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes the contract setting the address provided by the deployer as the initial owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership(string)\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(string,string)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/__tests__/contracts/Ownable.sol\":\"Ownable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"src/__tests__/contracts/Ownable.sol\":{\"keccak256\":\"0xe58b7ff3c99e14494af44e1588a94bba12319b3ee559e5868a5a646036be0f31\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4e57d0fccf76dcdf1ef09a62138bf7810c95d3d721a942af11fd9496b2e58a1e\",\"dweb:/ipfs/QmQYSKgBPHumQ92NfQx4wkxj8rG2EzggNuj2pbBWYexxRo\"]}},\"version\":1}" + } + }, + "src/__tests__/contracts/SendReceive.sol": { + "SendReceive": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "gateway_", + "type": "address" + }, + { + "internalType": "address", + "name": "gasReceiver_", + "type": "address" + }, + { + "internalType": "string", + "name": "chainName_", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "InvalidAddress", + "type": "error" + }, + { + "inputs": [], + "name": "NotApprovedByGateway", + "type": "error" + }, + { + "inputs": [], + "name": "chainName", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "commandId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "sourceChain", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceAddress", + "type": "string" + }, + { + "internalType": "bytes", + "name": "payload", + "type": "bytes" + }, + { + "internalType": "string", + "name": "tokenSymbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "executeWithToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "gasService", + "outputs": [ + { + "internalType": "contract IAxelarGasService", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "gateway", + "outputs": [ + { + "internalType": "contract IAxelarGateway", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "destinationChain", + "type": "string" + }, + { + "internalType": "string", + "name": "destinationAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "message", + "type": "string" + } + ], + "name": "send", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "storedMessage", + "outputs": [ + { + "internalType": "string", + "name": "sender", + "type": "string" + }, + { + "internalType": "string", + "name": "message", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "evm": { + "bytecode": { + "functionDebugData": { + "@_2164": { + "entryPoint": null, + "id": 2164, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@_32": { + "entryPoint": null, + "id": 32, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_address_fromMemory": { + "entryPoint": 136, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory": { + "entryPoint": 187, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "array_dataslot_string_storage": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_string_storage": { + "entryPoint": 497, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 580, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 437, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x41": { + "entryPoint": 165, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:4131:16", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:16", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "74:117:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "84:22:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "99:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "93:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "93:13:16" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "84:5:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "169:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "178:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "181:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "171:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "171:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "171:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "128:5:16" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "139:5:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "154:3:16", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "159:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "150:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "150:11:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "163:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "146:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "146:19:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "135:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "135:31:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "125:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "125:42:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "118:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "118:50:16" + }, + "nodeType": "YulIf", + "src": "115:70:16" + } + ] + }, + "name": "abi_decode_address_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "53:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "64:5:16", + "type": "" + } + ], + "src": "14:177:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "228:95:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "245:1:16", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "252:3:16", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "257:10:16", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "248:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "248:20:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "238:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "238:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "238:31:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "285:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "288:4:16", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "278:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "278:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "278:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "309:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "312:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "302:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "302:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "302:15:16" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "196:127:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "453:1087:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "499:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "508:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "511:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "501:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "501:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "501:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "474:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "483:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "470:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "470:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "495:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "466:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "466:32:16" + }, + "nodeType": "YulIf", + "src": "463:52:16" + }, + { + "nodeType": "YulAssignment", + "src": "524:50:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "564:9:16" + } + ], + "functionName": { + "name": "abi_decode_address_fromMemory", + "nodeType": "YulIdentifier", + "src": "534:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "534:40:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "524:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "583:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "593:2:16", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "587:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "604:59:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "648:9:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "659:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "644:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "644:18:16" + } + ], + "functionName": { + "name": "abi_decode_address_fromMemory", + "nodeType": "YulIdentifier", + "src": "614:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "614:49:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "604:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "672:39:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "696:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "707:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "692:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "692:18:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "686:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "686:25:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "676:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "720:28:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "738:2:16", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "742:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "734:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "734:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "746:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "730:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "730:18:16" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "724:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "775:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "784:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "787:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "777:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "777:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "777:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "763:6:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "771:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "760:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "760:14:16" + }, + "nodeType": "YulIf", + "src": "757:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "800:32:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "814:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "825:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "810:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "810:22:16" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "804:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "880:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "889:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "892:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "882:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "882:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "882:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "859:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "863:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "855:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "855:13:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "870:7:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "851:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "851:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "844:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "844:35:16" + }, + "nodeType": "YulIf", + "src": "841:55:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "905:19:16", + "value": { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "921:2:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "915:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "915:9:16" + }, + "variables": [ + { + "name": "_4", + "nodeType": "YulTypedName", + "src": "909:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "947:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "949:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "949:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "949:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "939:2:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "943:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "936:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "936:10:16" + }, + "nodeType": "YulIf", + "src": "933:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "978:17:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "992:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "988:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "988:7:16" + }, + "variables": [ + { + "name": "_5", + "nodeType": "YulTypedName", + "src": "982:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1004:23:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1024:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1018:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "1018:9:16" + }, + "variables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "1008:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1036:71:16", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1058:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1082:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1086:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1078:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1078:13:16" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "1093:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1074:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1074:22:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1098:2:16", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1070:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1070:31:16" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "1103:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1066:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1066:40:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1054:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1054:53:16" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "1040:10:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1166:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "1168:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "1168:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1168:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "1125:10:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1137:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1122:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1122:18:16" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "1145:10:16" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1157:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1142:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1142:22:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "1119:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1119:46:16" + }, + "nodeType": "YulIf", + "src": "1116:72:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1204:2:16", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "1208:10:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1197:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1197:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1197:22:16" + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1235:6:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1243:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1228:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1228:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1228:18:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1292:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1301:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1304:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1294:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1294:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1294:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1269:2:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1273:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1265:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1265:11:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1278:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1261:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1261:20:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1283:7:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1258:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1258:33:16" + }, + "nodeType": "YulIf", + "src": "1255:53:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1317:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1326:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "1321:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1382:83:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1411:6:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1419:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1407:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1407:14:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1423:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1403:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1403:23:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1442:2:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1446:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1438:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1438:10:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1450:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1434:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1434:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1428:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "1428:26:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1396:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1396:59:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1396:59:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1347:1:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1350:2:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1344:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1344:9:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "1354:19:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1356:15:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1365:1:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1368:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1361:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1361:10:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1356:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "1340:3:16", + "statements": [] + }, + "src": "1336:129:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1489:6:16" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1497:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1485:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1485:15:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1502:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1481:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1481:24:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1507:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1474:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1474:35:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1474:35:16" + }, + { + "nodeType": "YulAssignment", + "src": "1518:16:16", + "value": { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "1528:6:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "1518:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "403:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "414:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "426:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "434:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "442:6:16", + "type": "" + } + ], + "src": "328:1212:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1600:325:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1610:22:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1624:1:16", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1627:4:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "1620:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1620:12:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1610:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1641:38:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1671:4:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1677:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1667:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1667:12:16" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "1645:18:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1718:31:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1720:27:16", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1734:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1742:4:16", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1730:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1730:17:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1720:6:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "1698:18:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1691:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1691:26:16" + }, + "nodeType": "YulIf", + "src": "1688:61:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1808:111:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1829:1:16", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1836:3:16", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1841:10:16", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1832:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1832:20:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1822:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1822:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1822:31:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1873:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1876:4:16", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1866:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1866:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1866:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1901:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1904:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1894:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1894:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1894:15:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "1764:18:16" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1787:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1795:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1784:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1784:14:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "1761:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1761:38:16" + }, + "nodeType": "YulIf", + "src": "1758:161:16" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "1580:4:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1589:6:16", + "type": "" + } + ], + "src": "1545:380:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1986:65:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2003:1:16", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "2006:3:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1996:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1996:14:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1996:14:16" + }, + { + "nodeType": "YulAssignment", + "src": "2019:26:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2037:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2040:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "2027:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "2027:18:16" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2019:4:16" + } + ] + } + ] + }, + "name": "array_dataslot_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "1969:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "1977:4:16", + "type": "" + } + ], + "src": "1930:121:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2137:464:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2170:425:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2184:11:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2194:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "2188:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2215:2:16" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "2219:5:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2208:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2208:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2208:17:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2238:31:16", + "value": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2260:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2264:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "2250:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "2250:19:16" + }, + "variables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "2242:4:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2282:57:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2305:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2315:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "2322:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2334:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2318:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2318:19:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2311:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2311:27:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2301:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2301:38:16" + }, + "variables": [ + { + "name": "deleteStart", + "nodeType": "YulTypedName", + "src": "2286:11:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2376:23:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2378:19:16", + "value": { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2393:4:16" + }, + "variableNames": [ + { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "2378:11:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "2358:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2370:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2355:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2355:20:16" + }, + "nodeType": "YulIf", + "src": "2352:47:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2412:41:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2426:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2436:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2443:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2448:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2439:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2439:12:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2432:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2432:20:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2422:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2422:31:16" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "2416:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2466:24:16", + "value": { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "2479:11:16" + }, + "variables": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "2470:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2564:21:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2573:5:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2580:2:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2566:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2566:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2566:17:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2514:5:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "2521:2:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2511:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2511:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "2525:26:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2527:22:16", + "value": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2540:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2547:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2536:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2536:13:16" + }, + "variableNames": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "2527:5:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "2507:3:16", + "statements": [] + }, + "src": "2503:82:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2153:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2158:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2150:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2150:11:16" + }, + "nodeType": "YulIf", + "src": "2147:448:16" + } + ] + }, + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "2109:5:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "2116:3:16", + "type": "" + }, + { + "name": "startIndex", + "nodeType": "YulTypedName", + "src": "2121:10:16", + "type": "" + } + ], + "src": "2056:545:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2691:81:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2701:65:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2716:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2734:1:16", + "type": "", + "value": "3" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2737:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2730:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2730:11:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2747:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2743:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2743:6:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2726:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2726:24:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2722:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2722:29:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2712:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2712:40:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2758:1:16", + "type": "", + "value": "1" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "2761:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2754:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2754:11:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "2709:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2709:57:16" + }, + "variableNames": [ + { + "name": "used", + "nodeType": "YulIdentifier", + "src": "2701:4:16" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "2668:4:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "2674:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nodeType": "YulTypedName", + "src": "2682:4:16", + "type": "" + } + ], + "src": "2606:166:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2873:1256:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2883:24:16", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2903:3:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2897:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "2897:10:16" + }, + "variables": [ + { + "name": "newLen", + "nodeType": "YulTypedName", + "src": "2887:6:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2950:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "2952:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "2952:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2952:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2922:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2938:2:16", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2942:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2934:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2934:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2946:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2930:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2930:18:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2919:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2919:30:16" + }, + "nodeType": "YulIf", + "src": "2916:56:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3025:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3063:4:16" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "3057:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3057:11:16" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "3031:25:16" + }, + "nodeType": "YulFunctionCall", + "src": "3031:38:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3071:6:16" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulIdentifier", + "src": "2981:43:16" + }, + "nodeType": "YulFunctionCall", + "src": "2981:97:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2981:97:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3087:18:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3104:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nodeType": "YulTypedName", + "src": "3091:9:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3114:23:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3133:4:16", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "srcOffset_1", + "nodeType": "YulTypedName", + "src": "3118:11:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3146:24:16", + "value": { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "3159:11:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3146:9:16" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3216:656:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3230:35:16", + "value": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3249:6:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3261:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3257:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3257:7:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3245:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3245:20:16" + }, + "variables": [ + { + "name": "loopEnd", + "nodeType": "YulTypedName", + "src": "3234:7:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3278:49:16", + "value": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3322:4:16" + } + ], + "functionName": { + "name": "array_dataslot_string_storage", + "nodeType": "YulIdentifier", + "src": "3292:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "3292:35:16" + }, + "variables": [ + { + "name": "dstPtr", + "nodeType": "YulTypedName", + "src": "3282:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3340:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3349:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "3344:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3427:172:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3452:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "3470:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3475:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3466:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3466:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3460:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3460:26:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "3445:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3445:42:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3445:42:16" + }, + { + "nodeType": "YulAssignment", + "src": "3504:24:16", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3518:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3526:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3514:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3514:14:16" + }, + "variableNames": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3504:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3545:40:16", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3562:9:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "3573:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3558:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3558:27:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3545:9:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "3374:1:16" + }, + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "3377:7:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "3371:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3371:14:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "3386:28:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3388:24:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "3397:1:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "3400:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3393:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3393:19:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "3388:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "3367:3:16", + "statements": [] + }, + "src": "3363:236:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3647:166:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3665:43:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "3692:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3697:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3688:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3688:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3682:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3682:26:16" + }, + "variables": [ + { + "name": "lastValue", + "nodeType": "YulTypedName", + "src": "3669:9:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "3732:6:16" + }, + { + "arguments": [ + { + "name": "lastValue", + "nodeType": "YulIdentifier", + "src": "3744:9:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3771:1:16", + "type": "", + "value": "3" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3774:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3767:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3767:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3783:3:16", + "type": "", + "value": "248" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3763:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3763:24:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3793:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3789:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3789:6:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "3759:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3759:37:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3755:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3755:42:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3740:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3740:58:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "3725:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3725:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3725:74:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "3618:7:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3627:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "3615:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3615:19:16" + }, + "nodeType": "YulIf", + "src": "3612:201:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3833:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3847:1:16", + "type": "", + "value": "1" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3850:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3843:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3843:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3859:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3839:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3839:22:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "3826:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3826:36:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3826:36:16" + } + ] + }, + "nodeType": "YulCase", + "src": "3209:663:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3214:1:16", + "type": "", + "value": "1" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3889:234:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3903:14:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3916:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "3907:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3952:67:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3970:35:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "3989:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "3994:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3985:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3985:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3979:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "3979:26:16" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3970:5:16" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3933:6:16" + }, + "nodeType": "YulIf", + "src": "3930:89:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "4039:4:16" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4098:5:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "4105:6:16" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulIdentifier", + "src": "4045:52:16" + }, + "nodeType": "YulFunctionCall", + "src": "4045:67:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "4032:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4032:81:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4032:81:16" + } + ] + }, + "nodeType": "YulCase", + "src": "3881:242:16", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3189:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3197:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3186:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3186:14:16" + }, + "nodeType": "YulSwitch", + "src": "3179:944:16" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nodeType": "YulTypedName", + "src": "2858:4:16", + "type": "" + }, + { + "name": "src", + "nodeType": "YulTypedName", + "src": "2864:3:16", + "type": "" + } + ], + "src": "2777:1352:16" + } + ] + }, + "contents": "{\n { }\n function abi_decode_address_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := abi_decode_address_fromMemory(headStart)\n let _1 := 32\n value1 := abi_decode_address_fromMemory(add(headStart, _1))\n let offset := mload(add(headStart, 64))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := mload(_3)\n if gt(_4, _2) { panic_error_0x41() }\n let _5 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_4, 0x1f), _5), 63), _5))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _4)\n if gt(add(add(_3, _4), _1), dataEnd) { revert(0, 0) }\n let i := 0\n for { } lt(i, _4) { i := add(i, _1) }\n {\n mstore(add(add(memPtr, i), _1), mload(add(add(_3, i), _1)))\n }\n mstore(add(add(memPtr, _4), _1), 0)\n value2 := memPtr\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n}", + "id": 16, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "60c06040523480156200001157600080fd5b5060405162001b1d38038062001b1d8339810160408190526200003491620000bb565b826001600160a01b0381166200005d5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03908116608052821660a05260006200007e828262000244565b5050505062000310565b80516001600160a01b0381168114620000a057600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600060608486031215620000d157600080fd5b620000dc8462000088565b92506020620000ed81860162000088565b60408601519093506001600160401b03808211156200010b57600080fd5b818701915087601f8301126200012057600080fd5b815181811115620001355762000135620000a5565b604051601f8201601f19908116603f01168101908382118183101715620001605762000160620000a5565b816040528281528a868487010111156200017957600080fd5b600093505b828410156200019d57848401860151818501870152928501926200017e565b60008684830101528096505050505050509250925092565b600181811c90821680620001ca57607f821691505b602082108103620001eb57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023f57600081815260208120601f850160051c810160208610156200021a5750805b601f850160051c820191505b818110156200023b5782815560010162000226565b5050505b505050565b81516001600160401b03811115620002605762000260620000a5565b6200027881620002718454620001b5565b84620001f1565b602080601f831160018114620002b05760008415620002975750858301515b600019600386901b1c1916600185901b1785556200023b565b600085815260208120601f198616915b82811015620002e157888601518255948401946001909101908401620002c0565b5085821015620003005787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a0516117cc620003516000396000818161015c01526104b70152600081816087015281816101f8015281816103a8015261058701526117cc6000f3fe6080604052600436106100705760003560e01c8063491606581161004e57806349160658146101175780635615264d146101375780636a22d8cc1461014a578063b2f6cbbe1461017e57600080fd5b8063116191b6146100755780631a98b2e0146100d35780631c93b03a146100f5575b600080fd5b34801561008157600080fd5b506100a97f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156100df57600080fd5b506100f36100ee366004610dac565b6101a1565b005b34801561010157600080fd5b5061010a6102c3565b6040516100ca9190610ed6565b34801561012357600080fd5b506100f3610132366004610ef0565b610351565b6100f3610145366004610f94565b610478565b34801561015657600080fd5b506100a97f000000000000000000000000000000000000000000000000000000000000000081565b34801561018a57600080fd5b50610193610603565b6040516100ca92919061102e565b600085856040516101b392919061105c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed99061023d908e908e908e908e908e9089908d908d908d90600401611097565b6020604051808303816000875af115801561025c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028091906110f6565b6102b6576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600080546102d090611118565b80601f01602080910402602001604051908101604052809291908181526020018280546102fc90611118565b80156103495780601f1061031e57610100808354040283529160200191610349565b820191906000526020600020905b81548152906001019060200180831161032c57829003601f168201915b505050505081565b6000828260405161036392919061105c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906103e7908b908b908b908b908b90899060040161116b565b6020604051808303816000875af1158015610406573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061042a91906110f6565b610460576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61046e878787878787610723565b5050505050505050565b60006104833361076d565b8383604051602001610497939291906111ac565b604051602081830303815290604052905060006104b382610a6f565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16630c93e3bb34308b8b8b8b88336040518963ffffffff1660e01b815260040161051b97969594939291906111dc565b6000604051808303818588803b15801561053457600080fd5b505af1158015610548573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506105c791508b908b908b908b90889060040161124c565b600060405180830381600087803b1580156105e157600080fd5b505af11580156105f5573d6000803e3d6000fd5b505050505050505050505050565b60018054819061061290611118565b80601f016020809104026020016040519081016040528092919081815260200182805461063e90611118565b801561068b5780601f106106605761010080835404028352916020019161068b565b820191906000526020600020905b81548152906001019060200180831161066e57829003601f168201915b5050505050908060010180546106a090611118565b80601f01602080910402602001604051908101604052809291908181526020018280546106cc90611118565b80156107195780601f106106ee57610100808354040283529160200191610719565b820191906000526020600020905b8154815290600101906020018083116106fc57829003601f168201915b5050505050905082565b6000806107328385018561134f565b604080518082019091528281526020810182905291935091506001806107588582611402565b50602082015160018201906102b69082611402565b604051606082811b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660208301529060009060340160408051808303601f190181528282018252601083527f303132333435363738396162636465660000000000000000000000000000000060208401528151602a808252606082019093529093506000916020820181803683370190505090507f300000000000000000000000000000000000000000000000000000000000000081600081518110610836576108366114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110610899576108996114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060005b6014811015610a66578260048583815181106108e9576108e96114fe565b016020015182517fff0000000000000000000000000000000000000000000000000000000000000090911690911c60f81c908110610929576109296114fe565b01602001517fff00000000000000000000000000000000000000000000000000000000000000168261095c83600261155c565b610967906002611579565b81518110610977576109776114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350828482815181106109b9576109b96114fe565b602091010151815160f89190911c600f169081106109d9576109d96114fe565b01602001517fff000000000000000000000000000000000000000000000000000000000000001682610a0c83600261155c565b610a17906003611579565b81518110610a2757610a276114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610a5f8161158c565b90506108cb565b50949350505050565b6060600080610a7d3061076d565b84604051602001610a90939291906115c4565b60408051808303601f19018152600380845260808401909252925060009190816020015b6060815260200190600190039081610ab45790505090506040518060400160405280600c81526020017f736f757263655f636861696e000000000000000000000000000000000000000081525081600081518110610b1457610b146114fe565b60200260200101819052506040518060400160405280600e81526020017f736f757263655f6164647265737300000000000000000000000000000000000081525081600181518110610b6857610b686114fe565b60200260200101819052506040518060400160405280600781526020017f7061796c6f61640000000000000000000000000000000000000000000000000081525081600281518110610bbc57610bbc6114fe565b602090810291909101015260408051600380825260808201909252600091816020015b6060815260200190600190039081610bdf5790505090506040518060400160405280600681526020017f737472696e67000000000000000000000000000000000000000000000000000081525081600081518110610c3f57610c3f6114fe565b60200260200101819052506040518060400160405280600681526020017f737472696e67000000000000000000000000000000000000000000000000000081525081600181518110610c9357610c936114fe565b60200260200101819052506040518060400160405280600581526020017f627974657300000000000000000000000000000000000000000000000000000081525081600281518110610ce757610ce76114fe565b60200260200101819052506060828285604051602001610d09939291906116e1565b60408051601f19818403018152908290529150610d49907c010000000000000000000000000000000000000000000000000000000090839060200161174e565b604051602081830303815290604052945050505050919050565b60008083601f840112610d7557600080fd5b50813567ffffffffffffffff811115610d8d57600080fd5b602083019150836020828501011115610da557600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610dcb57600080fd5b8a35995060208b013567ffffffffffffffff80821115610dea57600080fd5b610df68e838f01610d63565b909b50995060408d0135915080821115610e0f57600080fd5b610e1b8e838f01610d63565b909950975060608d0135915080821115610e3457600080fd5b610e408e838f01610d63565b909750955060808d0135915080821115610e5957600080fd5b50610e668d828e01610d63565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b83811015610ea1578181015183820152602001610e89565b50506000910152565b60008151808452610ec2816020860160208601610e86565b601f01601f19169290920160200192915050565b602081526000610ee96020830184610eaa565b9392505050565b60008060008060008060006080888a031215610f0b57600080fd5b87359650602088013567ffffffffffffffff80821115610f2a57600080fd5b610f368b838c01610d63565b909850965060408a0135915080821115610f4f57600080fd5b610f5b8b838c01610d63565b909650945060608a0135915080821115610f7457600080fd5b50610f818a828b01610d63565b989b979a50959850939692959293505050565b60008060008060008060608789031215610fad57600080fd5b863567ffffffffffffffff80821115610fc557600080fd5b610fd18a838b01610d63565b90985096506020890135915080821115610fea57600080fd5b610ff68a838b01610d63565b9096509450604089013591508082111561100f57600080fd5b5061101c89828a01610d63565b979a9699509497509295939492505050565b6040815260006110416040830185610eaa565b82810360208401526110538185610eaa565b95945050505050565b8183823760009101908152919050565b818352818160208501375060006020828401015260006020601f19601f840116840101905092915050565b89815260c0602082015260006110b160c083018a8c61106c565b82810360408401526110c481898b61106c565b905086606084015282810360808401526110df81868861106c565b9150508260a08301529a9950505050505050505050565b60006020828403121561110857600080fd5b81518015158114610ee957600080fd5b600181811c9082168061112c57607f821691505b602082108103611165577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600061118560808301878961106c565b828103604084015261119881868861106c565b915050826060830152979650505050505050565b6040815260006111bf6040830186610eaa565b82810360208401526111d281858761106c565b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a0602084015261120d60a08401898b61106c565b838103604085015261122081888a61106c565b905083810360608501526112348187610eaa565b92505080841660808401525098975050505050505050565b60608152600061126060608301878961106c565b828103602084015261127381868861106c565b905082810360408401526112878185610eaa565b98975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f8301126112d357600080fd5b813567ffffffffffffffff808211156112ee576112ee611293565b604051601f8301601f19908116603f0116810190828211818310171561131657611316611293565b8160405283815286602085880101111561132f57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561136257600080fd5b823567ffffffffffffffff8082111561137a57600080fd5b611386868387016112c2565b9350602085013591508082111561139c57600080fd5b506113a9858286016112c2565b9150509250929050565b601f8211156113fd57600081815260208120601f850160051c810160208610156113da5750805b601f850160051c820191505b818110156113f9578281556001016113e6565b5050505b505050565b815167ffffffffffffffff81111561141c5761141c611293565b6114308161142a8454611118565b846113b3565b602080601f831160018114611483576000841561144d5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556113f9565b600085815260208120601f198616915b828110156114b257888601518255948401946001909101908401611493565b50858210156114ee57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176115735761157361152d565b92915050565b808201808211156115735761157361152d565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036115bd576115bd61152d565b5060010190565b6060815260008085546115d681611118565b80606086015260806001808416600081146115f8576001811461163057611661565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008516838901528284151560051b8901019550611661565b8a60005260208060002060005b868110156116585781548b820187015290840190820161163d565b8a018501975050505b505050505082810360208401526116788186610eaa565b905082810360408401526111d28185610eaa565b600081518084526020808501808196508360051b8101915082860160005b858110156116d45782840389526116c2848351610eaa565b988501989350908401906001016116aa565b5091979650505050505050565b60808152601360808201527f726563656976655f6d6573736167655f65766d0000000000000000000000000060a082015260c06020820152600061172860c083018661168c565b828103604084015261173a818661168c565b905082810360608401526111d28185610eaa565b7fffffffff000000000000000000000000000000000000000000000000000000008316815260008251611788816004850160208701610e86565b91909101600401939250505056fea2646970667358221220889273e6bea1307b8d9bac0f5ee0f7d320b227ded625d279374d9e4ebf1f931164736f6c63430008140033", + "opcodes": "PUSH1 0xC0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x1B1D CODESIZE SUB DUP1 PUSH3 0x1B1D DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0xBB JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5D JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 DUP2 AND PUSH1 0x80 MSTORE DUP3 AND PUSH1 0xA0 MSTORE PUSH1 0x0 PUSH3 0x7E DUP3 DUP3 PUSH3 0x244 JUMP JUMPDEST POP POP POP POP PUSH3 0x310 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0xA0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0xD1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xDC DUP5 PUSH3 0x88 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 PUSH3 0xED DUP2 DUP7 ADD PUSH3 0x88 JUMP JUMPDEST PUSH1 0x40 DUP7 ADD MLOAD SWAP1 SWAP4 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x10B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP8 ADD SWAP2 POP DUP8 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x120 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x135 JUMPI PUSH3 0x135 PUSH3 0xA5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x160 JUMPI PUSH3 0x160 PUSH3 0xA5 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP11 DUP7 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x179 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP4 POP JUMPDEST DUP3 DUP5 LT ISZERO PUSH3 0x19D JUMPI DUP5 DUP5 ADD DUP7 ADD MLOAD DUP2 DUP6 ADD DUP8 ADD MSTORE SWAP3 DUP6 ADD SWAP3 PUSH3 0x17E JUMP JUMPDEST PUSH1 0x0 DUP7 DUP5 DUP4 ADD ADD MSTORE DUP1 SWAP7 POP POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x1CA JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x1EB JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x23F JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x21A JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x23B JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x226 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x260 JUMPI PUSH3 0x260 PUSH3 0xA5 JUMP JUMPDEST PUSH3 0x278 DUP2 PUSH3 0x271 DUP5 SLOAD PUSH3 0x1B5 JUMP JUMPDEST DUP5 PUSH3 0x1F1 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x2B0 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x297 JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x23B JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x2E1 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x2C0 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x300 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH2 0x17CC PUSH3 0x351 PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x15C ADD MSTORE PUSH2 0x4B7 ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH1 0x87 ADD MSTORE DUP2 DUP2 PUSH2 0x1F8 ADD MSTORE DUP2 DUP2 PUSH2 0x3A8 ADD MSTORE PUSH2 0x587 ADD MSTORE PUSH2 0x17CC PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x70 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x117 JUMPI DUP1 PUSH4 0x5615264D EQ PUSH2 0x137 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x14A JUMPI DUP1 PUSH4 0xB2F6CBBE EQ PUSH2 0x17E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0x75 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0xD3 JUMPI DUP1 PUSH4 0x1C93B03A EQ PUSH2 0xF5 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x81 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA9 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xDF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF3 PUSH2 0xEE CALLDATASIZE PUSH1 0x4 PUSH2 0xDAC JUMP JUMPDEST PUSH2 0x1A1 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x101 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10A PUSH2 0x2C3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCA SWAP2 SWAP1 PUSH2 0xED6 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x123 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF3 PUSH2 0x132 CALLDATASIZE PUSH1 0x4 PUSH2 0xEF0 JUMP JUMPDEST PUSH2 0x351 JUMP JUMPDEST PUSH2 0xF3 PUSH2 0x145 CALLDATASIZE PUSH1 0x4 PUSH2 0xF94 JUMP JUMPDEST PUSH2 0x478 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x156 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA9 PUSH32 0x0 DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x193 PUSH2 0x603 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCA SWAP3 SWAP2 SWAP1 PUSH2 0x102E JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x1B3 SWAP3 SWAP2 SWAP1 PUSH2 0x105C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x23D SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x1097 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x25C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x10F6 JUMP JUMPDEST PUSH2 0x2B6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH2 0x2D0 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2FC SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x349 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x31E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x349 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x32C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x363 SWAP3 SWAP2 SWAP1 PUSH2 0x105C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x3E7 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x116B JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x406 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x42A SWAP2 SWAP1 PUSH2 0x10F6 JUMP JUMPDEST PUSH2 0x460 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x46E DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x723 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x483 CALLER PUSH2 0x76D JUMP JUMPDEST DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x497 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x11AC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH1 0x0 PUSH2 0x4B3 DUP3 PUSH2 0xA6F JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC93E3BB CALLVALUE ADDRESS DUP12 DUP12 DUP12 DUP12 DUP9 CALLER PUSH1 0x40 MLOAD DUP10 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x51B SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x11DC JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x534 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x548 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH32 0x1C92115F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP4 POP PUSH4 0x1C92115F SWAP3 POP PUSH2 0x5C7 SWAP2 POP DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x124C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5E1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x5F5 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP1 SLOAD DUP2 SWAP1 PUSH2 0x612 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x63E SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x68B JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x660 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x68B JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x66E JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 DUP1 PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x6A0 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x6CC SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x719 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x719 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x732 DUP4 DUP6 ADD DUP6 PUSH2 0x134F JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP3 SWAP1 MSTORE SWAP2 SWAP4 POP SWAP2 POP PUSH1 0x1 DUP1 PUSH2 0x758 DUP6 DUP3 PUSH2 0x1402 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH1 0x1 DUP3 ADD SWAP1 PUSH2 0x2B6 SWAP1 DUP3 PUSH2 0x1402 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x60 DUP3 DUP2 SHL PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000 AND PUSH1 0x20 DUP4 ADD MSTORE SWAP1 PUSH1 0x0 SWAP1 PUSH1 0x34 ADD PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB PUSH1 0x1F NOT ADD DUP2 MSTORE DUP3 DUP3 ADD DUP3 MSTORE PUSH1 0x10 DUP4 MSTORE PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0x20 DUP5 ADD MSTORE DUP2 MLOAD PUSH1 0x2A DUP1 DUP3 MSTORE PUSH1 0x60 DUP3 ADD SWAP1 SWAP4 MSTORE SWAP1 SWAP4 POP PUSH1 0x0 SWAP2 PUSH1 0x20 DUP3 ADD DUP2 DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP POP SWAP1 POP PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x836 JUMPI PUSH2 0x836 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH32 0x7800000000000000000000000000000000000000000000000000000000000000 DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x899 JUMPI PUSH2 0x899 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 JUMPDEST PUSH1 0x14 DUP2 LT ISZERO PUSH2 0xA66 JUMPI DUP3 PUSH1 0x4 DUP6 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x8E9 JUMPI PUSH2 0x8E9 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD DUP3 MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 SWAP1 SWAP2 AND SWAP1 SWAP2 SHR PUSH1 0xF8 SHR SWAP1 DUP2 LT PUSH2 0x929 JUMPI PUSH2 0x929 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 AND DUP3 PUSH2 0x95C DUP4 PUSH1 0x2 PUSH2 0x155C JUMP JUMPDEST PUSH2 0x967 SWAP1 PUSH1 0x2 PUSH2 0x1579 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x977 JUMPI PUSH2 0x977 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP3 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x9B9 JUMPI PUSH2 0x9B9 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 SWAP2 ADD ADD MLOAD DUP2 MLOAD PUSH1 0xF8 SWAP2 SWAP1 SWAP2 SHR PUSH1 0xF AND SWAP1 DUP2 LT PUSH2 0x9D9 JUMPI PUSH2 0x9D9 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 AND DUP3 PUSH2 0xA0C DUP4 PUSH1 0x2 PUSH2 0x155C JUMP JUMPDEST PUSH2 0xA17 SWAP1 PUSH1 0x3 PUSH2 0x1579 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0xA27 JUMPI PUSH2 0xA27 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH2 0xA5F DUP2 PUSH2 0x158C JUMP JUMPDEST SWAP1 POP PUSH2 0x8CB JUMP JUMPDEST POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0xA7D ADDRESS PUSH2 0x76D JUMP JUMPDEST DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xA90 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x15C4 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB PUSH1 0x1F NOT ADD DUP2 MSTORE PUSH1 0x3 DUP1 DUP5 MSTORE PUSH1 0x80 DUP5 ADD SWAP1 SWAP3 MSTORE SWAP3 POP PUSH1 0x0 SWAP2 SWAP1 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xAB4 JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xC DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x736F757263655F636861696E0000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xB14 JUMPI PUSH2 0xB14 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xE DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x736F757263655F61646472657373000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xB68 JUMPI PUSH2 0xB68 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x7061796C6F616400000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xBBC JUMPI PUSH2 0xBBC PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x40 DUP1 MLOAD PUSH1 0x3 DUP1 DUP3 MSTORE PUSH1 0x80 DUP3 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xBDF JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x737472696E670000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xC3F JUMPI PUSH2 0xC3F PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x737472696E670000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xC93 JUMPI PUSH2 0xC93 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x6279746573000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xCE7 JUMPI PUSH2 0xCE7 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x60 DUP3 DUP3 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xD09 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x16E1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1F NOT DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP1 DUP3 SWAP1 MSTORE SWAP2 POP PUSH2 0xD49 SWAP1 PUSH29 0x100000000000000000000000000000000000000000000000000000000 SWAP1 DUP4 SWAP1 PUSH1 0x20 ADD PUSH2 0x174E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP5 POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xD75 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0xDA5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xDCB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xDEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xDF6 DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE0F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xE1B DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE34 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xE40 DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE59 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xE66 DUP14 DUP3 DUP15 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xEA1 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xE89 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xEC2 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xE86 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xEE9 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xEAA JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xF0B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xF2A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF36 DUP12 DUP4 DUP13 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xF4F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF5B DUP12 DUP4 DUP13 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xF74 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF81 DUP11 DUP3 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP8 DUP10 SUB SLT ISZERO PUSH2 0xFAD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xFC5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFD1 DUP11 DUP4 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x20 DUP10 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xFEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFF6 DUP11 DUP4 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x40 DUP10 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x100F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x101C DUP10 DUP3 DUP11 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP8 SWAP11 SWAP7 SWAP10 POP SWAP5 SWAP8 POP SWAP3 SWAP6 SWAP4 SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP2 MSTORE PUSH1 0x0 PUSH2 0x1041 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0xEAA JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1053 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x10B1 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x10C4 DUP2 DUP10 DUP12 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x10DF DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1108 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xEE9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x112C JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1165 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1185 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x1198 DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP2 MSTORE PUSH1 0x0 PUSH2 0x11BF PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0xEAA JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 DUP8 PUSH2 0x106C JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP11 AND DUP4 MSTORE PUSH1 0xA0 PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x120D PUSH1 0xA0 DUP5 ADD DUP10 DUP12 PUSH2 0x106C JUMP JUMPDEST DUP4 DUP2 SUB PUSH1 0x40 DUP6 ADD MSTORE PUSH2 0x1220 DUP2 DUP9 DUP11 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP4 DUP2 SUB PUSH1 0x60 DUP6 ADD MSTORE PUSH2 0x1234 DUP2 DUP8 PUSH2 0xEAA JUMP JUMPDEST SWAP3 POP POP DUP1 DUP5 AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH2 0x1260 PUSH1 0x60 DUP4 ADD DUP8 DUP10 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1273 DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x1287 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x12D3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x12EE JUMPI PUSH2 0x12EE PUSH2 0x1293 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x1316 JUMPI PUSH2 0x1316 PUSH2 0x1293 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x132F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1362 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x137A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1386 DUP7 DUP4 DUP8 ADD PUSH2 0x12C2 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x139C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x13A9 DUP6 DUP3 DUP7 ADD PUSH2 0x12C2 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x13FD JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x13DA JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x13F9 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x13E6 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x141C JUMPI PUSH2 0x141C PUSH2 0x1293 JUMP JUMPDEST PUSH2 0x1430 DUP2 PUSH2 0x142A DUP5 SLOAD PUSH2 0x1118 JUMP JUMPDEST DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x1483 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x144D JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x13F9 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x14B2 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x1493 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x14EE JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0x1573 JUMPI PUSH2 0x1573 PUSH2 0x152D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH2 0x1573 JUMPI PUSH2 0x1573 PUSH2 0x152D JUMP JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x15BD JUMPI PUSH2 0x15BD PUSH2 0x152D JUMP JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 DUP1 DUP6 SLOAD PUSH2 0x15D6 DUP2 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x60 DUP7 ADD MSTORE PUSH1 0x80 PUSH1 0x1 DUP1 DUP5 AND PUSH1 0x0 DUP2 EQ PUSH2 0x15F8 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1630 JUMPI PUSH2 0x1661 JUMP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 DUP6 AND DUP4 DUP10 ADD MSTORE DUP3 DUP5 ISZERO ISZERO PUSH1 0x5 SHL DUP10 ADD ADD SWAP6 POP PUSH2 0x1661 JUMP JUMPDEST DUP11 PUSH1 0x0 MSTORE PUSH1 0x20 DUP1 PUSH1 0x0 KECCAK256 PUSH1 0x0 JUMPDEST DUP7 DUP2 LT ISZERO PUSH2 0x1658 JUMPI DUP2 SLOAD DUP12 DUP3 ADD DUP8 ADD MSTORE SWAP1 DUP5 ADD SWAP1 DUP3 ADD PUSH2 0x163D JUMP JUMPDEST DUP11 ADD DUP6 ADD SWAP8 POP POP POP JUMPDEST POP POP POP POP POP DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1678 DUP2 DUP7 PUSH2 0xEAA JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x20 DUP1 DUP6 ADD DUP1 DUP2 SWAP7 POP DUP4 PUSH1 0x5 SHL DUP2 ADD SWAP2 POP DUP3 DUP7 ADD PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x16D4 JUMPI DUP3 DUP5 SUB DUP10 MSTORE PUSH2 0x16C2 DUP5 DUP4 MLOAD PUSH2 0xEAA JUMP JUMPDEST SWAP9 DUP6 ADD SWAP9 SWAP4 POP SWAP1 DUP5 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x16AA JUMP JUMPDEST POP SWAP2 SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x80 DUP2 MSTORE PUSH1 0x13 PUSH1 0x80 DUP3 ADD MSTORE PUSH32 0x726563656976655F6D6573736167655F65766D00000000000000000000000000 PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1728 PUSH1 0xC0 DUP4 ADD DUP7 PUSH2 0x168C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x173A DUP2 DUP7 PUSH2 0x168C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 AND DUP2 MSTORE PUSH1 0x0 DUP3 MLOAD PUSH2 0x1788 DUP2 PUSH1 0x4 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0xE86 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD PUSH1 0x4 ADD SWAP4 SWAP3 POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP9 SWAP3 PUSH20 0xE6BEA1307B8D9BAC0F5EE0F7D320B227DED625D2 PUSH26 0x374D9E4EBF1F931164736F6C6343000814003300000000000000 ", + "sourceMap": "527:3163:15:-:0;;;927:228;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1052:8;-1:-1:-1;;;;;342:22:0;;338:51;;373:16;;-1:-1:-1;;;373:16:0;;;;;;;;;;;338:51;-1:-1:-1;;;;;400:34:0;;;;;1072:44:15;::::1;;::::0;1126:9:::1;:22;1138:10:::0;1126:9;:22:::1;:::i;:::-;;927:228:::0;;;527:3163;;14:177:16;93:13;;-1:-1:-1;;;;;135:31:16;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:127::-;257:10;252:3;248:20;245:1;238:31;288:4;285:1;278:15;312:4;309:1;302:15;328:1212;426:6;434;442;495:2;483:9;474:7;470:23;466:32;463:52;;;511:1;508;501:12;463:52;534:40;564:9;534:40;:::i;:::-;524:50;;593:2;614:49;659:2;648:9;644:18;614:49;:::i;:::-;707:2;692:18;;686:25;604:59;;-1:-1:-1;;;;;;760:14:16;;;757:34;;;787:1;784;777:12;757:34;825:6;814:9;810:22;800:32;;870:7;863:4;859:2;855:13;851:27;841:55;;892:1;889;882:12;841:55;921:2;915:9;943:2;939;936:10;933:36;;;949:18;;:::i;:::-;1024:2;1018:9;992:2;1078:13;;-1:-1:-1;;1074:22:16;;;1098:2;1070:31;1066:40;1054:53;;;1122:18;;;1142:22;;;1119:46;1116:72;;;1168:18;;:::i;:::-;1208:10;1204:2;1197:22;1243:2;1235:6;1228:18;1283:7;1278:2;1273;1269;1265:11;1261:20;1258:33;1255:53;;;1304:1;1301;1294:12;1255:53;1326:1;1317:10;;1336:129;1350:2;1347:1;1344:9;1336:129;;;1438:10;;;1434:19;;1428:26;1407:14;;;1403:23;;1396:59;1361:10;;;;1336:129;;;1507:1;1502:2;1497;1489:6;1485:15;1481:24;1474:35;1528:6;1518:16;;;;;;;;328:1212;;;;;:::o;1545:380::-;1624:1;1620:12;;;;1667;;;1688:61;;1742:4;1734:6;1730:17;1720:27;;1688:61;1795:2;1787:6;1784:14;1764:18;1761:38;1758:161;;1841:10;1836:3;1832:20;1829:1;1822:31;1876:4;1873:1;1866:15;1904:4;1901:1;1894:15;1758:161;;1545:380;;;:::o;2056:545::-;2158:2;2153:3;2150:11;2147:448;;;2194:1;2219:5;2215:2;2208:17;2264:4;2260:2;2250:19;2334:2;2322:10;2318:19;2315:1;2311:27;2305:4;2301:38;2370:4;2358:10;2355:20;2352:47;;;-1:-1:-1;2393:4:16;2352:47;2448:2;2443:3;2439:12;2436:1;2432:20;2426:4;2422:31;2412:41;;2503:82;2521:2;2514:5;2511:13;2503:82;;;2566:17;;;2547:1;2536:13;2503:82;;;2507:3;;;2147:448;2056:545;;;:::o;2777:1352::-;2897:10;;-1:-1:-1;;;;;2919:30:16;;2916:56;;;2952:18;;:::i;:::-;2981:97;3071:6;3031:38;3063:4;3057:11;3031:38;:::i;:::-;3025:4;2981:97;:::i;:::-;3133:4;;3197:2;3186:14;;3214:1;3209:663;;;;3916:1;3933:6;3930:89;;;-1:-1:-1;3985:19:16;;;3979:26;3930:89;-1:-1:-1;;2734:1:16;2730:11;;;2726:24;2722:29;2712:40;2758:1;2754:11;;;2709:57;4032:81;;3179:944;;3209:663;2003:1;1996:14;;;2040:4;2027:18;;-1:-1:-1;;3245:20:16;;;3363:236;3377:7;3374:1;3371:14;3363:236;;;3466:19;;;3460:26;3445:42;;3558:27;;;;3526:1;3514:14;;;;3393:19;;3363:236;;;3367:3;3627:6;3618:7;3615:19;3612:201;;;3688:19;;;3682:26;-1:-1:-1;;3771:1:16;3767:14;;;3783:3;3763:24;3759:37;3755:42;3740:58;3725:74;;3612:201;-1:-1:-1;;;;;3859:1:16;3843:14;;;3839:22;3826:36;;-1:-1:-1;2777:1352:16:o;:::-;527:3163:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@_encodePayloadToCosmWasm_2318": { + "entryPoint": 2671, + "id": 2318, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@_executeWithToken_136": { + "entryPoint": null, + "id": 136, + "parameterSlots": 9, + "returnSlots": 0 + }, + "@_execute_2350": { + "entryPoint": 1827, + "id": 2350, + "parameterSlots": 6, + "returnSlots": 0 + }, + "@chainName_2133": { + "entryPoint": 707, + "id": 2133, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@executeWithToken_112": { + "entryPoint": 417, + "id": 112, + "parameterSlots": 10, + "returnSlots": 0 + }, + "@execute_68": { + "entryPoint": 849, + "id": 68, + "parameterSlots": 7, + "returnSlots": 0 + }, + "@gasService_2131": { + "entryPoint": null, + "id": 2131, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@gateway_10": { + "entryPoint": null, + "id": 10, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@send_2216": { + "entryPoint": 1144, + "id": 2216, + "parameterSlots": 6, + "returnSlots": 0 + }, + "@storedMessage_2141": { + "entryPoint": 1539, + "id": 2141, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@toString_1496": { + "entryPoint": 1901, + "id": 1496, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_string": { + "entryPoint": 4802, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_string_calldata": { + "entryPoint": 3427, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_bool_fromMemory": { + "entryPoint": 4342, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr": { + "entryPoint": 3824, + "id": null, + "parameterSlots": 2, + "returnSlots": 7 + }, + "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256": { + "entryPoint": 3500, + "id": null, + "parameterSlots": 2, + "returnSlots": 10 + }, + "abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptrt_string_calldata_ptr": { + "entryPoint": 3988, + "id": null, + "parameterSlots": 2, + "returnSlots": 6 + }, + "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr": { + "entryPoint": 4943, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_array_string_dyn": { + "entryPoint": 5772, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_string": { + "entryPoint": 3754, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_string_calldata": { + "entryPoint": 4204, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_address__to_t_address__nonPadded_inplace_fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 5966, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { + "entryPoint": 4188, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed": { + "entryPoint": 4572, + "id": null, + "parameterSlots": 8, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed": { + "entryPoint": 4459, + "id": null, + "parameterSlots": 7, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed": { + "entryPoint": 4247, + "id": null, + "parameterSlots": 10, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 4684, + "id": null, + "parameterSlots": 6, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 3798, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 4524, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 4142, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_string_storage_t_string_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 5572, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { + "entryPoint": 5857, + "id": null, + "parameterSlots": 4, + "returnSlots": 1 + }, + "array_dataslot_string_storage": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 5497, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_mul_t_uint256": { + "entryPoint": 5468, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_string_storage": { + "entryPoint": 5043, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 5122, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "copy_memory_to_memory_with_cleanup": { + "entryPoint": 3718, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 4376, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "increment_t_uint256": { + "entryPoint": 5516, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 5421, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 5374, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 4755, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:18576:16", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:16", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "137:125:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "147:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "159:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "170:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "155:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "155:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "147:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "189:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "204:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "212:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "200:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "200:55:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "182:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "182:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "182:74:16" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "106:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "117:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "128:4:16", + "type": "" + } + ], + "src": "14:248:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "340:275:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "389:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "398:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "401:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "391:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "391:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "391:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "368:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "376:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "364:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "364:17:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "383:3:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "360:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "360:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "353:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "353:35:16" + }, + "nodeType": "YulIf", + "src": "350:55:16" + }, + { + "nodeType": "YulAssignment", + "src": "414:30:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "437:6:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "424:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "424:20:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "414:6:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "487:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "496:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "499:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "489:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "489:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "489:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "459:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "467:18:16", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "456:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "456:30:16" + }, + "nodeType": "YulIf", + "src": "453:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "512:29:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "528:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "536:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "524:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "524:17:16" + }, + "variableNames": [ + { + "name": "arrayPos", + "nodeType": "YulIdentifier", + "src": "512:8:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "593:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "602:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "605:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "595:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "595:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "595:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "564:6:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "572:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "560:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "560:19:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "581:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "556:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "556:30:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "588:3:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "553:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "553:39:16" + }, + "nodeType": "YulIf", + "src": "550:59:16" + } + ] + }, + "name": "abi_decode_string_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "303:6:16", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "311:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nodeType": "YulTypedName", + "src": "319:8:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "329:6:16", + "type": "" + } + ], + "src": "267:348:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "854:1203:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "901:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "910:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "913:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "903:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "903:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "903:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "875:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "884:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "871:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "871:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "896:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "867:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "867:33:16" + }, + "nodeType": "YulIf", + "src": "864:53:16" + }, + { + "nodeType": "YulAssignment", + "src": "926:33:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "949:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "936:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "936:23:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "926:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "968:46:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "999:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1010:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "995:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "995:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "982:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "982:32:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "972:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1023:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1033:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "1027:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1078:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1087:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1090:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1080:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1080:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1080:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1066:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1074:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1063:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1063:14:16" + }, + "nodeType": "YulIf", + "src": "1060:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1103:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1160:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1171:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1156:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1156:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1180:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1129:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1129:59:16" + }, + "variables": [ + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "1107:8:16", + "type": "" + }, + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "1117:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1197:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "1207:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "1197:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1224:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "1234:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "1224:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1251:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1284:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1295:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1280:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1280:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1267:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1267:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "1255:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1328:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1337:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1340:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1330:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1330:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1330:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "1314:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1324:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1311:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1311:16:16" + }, + "nodeType": "YulIf", + "src": "1308:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1353:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1410:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "1421:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1406:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1406:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1432:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1379:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1379:61:16" + }, + "variables": [ + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "1357:8:16", + "type": "" + }, + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "1367:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1449:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "1459:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "1449:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1476:18:16", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "1486:8:16" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "1476:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1503:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1536:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1547:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1532:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1532:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1519:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1519:32:16" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "1507:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1580:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1589:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1592:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1582:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1582:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1582:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "1566:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1576:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1563:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1563:16:16" + }, + "nodeType": "YulIf", + "src": "1560:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1605:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1662:9:16" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "1673:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1658:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1658:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1684:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1631:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1631:61:16" + }, + "variables": [ + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "1609:8:16", + "type": "" + }, + { + "name": "value6_1", + "nodeType": "YulTypedName", + "src": "1619:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1701:18:16", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "1711:8:16" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "1701:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1728:18:16", + "value": { + "name": "value6_1", + "nodeType": "YulIdentifier", + "src": "1738:8:16" + }, + "variableNames": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "1728:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1755:49:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1788:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1799:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1784:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1784:19:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1771:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "1771:33:16" + }, + "variables": [ + { + "name": "offset_3", + "nodeType": "YulTypedName", + "src": "1759:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1833:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1842:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1845:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1835:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "1835:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "1835:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_3", + "nodeType": "YulIdentifier", + "src": "1819:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1829:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1816:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "1816:16:16" + }, + "nodeType": "YulIf", + "src": "1813:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1858:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1915:9:16" + }, + { + "name": "offset_3", + "nodeType": "YulIdentifier", + "src": "1926:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1911:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "1911:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1937:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "1884:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "1884:61:16" + }, + "variables": [ + { + "name": "value7_1", + "nodeType": "YulTypedName", + "src": "1862:8:16", + "type": "" + }, + { + "name": "value8_1", + "nodeType": "YulTypedName", + "src": "1872:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1954:18:16", + "value": { + "name": "value7_1", + "nodeType": "YulIdentifier", + "src": "1964:8:16" + }, + "variableNames": [ + { + "name": "value7", + "nodeType": "YulIdentifier", + "src": "1954:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1981:18:16", + "value": { + "name": "value8_1", + "nodeType": "YulIdentifier", + "src": "1991:8:16" + }, + "variableNames": [ + { + "name": "value8", + "nodeType": "YulIdentifier", + "src": "1981:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2008:43:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2035:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2046:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2031:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2031:19:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2018:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "2018:33:16" + }, + "variableNames": [ + { + "name": "value9", + "nodeType": "YulIdentifier", + "src": "2008:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "748:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "759:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "771:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "779:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "787:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "795:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "803:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "811:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "819:6:16", + "type": "" + }, + { + "name": "value7", + "nodeType": "YulTypedName", + "src": "827:6:16", + "type": "" + }, + { + "name": "value8", + "nodeType": "YulTypedName", + "src": "835:6:16", + "type": "" + }, + { + "name": "value9", + "nodeType": "YulTypedName", + "src": "843:6:16", + "type": "" + } + ], + "src": "620:1437:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2128:184:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2138:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2147:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "2142:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2207:63:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "2232:3:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2237:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2228:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2228:11:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2251:3:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2256:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2247:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2247:11:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2241:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "2241:18:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2221:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2221:39:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2221:39:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2168:1:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2171:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2165:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "2165:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "2179:19:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2181:15:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2190:1:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2193:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2186:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2186:10:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2181:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "2161:3:16", + "statements": [] + }, + "src": "2157:113:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "2290:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2295:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2286:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2286:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2304:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2279:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2279:27:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2279:27:16" + } + ] + }, + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "2106:3:16", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "2111:3:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "2116:6:16", + "type": "" + } + ], + "src": "2062:250:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2367:280:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2377:26:16", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2397:5:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2391:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "2391:12:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "2381:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2419:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2424:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2412:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2412:19:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2412:19:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2479:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2486:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2475:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2475:16:16" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2497:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2502:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2493:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2493:14:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2509:6:16" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulIdentifier", + "src": "2440:34:16" + }, + "nodeType": "YulFunctionCall", + "src": "2440:76:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2440:76:16" + }, + { + "nodeType": "YulAssignment", + "src": "2525:116:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2540:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2553:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2561:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2549:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2549:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2566:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2545:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2545:88:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2536:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2536:98:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2636:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2532:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2532:109:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "2525:3:16" + } + ] + } + ] + }, + "name": "abi_encode_string", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2344:5:16", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "2351:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "2359:3:16", + "type": "" + } + ], + "src": "2317:330:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2773:99:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2790:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2801:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2783:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "2783:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "2783:21:16" + }, + { + "nodeType": "YulAssignment", + "src": "2813:53:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2839:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2851:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2862:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2847:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "2847:18:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "2821:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "2821:45:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "2813:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2742:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2753:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "2764:4:16", + "type": "" + } + ], + "src": "2652:220:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3057:898:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3104:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3113:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3116:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3106:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3106:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3106:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3078:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3087:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3074:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3074:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3099:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3070:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3070:33:16" + }, + "nodeType": "YulIf", + "src": "3067:53:16" + }, + { + "nodeType": "YulAssignment", + "src": "3129:33:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3152:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3139:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3139:23:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3129:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3171:46:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3202:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3213:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3198:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3198:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3185:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3185:32:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3175:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3226:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3236:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "3230:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3281:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3290:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3293:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3283:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3283:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3283:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3269:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3277:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3266:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3266:14:16" + }, + "nodeType": "YulIf", + "src": "3263:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3306:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3363:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3374:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3359:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3359:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3383:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "3332:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "3332:59:16" + }, + "variables": [ + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "3310:8:16", + "type": "" + }, + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "3320:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3400:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "3410:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "3400:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3427:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "3437:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "3427:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3454:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3487:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3498:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3483:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3483:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3470:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3470:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "3458:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3531:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3540:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3543:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3533:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3533:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3533:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "3517:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3527:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3514:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3514:16:16" + }, + "nodeType": "YulIf", + "src": "3511:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3556:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3613:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "3624:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3609:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3609:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3635:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "3582:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "3582:61:16" + }, + "variables": [ + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "3560:8:16", + "type": "" + }, + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "3570:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3652:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "3662:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "3652:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3679:18:16", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "3689:8:16" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "3679:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3706:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3739:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3750:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3735:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3735:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3722:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "3722:32:16" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "3710:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3783:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3792:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3795:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3785:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "3785:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "3785:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "3769:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3779:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3766:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "3766:16:16" + }, + "nodeType": "YulIf", + "src": "3763:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3808:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3865:9:16" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "3876:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3861:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "3861:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3887:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "3834:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "3834:61:16" + }, + "variables": [ + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "3812:8:16", + "type": "" + }, + { + "name": "value6_1", + "nodeType": "YulTypedName", + "src": "3822:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3904:18:16", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "3914:8:16" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "3904:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3931:18:16", + "value": { + "name": "value6_1", + "nodeType": "YulIdentifier", + "src": "3941:8:16" + }, + "variableNames": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "3931:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2975:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2986:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2998:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "3006:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "3014:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "3022:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "3030:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "3038:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "3046:6:16", + "type": "" + } + ], + "src": "2877:1078:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4124:846:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "4170:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4179:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4182:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4172:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4172:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4172:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4145:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4154:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4141:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4141:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4166:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "4137:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4137:32:16" + }, + "nodeType": "YulIf", + "src": "4134:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4195:37:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4222:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4209:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "4209:23:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "4199:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4241:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4251:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "4245:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4296:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4305:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4308:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4298:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4298:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4298:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4284:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4292:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4281:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4281:14:16" + }, + "nodeType": "YulIf", + "src": "4278:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4321:85:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4378:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4389:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4374:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4374:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4398:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "4347:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "4347:59:16" + }, + "variables": [ + { + "name": "value0_1", + "nodeType": "YulTypedName", + "src": "4325:8:16", + "type": "" + }, + { + "name": "value1_1", + "nodeType": "YulTypedName", + "src": "4335:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4415:18:16", + "value": { + "name": "value0_1", + "nodeType": "YulIdentifier", + "src": "4425:8:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4415:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4442:18:16", + "value": { + "name": "value1_1", + "nodeType": "YulIdentifier", + "src": "4452:8:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "4442:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4469:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4502:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4513:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4498:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4498:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4485:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "4485:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "4473:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4546:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4555:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4558:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4548:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4548:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4548:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "4532:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4542:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4529:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4529:16:16" + }, + "nodeType": "YulIf", + "src": "4526:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4571:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4628:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "4639:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4624:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4624:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4650:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "4597:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "4597:61:16" + }, + "variables": [ + { + "name": "value2_1", + "nodeType": "YulTypedName", + "src": "4575:8:16", + "type": "" + }, + { + "name": "value3_1", + "nodeType": "YulTypedName", + "src": "4585:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4667:18:16", + "value": { + "name": "value2_1", + "nodeType": "YulIdentifier", + "src": "4677:8:16" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "4667:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4694:18:16", + "value": { + "name": "value3_1", + "nodeType": "YulIdentifier", + "src": "4704:8:16" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "4694:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4721:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4754:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4765:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4750:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4750:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4737:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "4737:32:16" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "4725:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4798:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4807:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4810:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4800:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "4800:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "4800:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "4784:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4794:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4781:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "4781:16:16" + }, + "nodeType": "YulIf", + "src": "4778:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4823:87:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4880:9:16" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "4891:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4876:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "4876:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4902:7:16" + } + ], + "functionName": { + "name": "abi_decode_string_calldata", + "nodeType": "YulIdentifier", + "src": "4849:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "4849:61:16" + }, + "variables": [ + { + "name": "value4_1", + "nodeType": "YulTypedName", + "src": "4827:8:16", + "type": "" + }, + { + "name": "value5_1", + "nodeType": "YulTypedName", + "src": "4837:8:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4919:18:16", + "value": { + "name": "value4_1", + "nodeType": "YulIdentifier", + "src": "4929:8:16" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "4919:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4946:18:16", + "value": { + "name": "value5_1", + "nodeType": "YulIdentifier", + "src": "4956:8:16" + }, + "variableNames": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "4946:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptrt_string_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4050:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "4061:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4073:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "4081:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "4089:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "4097:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "4105:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "4113:6:16", + "type": "" + } + ], + "src": "3960:1010:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5101:125:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5111:26:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5123:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5134:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5119:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5119:18:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5111:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5153:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5168:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5176:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "5164:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5164:55:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5146:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5146:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5146:74:16" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5070:9:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5081:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5092:4:16", + "type": "" + } + ], + "src": "4975:251:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5400:214:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5417:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5428:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5410:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5410:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5410:21:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5440:59:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5472:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5484:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5495:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5480:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5480:18:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "5454:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "5454:45:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "5444:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5519:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5530:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5515:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5515:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "5539:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5547:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "5535:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5535:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5508:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5508:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5508:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "5567:41:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5593:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "5601:6:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "5575:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "5575:33:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5567:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5361:9:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "5372:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5380:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5391:4:16", + "type": "" + } + ], + "src": "5231:383:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5766:124:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5789:3:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5794:6:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5802:6:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "5776:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "5776:33:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5776:33:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5818:26:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5832:3:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5837:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5828:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "5828:16:16" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "5822:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "5860:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5864:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5853:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5853:13:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5853:13:16" + }, + { + "nodeType": "YulAssignment", + "src": "5875:9:16", + "value": { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "5882:2:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "5875:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5734:3:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "5739:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5747:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "5758:3:16", + "type": "" + } + ], + "src": "5619:271:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5962:259:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5979:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5984:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5972:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "5972:19:16" + }, + "nodeType": "YulExpressionStatement", + "src": "5972:19:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6017:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6022:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6013:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6013:14:16" + }, + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "6029:5:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6036:6:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "6000:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "6000:43:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6000:43:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6067:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6072:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6063:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6063:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6081:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6059:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6059:27:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6088:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6052:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6052:38:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6052:38:16" + }, + { + "nodeType": "YulAssignment", + "src": "6099:116:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6114:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6127:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6135:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6123:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6123:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6140:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "6119:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6119:88:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6110:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6110:98:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6210:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6106:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6106:109:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "6099:3:16" + } + ] + } + ] + }, + "name": "abi_encode_string_calldata", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "5931:5:16", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "5938:6:16", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5946:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "5954:3:16", + "type": "" + } + ], + "src": "5895:326:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6557:513:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6574:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6585:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6567:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6567:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6567:25:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6612:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6623:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6608:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6608:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6628:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6601:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6601:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6601:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6641:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "6682:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "6690:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6702:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6713:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6698:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6698:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "6655:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "6655:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "6645:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6738:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6749:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6734:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6734:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "6758:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6766:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6754:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6754:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6727:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6727:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6727:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6786:64:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "6827:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "6835:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "6843:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "6800:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "6800:50:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "6790:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6870:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6881:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6866:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6866:18:16" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "6886:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6859:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6859:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6859:34:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6913:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6924:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6909:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6909:19:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "6934:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6942:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6930:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "6930:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6902:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "6902:51:16" + }, + "nodeType": "YulExpressionStatement", + "src": "6902:51:16" + }, + { + "nodeType": "YulAssignment", + "src": "6962:58:16", + "value": { + "arguments": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "6997:6:16" + }, + { + "name": "value7", + "nodeType": "YulIdentifier", + "src": "7005:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "7013:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "6970:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "6970:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6962:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7040:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7051:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7036:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7036:19:16" + }, + { + "name": "value8", + "nodeType": "YulIdentifier", + "src": "7057:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7029:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7029:35:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7029:35:16" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6462:9:16", + "type": "" + }, + { + "name": "value8", + "nodeType": "YulTypedName", + "src": "6473:6:16", + "type": "" + }, + { + "name": "value7", + "nodeType": "YulTypedName", + "src": "6481:6:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "6489:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "6497:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "6505:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "6513:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "6521:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6529:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6537:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6548:4:16", + "type": "" + } + ], + "src": "6226:844:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7153:199:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "7199:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7208:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7211:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7201:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7201:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7201:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7174:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7183:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7170:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7170:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7195:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "7166:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7166:32:16" + }, + "nodeType": "YulIf", + "src": "7163:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7224:29:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7243:9:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "7237:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "7237:16:16" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7228:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7306:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7315:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7318:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7308:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7308:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7308:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7275:5:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7296:5:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7289:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7289:13:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7282:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7282:21:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "7272:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "7272:32:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7265:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7265:40:16" + }, + "nodeType": "YulIf", + "src": "7262:60:16" + }, + { + "nodeType": "YulAssignment", + "src": "7331:15:16", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7341:5:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7331:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bool_fromMemory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7119:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "7130:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7142:6:16", + "type": "" + } + ], + "src": "7075:277:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7412:382:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7422:22:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7436:1:16", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "7439:4:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "7432:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7432:12:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7422:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7453:38:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "7483:4:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7489:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "7479:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7479:12:16" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "7457:18:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7530:31:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7532:27:16", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7546:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7554:4:16", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "7542:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "7542:17:16" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7532:6:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "7510:18:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "7503:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7503:26:16" + }, + "nodeType": "YulIf", + "src": "7500:61:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7620:168:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7641:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7644:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7634:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7634:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7634:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7742:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7745:4:16", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7735:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7735:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7735:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7770:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7773:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7763:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "7763:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "7763:15:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "7576:18:16" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7599:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7607:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "7596:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "7596:14:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "7573:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "7573:38:16" + }, + "nodeType": "YulIf", + "src": "7570:218:16" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "7392:4:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "7401:6:16", + "type": "" + } + ], + "src": "7357:437:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8044:336:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8061:9:16" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8072:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8054:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8054:25:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8054:25:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8099:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8110:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8095:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8095:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8115:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8088:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8088:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8088:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8128:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "8169:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "8177:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8189:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8200:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8185:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8185:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "8142:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "8142:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "8132:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8225:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8236:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8221:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8221:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "8245:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8253:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8241:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8241:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8214:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8214:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8214:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "8273:58:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "8308:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "8316:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "8324:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "8281:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "8281:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8273:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8351:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8362:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8347:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8347:18:16" + }, + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "8367:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8340:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8340:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8340:34:16" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7973:9:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "7984:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "7992:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "8000:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "8008:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "8016:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8024:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8035:4:16", + "type": "" + } + ], + "src": "7799:581:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8564:231:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8581:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8592:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8574:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8574:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8574:21:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8604:59:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8636:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8648:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8659:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8644:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8644:18:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "8618:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "8618:45:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "8608:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8683:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8694:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8679:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8679:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "8703:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8711:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8699:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "8699:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8672:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "8672:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "8672:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "8731:58:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "8766:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "8774:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "8782:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "8739:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "8739:50:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8731:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_memory_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8517:9:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "8528:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "8536:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8544:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8555:4:16", + "type": "" + } + ], + "src": "8385:410:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9091:531:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9101:52:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9111:42:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "9105:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9169:9:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "9184:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "9192:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "9180:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9180:15:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9162:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9162:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9162:34:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9216:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9227:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9212:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9212:18:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9232:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9205:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9205:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9205:31:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9245:77:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "9286:6:16" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "9294:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9306:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9317:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9302:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9302:19:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "9259:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "9259:63:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "9249:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9342:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9353:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9338:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9338:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "9362:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9370:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "9358:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9358:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9331:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9331:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9331:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9390:64:16", + "value": { + "arguments": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "9431:6:16" + }, + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "9439:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "9447:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "9404:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "9404:50:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "9394:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9474:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9485:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9470:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9470:18:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "9494:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9502:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "9490:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9490:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9463:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9463:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9463:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "9522:41:16", + "value": { + "arguments": [ + { + "name": "value5", + "nodeType": "YulIdentifier", + "src": "9548:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "9556:6:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "9530:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "9530:33:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9522:4:16" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9583:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9594:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9579:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9579:19:16" + }, + { + "arguments": [ + { + "name": "value6", + "nodeType": "YulIdentifier", + "src": "9604:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "9612:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "9600:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9600:15:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9572:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9572:44:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9572:44:16" + } + ] + }, + "name": "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "9012:9:16", + "type": "" + }, + { + "name": "value6", + "nodeType": "YulTypedName", + "src": "9023:6:16", + "type": "" + }, + { + "name": "value5", + "nodeType": "YulTypedName", + "src": "9031:6:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "9039:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "9047:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "9055:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "9063:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "9071:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "9082:4:16", + "type": "" + } + ], + "src": "8800:822:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9862:363:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9879:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9890:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9872:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9872:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9872:21:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9902:76:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "9943:6:16" + }, + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "9951:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9963:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9974:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9959:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9959:18:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "9916:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "9916:62:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "9906:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9998:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10009:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9994:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "9994:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "10018:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10026:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10014:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10014:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9987:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "9987:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "9987:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10046:64:16", + "value": { + "arguments": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "10087:6:16" + }, + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "10095:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "10103:6:16" + } + ], + "functionName": { + "name": "abi_encode_string_calldata", + "nodeType": "YulIdentifier", + "src": "10060:26:16" + }, + "nodeType": "YulFunctionCall", + "src": "10060:50:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "10050:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10130:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10141:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10126:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10126:18:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "10150:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10158:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10146:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10146:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10119:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10119:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10119:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "10178:41:16", + "value": { + "arguments": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "10204:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "10212:6:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "10186:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "10186:33:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "10178:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "9799:9:16", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "9810:6:16", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "9818:6:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "9826:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "9834:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "9842:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "9853:4:16", + "type": "" + } + ], + "src": "9627:598:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10262:152:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10279:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10282:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10272:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10272:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10272:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10376:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10379:4:16", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10369:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10369:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10369:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10400:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10403:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "10393:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10393:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10393:15:16" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "10230:184:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10472:725:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "10521:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10530:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10533:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "10523:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10523:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10523:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10500:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10508:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10496:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10496:17:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "10515:3:16" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "10492:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10492:27:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "10485:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10485:35:16" + }, + "nodeType": "YulIf", + "src": "10482:55:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10546:30:16", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10569:6:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "10556:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "10556:20:16" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "10550:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10585:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10595:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "10589:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10636:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "10638:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "10638:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10638:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10628:2:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "10632:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10625:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "10625:10:16" + }, + "nodeType": "YulIf", + "src": "10622:36:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10667:76:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10677:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "10671:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10752:23:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10772:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10766:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "10766:9:16" + }, + "variables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "10756:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10784:71:16", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "10806:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10830:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10834:4:16", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10826:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10826:13:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "10841:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "10822:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10822:22:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10846:2:16", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10818:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10818:31:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "10851:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "10814:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10814:40:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10802:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "10802:53:16" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "10788:10:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10914:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "10916:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "10916:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10916:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "10873:10:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "10885:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10870:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "10870:18:16" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "10893:10:16" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "10905:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "10890:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "10890:22:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "10867:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "10867:46:16" + }, + "nodeType": "YulIf", + "src": "10864:72:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10952:2:16", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "10956:10:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10945:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10945:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10945:22:16" + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "10983:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "10991:2:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10976:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "10976:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "10976:18:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11042:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11051:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11054:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "11044:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11044:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11044:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11017:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "11025:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11013:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11013:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11030:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11009:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11009:26:16" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "11037:3:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "11006:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "11006:35:16" + }, + "nodeType": "YulIf", + "src": "11003:55:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "11084:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11092:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11080:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11080:17:16" + }, + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11103:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11111:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11099:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11099:17:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "11118:2:16" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "11067:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "11067:54:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11067:54:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "11145:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "11153:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11141:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11141:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11158:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11137:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11137:26:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11165:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11130:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11130:37:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11130:37:16" + }, + { + "nodeType": "YulAssignment", + "src": "11176:15:16", + "value": { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "11185:6:16" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "11176:5:16" + } + ] + } + ] + }, + "name": "abi_decode_string", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "10446:6:16", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "10454:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "10462:5:16", + "type": "" + } + ], + "src": "10419:778:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11309:436:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "11355:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11364:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11367:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "11357:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11357:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11357:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11330:7:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11339:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "11326:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11326:23:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11351:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "11322:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11322:32:16" + }, + "nodeType": "YulIf", + "src": "11319:52:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11380:37:16", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11407:9:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "11394:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "11394:23:16" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "11384:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11426:28:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11436:18:16", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "11430:2:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11481:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11490:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11493:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "11483:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11483:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11483:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11469:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "11477:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "11466:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "11466:14:16" + }, + "nodeType": "YulIf", + "src": "11463:34:16" + }, + { + "nodeType": "YulAssignment", + "src": "11506:60:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11538:9:16" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11549:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11534:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11534:22:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11558:7:16" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "11516:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "11516:50:16" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11506:6:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11575:48:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11608:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11619:2:16", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11604:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11604:18:16" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "11591:12:16" + }, + "nodeType": "YulFunctionCall", + "src": "11591:32:16" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "11579:8:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11652:16:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11661:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11664:1:16", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "11654:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11654:12:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11654:12:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "11638:8:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "11648:2:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "11635:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "11635:16:16" + }, + "nodeType": "YulIf", + "src": "11632:36:16" + }, + { + "nodeType": "YulAssignment", + "src": "11677:62:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11709:9:16" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "11720:8:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11705:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "11705:24:16" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11731:7:16" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "11687:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "11687:52:16" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "11677:6:16" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "11267:9:16", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "11278:7:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "11290:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "11298:6:16", + "type": "" + } + ], + "src": "11202:543:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11806:65:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11823:1:16", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "11826:3:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11816:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "11816:14:16" + }, + "nodeType": "YulExpressionStatement", + "src": "11816:14:16" + }, + { + "nodeType": "YulAssignment", + "src": "11839:26:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11857:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11860:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "11847:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "11847:18:16" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "11839:4:16" + } + ] + } + ] + }, + "name": "array_dataslot_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "11789:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "11797:4:16", + "type": "" + } + ], + "src": "11750:121:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11957:464:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "11990:425:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "12004:11:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12014:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "12008:2:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12035:2:16" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "12039:5:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12028:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12028:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12028:17:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12058:31:16", + "value": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12080:2:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12084:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "12070:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "12070:19:16" + }, + "variables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "12062:4:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12102:57:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "12125:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12135:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "12142:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12154:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12138:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12138:19:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "12131:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12131:27:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12121:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12121:38:16" + }, + "variables": [ + { + "name": "deleteStart", + "nodeType": "YulTypedName", + "src": "12106:11:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12196:23:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12198:19:16", + "value": { + "name": "data", + "nodeType": "YulIdentifier", + "src": "12213:4:16" + }, + "variableNames": [ + { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "12198:11:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "12178:10:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12190:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "12175:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "12175:20:16" + }, + "nodeType": "YulIf", + "src": "12172:47:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12232:41:16", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "12246:4:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12256:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "12263:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12268:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12259:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12259:12:16" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "12252:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12252:20:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12242:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12242:31:16" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "12236:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12286:24:16", + "value": { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "12299:11:16" + }, + "variables": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "12290:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12384:21:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "12393:5:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "12400:2:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "12386:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "12386:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12386:17:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "12334:5:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "12341:2:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "12331:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "12331:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "12345:26:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12347:22:16", + "value": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "12360:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12367:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12356:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12356:13:16" + }, + "variableNames": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "12347:5:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "12327:3:16", + "statements": [] + }, + "src": "12323:82:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "11973:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11978:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "11970:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "11970:11:16" + }, + "nodeType": "YulIf", + "src": "11967:448:16" + } + ] + }, + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "11929:5:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "11936:3:16", + "type": "" + }, + { + "name": "startIndex", + "nodeType": "YulTypedName", + "src": "11941:10:16", + "type": "" + } + ], + "src": "11876:545:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12511:141:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12521:125:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "12536:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12554:1:16", + "type": "", + "value": "3" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "12557:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "12550:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12550:11:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12563:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "12546:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12546:84:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "12542:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12542:89:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "12532:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12532:100:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12638:1:16", + "type": "", + "value": "1" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "12641:3:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "12634:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "12634:11:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "12529:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "12529:117:16" + }, + "variableNames": [ + { + "name": "used", + "nodeType": "YulIdentifier", + "src": "12521:4:16" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "12488:4:16", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "12494:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nodeType": "YulTypedName", + "src": "12502:4:16", + "type": "" + } + ], + "src": "12426:226:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12753:1375:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "12763:24:16", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "12783:3:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12777:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "12777:10:16" + }, + "variables": [ + { + "name": "newLen", + "nodeType": "YulTypedName", + "src": "12767:6:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12830:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "12832:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "12832:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12832:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "12802:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12810:18:16", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "12799:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "12799:30:16" + }, + "nodeType": "YulIf", + "src": "12796:56:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "12905:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "12943:4:16" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "12937:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "12937:11:16" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "12911:25:16" + }, + "nodeType": "YulFunctionCall", + "src": "12911:38:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "12951:6:16" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulIdentifier", + "src": "12861:43:16" + }, + "nodeType": "YulFunctionCall", + "src": "12861:97:16" + }, + "nodeType": "YulExpressionStatement", + "src": "12861:97:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12967:18:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12984:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nodeType": "YulTypedName", + "src": "12971:9:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "12994:23:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13013:4:16", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "srcOffset_1", + "nodeType": "YulTypedName", + "src": "12998:11:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "13026:24:16", + "value": { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "13039:11:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "13026:9:16" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "13096:775:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13110:94:16", + "value": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "13129:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13137:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "13125:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13125:79:16" + }, + "variables": [ + { + "name": "loopEnd", + "nodeType": "YulTypedName", + "src": "13114:7:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13217:49:16", + "value": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "13261:4:16" + } + ], + "functionName": { + "name": "array_dataslot_string_storage", + "nodeType": "YulIdentifier", + "src": "13231:29:16" + }, + "nodeType": "YulFunctionCall", + "src": "13231:35:16" + }, + "variables": [ + { + "name": "dstPtr", + "nodeType": "YulTypedName", + "src": "13221:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13279:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13288:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "13283:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13366:172:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "13391:6:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "13409:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "13414:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13405:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13405:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13399:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "13399:26:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "13384:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "13384:42:16" + }, + "nodeType": "YulExpressionStatement", + "src": "13384:42:16" + }, + { + "nodeType": "YulAssignment", + "src": "13443:24:16", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "13457:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13465:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13453:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13453:14:16" + }, + "variableNames": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "13443:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "13484:40:16", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "13501:9:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "13512:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13497:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13497:27:16" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "13484:9:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "13313:1:16" + }, + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "13316:7:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "13310:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "13310:14:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "13325:28:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13327:24:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "13336:1:16" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "13339:11:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13332:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13332:19:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "13327:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "13306:3:16", + "statements": [] + }, + "src": "13302:236:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13586:226:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13604:43:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "13631:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "13636:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13627:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13627:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13621:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "13621:26:16" + }, + "variables": [ + { + "name": "lastValue", + "nodeType": "YulTypedName", + "src": "13608:9:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "13671:6:16" + }, + { + "arguments": [ + { + "name": "lastValue", + "nodeType": "YulIdentifier", + "src": "13683:9:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13710:1:16", + "type": "", + "value": "3" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "13713:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "13706:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13706:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13722:3:16", + "type": "", + "value": "248" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "13702:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13702:24:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13728:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "13698:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13698:97:16" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "13694:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13694:102:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "13679:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13679:118:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "13664:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "13664:134:16" + }, + "nodeType": "YulExpressionStatement", + "src": "13664:134:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "13557:7:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "13566:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "13554:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "13554:19:16" + }, + "nodeType": "YulIf", + "src": "13551:261:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "13832:4:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13846:1:16", + "type": "", + "value": "1" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "13849:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "13842:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13842:14:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13858:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13838:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13838:22:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "13825:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "13825:36:16" + }, + "nodeType": "YulExpressionStatement", + "src": "13825:36:16" + } + ] + }, + "nodeType": "YulCase", + "src": "13089:782:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13094:1:16", + "type": "", + "value": "1" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13888:234:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13902:14:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13915:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13906:5:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13951:67:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13969:35:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "13988:3:16" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "13993:9:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13984:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "13984:19:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13978:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "13978:26:16" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13969:5:16" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "13932:6:16" + }, + "nodeType": "YulIf", + "src": "13929:89:16" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "14038:4:16" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14097:5:16" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "14104:6:16" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulIdentifier", + "src": "14044:52:16" + }, + "nodeType": "YulFunctionCall", + "src": "14044:67:16" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "14031:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14031:81:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14031:81:16" + } + ] + }, + "nodeType": "YulCase", + "src": "13880:242:16", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "13069:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13077:2:16", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "13066:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "13066:14:16" + }, + "nodeType": "YulSwitch", + "src": "13059:1063:16" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nodeType": "YulTypedName", + "src": "12738:4:16", + "type": "" + }, + { + "name": "src", + "nodeType": "YulTypedName", + "src": "12744:3:16", + "type": "" + } + ], + "src": "12657:1471:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14252:145:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14269:3:16" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14282:2:16", + "type": "", + "value": "96" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "14286:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "14278:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14278:15:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14295:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "14274:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14274:88:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14262:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14262:101:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14262:101:16" + }, + { + "nodeType": "YulAssignment", + "src": "14372:19:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14383:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14388:2:16", + "type": "", + "value": "20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14379:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14379:12:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "14372:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_address__to_t_address__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "14228:3:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "14233:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "14244:3:16", + "type": "" + } + ], + "src": "14133:264:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14434:152:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14451:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14454:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14444:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14444:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14444:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14548:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14551:4:16", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14541:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14541:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14541:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14572:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14575:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "14565:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14565:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14565:15:16" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "14402:184:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14623:152:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14640:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14643:77:16", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14633:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14633:88:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14633:88:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14737:1:16", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14740:4:16", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14730:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14730:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14730:15:16" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14761:1:16", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14764:4:16", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "14754:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14754:15:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14754:15:16" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "14591:184:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14832:116:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "14842:20:16", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "14857:1:16" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "14860:1:16" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "14853:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14853:9:16" + }, + "variableNames": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "14842:7:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14920:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "14922:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "14922:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "14922:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "14891:1:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "14884:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14884:9:16" + }, + { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "14898:1:16" + }, + { + "arguments": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "14905:7:16" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "14914:1:16" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "14901:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "14901:15:16" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "14895:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "14895:22:16" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "14881:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "14881:37:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "14874:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "14874:45:16" + }, + "nodeType": "YulIf", + "src": "14871:71:16" + } + ] + }, + "name": "checked_mul_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "14811:1:16", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "14814:1:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "product", + "nodeType": "YulTypedName", + "src": "14820:7:16", + "type": "" + } + ], + "src": "14780:168:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15001:77:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "15011:16:16", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "15022:1:16" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "15025:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15018:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15018:9:16" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "15011:3:16" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15050:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "15052:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "15052:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15052:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "15042:1:16" + }, + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "15045:3:16" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "15039:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "15039:10:16" + }, + "nodeType": "YulIf", + "src": "15036:36:16" + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "14984:1:16", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "14987:1:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "14993:3:16", + "type": "" + } + ], + "src": "14953:125:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15130:148:16", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "15221:22:16", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "15223:16:16" + }, + "nodeType": "YulFunctionCall", + "src": "15223:18:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15223:18:16" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "15146:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15153:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "15143:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "15143:77:16" + }, + "nodeType": "YulIf", + "src": "15140:103:16" + }, + { + "nodeType": "YulAssignment", + "src": "15252:20:16", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "15263:5:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15270:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15259:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15259:13:16" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "15252:3:16" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "15112:5:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nodeType": "YulTypedName", + "src": "15122:3:16", + "type": "" + } + ], + "src": "15083:195:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15495:1110:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15512:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15523:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15505:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15505:21:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15505:21:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "15535:12:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15546:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "ret", + "nodeType": "YulTypedName", + "src": "15539:3:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "15556:30:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "15579:6:16" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "15573:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "15573:13:16" + }, + "variables": [ + { + "name": "slotValue", + "nodeType": "YulTypedName", + "src": "15560:9:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "15595:50:16", + "value": { + "arguments": [ + { + "name": "slotValue", + "nodeType": "YulIdentifier", + "src": "15635:9:16" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "15609:25:16" + }, + "nodeType": "YulFunctionCall", + "src": "15609:36:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "15599:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15665:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15676:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15661:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15661:18:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "15681:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15654:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15654:34:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15654:34:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "15697:13:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15707:3:16", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "15701:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "15719:11:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15729:1:16", + "type": "", + "value": "1" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "15723:2:16", + "type": "" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "15780:209:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15805:9:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "15816:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15801:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15801:18:16" + }, + { + "arguments": [ + { + "name": "slotValue", + "nodeType": "YulIdentifier", + "src": "15825:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15836:66:16", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "15821:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15821:82:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15794:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15794:110:16" + }, + "nodeType": "YulExpressionStatement", + "src": "15794:110:16" + }, + { + "nodeType": "YulAssignment", + "src": "15917:62:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15932:9:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15947:1:16", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "15964:6:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "15957:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15957:14:16" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "15950:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "15950:22:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "15943:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15943:30:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15928:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15928:46:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "15976:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15924:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15924:55:16" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "15917:3:16" + } + ] + } + ] + }, + "nodeType": "YulCase", + "src": "15773:216:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15778:1:16", + "type": "", + "value": "0" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16005:374:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16026:1:16", + "type": "", + "value": "0" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "16029:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16019:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16019:17:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16019:17:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16049:14:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16059:4:16", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "16053:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16076:31:16", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16101:1:16", + "type": "", + "value": "0" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "16104:2:16" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "16091:9:16" + }, + "nodeType": "YulFunctionCall", + "src": "16091:16:16" + }, + "variables": [ + { + "name": "dataPos", + "nodeType": "YulTypedName", + "src": "16080:7:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16120:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16129:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "16124:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16197:126:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16230:9:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16241:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16226:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16226:17:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "16245:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16222:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16222:26:16" + }, + { + "arguments": [ + { + "name": "dataPos", + "nodeType": "YulIdentifier", + "src": "16256:7:16" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "16250:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "16250:14:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16215:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16215:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16215:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "16282:27:16", + "value": { + "arguments": [ + { + "name": "dataPos", + "nodeType": "YulIdentifier", + "src": "16297:7:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "16306:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16293:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16293:16:16" + }, + "variableNames": [ + { + "name": "dataPos", + "nodeType": "YulIdentifier", + "src": "16282:7:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16154:1:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16157:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "16151:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "16151:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "16165:19:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "16167:15:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16176:1:16" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "16179:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16172:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16172:10:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16167:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "16147:3:16", + "statements": [] + }, + "src": "16143:180:16" + }, + { + "nodeType": "YulAssignment", + "src": "16336:33:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16351:9:16" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16362:1:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16347:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16347:17:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "16366:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16343:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16343:26:16" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "16336:3:16" + } + ] + } + ] + }, + "nodeType": "YulCase", + "src": "15998:381:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16003:1:16", + "type": "", + "value": "1" + } + } + ], + "expression": { + "arguments": [ + { + "name": "slotValue", + "nodeType": "YulIdentifier", + "src": "15750:9:16" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "15761:2:16" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "15746:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "15746:18:16" + }, + "nodeType": "YulSwitch", + "src": "15739:640:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16399:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16410:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16395:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16395:20:16" + }, + { + "arguments": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "16421:3:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16426:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "16417:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16417:19:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16388:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16388:49:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16388:49:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16446:44:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "16478:6:16" + }, + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "16486:3:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "16460:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "16460:30:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "16450:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16510:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16521:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16506:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16506:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "16530:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16538:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "16526:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16526:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16499:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16499:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16499:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "16558:41:16", + "value": { + "arguments": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "16584:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "16592:6:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "16566:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "16566:33:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "16558:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_string_storage_t_string_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "15448:9:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "15459:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "15467:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "15475:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "15486:4:16", + "type": "" + } + ], + "src": "15283:1322:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16670:556:16", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "16680:26:16", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "16700:5:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "16694:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "16694:12:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "16684:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16722:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16727:6:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16715:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "16715:19:16" + }, + "nodeType": "YulExpressionStatement", + "src": "16715:19:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16743:14:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16753:4:16", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "16747:2:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16766:31:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16789:3:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "16794:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16785:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16785:12:16" + }, + "variables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "16770:11:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16806:24:16", + "value": { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "16819:11:16" + }, + "variables": [ + { + "name": "pos_1", + "nodeType": "YulTypedName", + "src": "16810:5:16", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "16839:18:16", + "value": { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "16846:11:16" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16839:3:16" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16866:38:16", + "value": { + "arguments": [ + { + "name": "pos_1", + "nodeType": "YulIdentifier", + "src": "16882:5:16" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16893:1:16", + "type": "", + "value": "5" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16896:6:16" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "16889:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16889:14:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16878:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16878:26:16" + }, + "variables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "16870:4:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16913:28:16", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "16931:5:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "16938:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16927:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16927:14:16" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "16917:6:16", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16950:10:16", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16959:1:16", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "16954:1:16", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17018:182:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17039:3:16" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17048:4:16" + }, + { + "name": "pos_1", + "nodeType": "YulIdentifier", + "src": "17054:5:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "17044:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17044:16:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17032:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "17032:29:16" + }, + "nodeType": "YulExpressionStatement", + "src": "17032:29:16" + }, + { + "nodeType": "YulAssignment", + "src": "17074:46:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "17106:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "17100:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "17100:13:16" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17115:4:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "17082:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "17082:38:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17074:4:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "17133:25:16", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "17147:6:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "17155:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17143:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17143:15:16" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "17133:6:16" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "17171:19:16", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17182:3:16" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "17187:2:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17178:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17178:12:16" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17171:3:16" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16980:1:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16983:6:16" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "16977:2:16" + }, + "nodeType": "YulFunctionCall", + "src": "16977:13:16" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "16991:18:16", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "16993:14:16", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "17002:1:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17005:1:16", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16998:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "16998:9:16" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16993:1:16" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "16973:3:16", + "statements": [] + }, + "src": "16969:231:16" + }, + { + "nodeType": "YulAssignment", + "src": "17209:11:16", + "value": { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17216:4:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "17209:3:16" + } + ] + } + ] + }, + "name": "abi_encode_array_string_dyn", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "16647:5:16", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "16654:3:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "16662:3:16", + "type": "" + } + ], + "src": "16610:616:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17647:492:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17664:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17675:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17657:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "17657:22:16" + }, + "nodeType": "YulExpressionStatement", + "src": "17657:22:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17699:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17710:3:16", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17695:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17695:19:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17716:2:16", + "type": "", + "value": "19" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17688:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "17688:31:16" + }, + "nodeType": "YulExpressionStatement", + "src": "17688:31:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17739:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17750:3:16", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17735:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17735:19:16" + }, + { + "hexValue": "726563656976655f6d6573736167655f65766d", + "kind": "string", + "nodeType": "YulLiteral", + "src": "17756:21:16", + "type": "", + "value": "receive_message_evm" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17728:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "17728:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "17728:50:16" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17798:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17809:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17794:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17794:20:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17816:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17787:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "17787:33:16" + }, + "nodeType": "YulExpressionStatement", + "src": "17787:33:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "17829:70:16", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "17871:6:16" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17883:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17894:3:16", + "type": "", + "value": "192" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17879:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17879:19:16" + } + ], + "functionName": { + "name": "abi_encode_array_string_dyn", + "nodeType": "YulIdentifier", + "src": "17843:27:16" + }, + "nodeType": "YulFunctionCall", + "src": "17843:56:16" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "17833:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17919:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17930:2:16", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17915:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17915:18:16" + }, + { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "17939:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17947:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "17935:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "17935:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17908:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "17908:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "17908:50:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "17967:57:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "18009:6:16" + }, + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "18017:6:16" + } + ], + "functionName": { + "name": "abi_encode_array_string_dyn", + "nodeType": "YulIdentifier", + "src": "17981:27:16" + }, + "nodeType": "YulFunctionCall", + "src": "17981:43:16" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "17971:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18044:9:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18055:2:16", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18040:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "18040:18:16" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "18064:6:16" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18072:9:16" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "18060:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "18060:22:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18033:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "18033:50:16" + }, + "nodeType": "YulExpressionStatement", + "src": "18033:50:16" + }, + { + "nodeType": "YulAssignment", + "src": "18092:41:16", + "value": { + "arguments": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "18118:6:16" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "18126:6:16" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "18100:17:16" + }, + "nodeType": "YulFunctionCall", + "src": "18100:33:16" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "18092:4:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "17600:9:16", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "17611:6:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "17619:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "17627:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "17638:4:16", + "type": "" + } + ], + "src": "17231:908:16" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18307:267:16", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18324:3:16" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "18333:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18341:66:16", + "type": "", + "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "18329:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "18329:79:16" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18317:6:16" + }, + "nodeType": "YulFunctionCall", + "src": "18317:92:16" + }, + "nodeType": "YulExpressionStatement", + "src": "18317:92:16" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "18418:27:16", + "value": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "18438:6:16" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "18432:5:16" + }, + "nodeType": "YulFunctionCall", + "src": "18432:13:16" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "18422:6:16", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "18493:6:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18501:4:16", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18489:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "18489:17:16" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18512:3:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18517:1:16", + "type": "", + "value": "4" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18508:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "18508:11:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "18521:6:16" + } + ], + "functionName": { + "name": "copy_memory_to_memory_with_cleanup", + "nodeType": "YulIdentifier", + "src": "18454:34:16" + }, + "nodeType": "YulFunctionCall", + "src": "18454:74:16" + }, + "nodeType": "YulExpressionStatement", + "src": "18454:74:16" + }, + { + "nodeType": "YulAssignment", + "src": "18537:31:16", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18552:3:16" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "18557:6:16" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18548:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "18548:16:16" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18566:1:16", + "type": "", + "value": "4" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18544:3:16" + }, + "nodeType": "YulFunctionCall", + "src": "18544:24:16" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "18537:3:16" + } + ] + } + ] + }, + "name": "abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "18275:3:16", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "18280:6:16", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "18288:6:16", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "18299:3:16", + "type": "" + } + ], + "src": "18144:430:16" + } + ] + }, + "contents": "{\n { }\n function abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_string_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7, value8, value9\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n let offset_3 := calldataload(add(headStart, 128))\n if gt(offset_3, _1) { revert(0, 0) }\n let value7_1, value8_1 := abi_decode_string_calldata(add(headStart, offset_3), dataEnd)\n value7 := value7_1\n value8 := value8_1\n value9 := calldataload(add(headStart, 160))\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n }\n function abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptrt_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value2 := value2_1\n value3 := value3_1\n let offset_2 := calldataload(add(headStart, 64))\n if gt(offset_2, _1) { revert(0, 0) }\n let value4_1, value5_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value4 := value4_1\n value5 := value5_1\n }\n function abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string(value1, tail_1)\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 192)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value6, value7, tail_2)\n mstore(add(headStart, 160), value8)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 128)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 128))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n }\n function abi_encode_tuple_t_string_memory_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value1, value2, tail_1)\n }\n function abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed(headStart, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), 160)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 160))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), sub(tail_2, headStart))\n tail := abi_encode_string(value5, tail_2)\n mstore(add(headStart, 128), and(value6, _1))\n }\n function abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string_calldata(value0, value1, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value2, value3, tail_1)\n mstore(add(headStart, 64), sub(tail_2, headStart))\n tail := abi_encode_string(value4, tail_2)\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_string(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_string(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_packed_t_address__to_t_address__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n mstore(pos, and(shl(96, value0), 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000))\n end := add(pos, 20)\n }\n function panic_error_0x32()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function panic_error_0x11()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_string_storage_t_string_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let ret := 0\n let slotValue := sload(value0)\n let length := extract_byte_array_length(slotValue)\n mstore(add(headStart, 96), length)\n let _1 := 128\n let _2 := 1\n switch and(slotValue, _2)\n case 0 {\n mstore(add(headStart, _1), and(slotValue, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00))\n ret := add(add(headStart, shl(5, iszero(iszero(length)))), _1)\n }\n case 1 {\n mstore(0, value0)\n let _3 := 0x20\n let dataPos := keccak256(0, _3)\n let i := 0\n for { } lt(i, length) { i := add(i, _3) }\n {\n mstore(add(add(headStart, i), _1), sload(dataPos))\n dataPos := add(dataPos, _2)\n }\n ret := add(add(headStart, i), _1)\n }\n mstore(add(headStart, 0x20), sub(ret, headStart))\n let tail_1 := abi_encode_string(value1, ret)\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string(value2, tail_1)\n }\n function abi_encode_array_string_dyn(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let _1 := 0x20\n let updated_pos := add(pos, _1)\n let pos_1 := updated_pos\n pos := updated_pos\n let tail := add(pos_1, shl(5, length))\n let srcPtr := add(value, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, pos_1))\n tail := abi_encode_string(mload(srcPtr), tail)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n end := tail\n }\n function abi_encode_tuple_t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 128)\n mstore(add(headStart, 128), 19)\n mstore(add(headStart, 160), \"receive_message_evm\")\n mstore(add(headStart, 0x20), 192)\n let tail_1 := abi_encode_array_string_dyn(value0, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_array_string_dyn(value1, tail_1)\n mstore(add(headStart, 96), sub(tail_2, headStart))\n tail := abi_encode_string(value2, tail_2)\n }\n function abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, and(value0, 0xffffffff00000000000000000000000000000000000000000000000000000000))\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 4), length)\n end := add(add(pos, length), 4)\n }\n}", + "id": 16, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": { + "10": [ + { + "length": 32, + "start": 135 + }, + { + "length": 32, + "start": 504 + }, + { + "length": 32, + "start": 936 + }, + { + "length": 32, + "start": 1415 + } + ], + "2131": [ + { + "length": 32, + "start": 348 + }, + { + "length": 32, + "start": 1207 + } + ] + }, + "linkReferences": {}, + "object": "6080604052600436106100705760003560e01c8063491606581161004e57806349160658146101175780635615264d146101375780636a22d8cc1461014a578063b2f6cbbe1461017e57600080fd5b8063116191b6146100755780631a98b2e0146100d35780631c93b03a146100f5575b600080fd5b34801561008157600080fd5b506100a97f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156100df57600080fd5b506100f36100ee366004610dac565b6101a1565b005b34801561010157600080fd5b5061010a6102c3565b6040516100ca9190610ed6565b34801561012357600080fd5b506100f3610132366004610ef0565b610351565b6100f3610145366004610f94565b610478565b34801561015657600080fd5b506100a97f000000000000000000000000000000000000000000000000000000000000000081565b34801561018a57600080fd5b50610193610603565b6040516100ca92919061102e565b600085856040516101b392919061105c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed99061023d908e908e908e908e908e9089908d908d908d90600401611097565b6020604051808303816000875af115801561025c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028091906110f6565b6102b6576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600080546102d090611118565b80601f01602080910402602001604051908101604052809291908181526020018280546102fc90611118565b80156103495780601f1061031e57610100808354040283529160200191610349565b820191906000526020600020905b81548152906001019060200180831161032c57829003601f168201915b505050505081565b6000828260405161036392919061105c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906103e7908b908b908b908b908b90899060040161116b565b6020604051808303816000875af1158015610406573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061042a91906110f6565b610460576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61046e878787878787610723565b5050505050505050565b60006104833361076d565b8383604051602001610497939291906111ac565b604051602081830303815290604052905060006104b382610a6f565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16630c93e3bb34308b8b8b8b88336040518963ffffffff1660e01b815260040161051b97969594939291906111dc565b6000604051808303818588803b15801561053457600080fd5b505af1158015610548573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506105c791508b908b908b908b90889060040161124c565b600060405180830381600087803b1580156105e157600080fd5b505af11580156105f5573d6000803e3d6000fd5b505050505050505050505050565b60018054819061061290611118565b80601f016020809104026020016040519081016040528092919081815260200182805461063e90611118565b801561068b5780601f106106605761010080835404028352916020019161068b565b820191906000526020600020905b81548152906001019060200180831161066e57829003601f168201915b5050505050908060010180546106a090611118565b80601f01602080910402602001604051908101604052809291908181526020018280546106cc90611118565b80156107195780601f106106ee57610100808354040283529160200191610719565b820191906000526020600020905b8154815290600101906020018083116106fc57829003601f168201915b5050505050905082565b6000806107328385018561134f565b604080518082019091528281526020810182905291935091506001806107588582611402565b50602082015160018201906102b69082611402565b604051606082811b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660208301529060009060340160408051808303601f190181528282018252601083527f303132333435363738396162636465660000000000000000000000000000000060208401528151602a808252606082019093529093506000916020820181803683370190505090507f300000000000000000000000000000000000000000000000000000000000000081600081518110610836576108366114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110610899576108996114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060005b6014811015610a66578260048583815181106108e9576108e96114fe565b016020015182517fff0000000000000000000000000000000000000000000000000000000000000090911690911c60f81c908110610929576109296114fe565b01602001517fff00000000000000000000000000000000000000000000000000000000000000168261095c83600261155c565b610967906002611579565b81518110610977576109776114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350828482815181106109b9576109b96114fe565b602091010151815160f89190911c600f169081106109d9576109d96114fe565b01602001517fff000000000000000000000000000000000000000000000000000000000000001682610a0c83600261155c565b610a17906003611579565b81518110610a2757610a276114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610a5f8161158c565b90506108cb565b50949350505050565b6060600080610a7d3061076d565b84604051602001610a90939291906115c4565b60408051808303601f19018152600380845260808401909252925060009190816020015b6060815260200190600190039081610ab45790505090506040518060400160405280600c81526020017f736f757263655f636861696e000000000000000000000000000000000000000081525081600081518110610b1457610b146114fe565b60200260200101819052506040518060400160405280600e81526020017f736f757263655f6164647265737300000000000000000000000000000000000081525081600181518110610b6857610b686114fe565b60200260200101819052506040518060400160405280600781526020017f7061796c6f61640000000000000000000000000000000000000000000000000081525081600281518110610bbc57610bbc6114fe565b602090810291909101015260408051600380825260808201909252600091816020015b6060815260200190600190039081610bdf5790505090506040518060400160405280600681526020017f737472696e67000000000000000000000000000000000000000000000000000081525081600081518110610c3f57610c3f6114fe565b60200260200101819052506040518060400160405280600681526020017f737472696e67000000000000000000000000000000000000000000000000000081525081600181518110610c9357610c936114fe565b60200260200101819052506040518060400160405280600581526020017f627974657300000000000000000000000000000000000000000000000000000081525081600281518110610ce757610ce76114fe565b60200260200101819052506060828285604051602001610d09939291906116e1565b60408051601f19818403018152908290529150610d49907c010000000000000000000000000000000000000000000000000000000090839060200161174e565b604051602081830303815290604052945050505050919050565b60008083601f840112610d7557600080fd5b50813567ffffffffffffffff811115610d8d57600080fd5b602083019150836020828501011115610da557600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610dcb57600080fd5b8a35995060208b013567ffffffffffffffff80821115610dea57600080fd5b610df68e838f01610d63565b909b50995060408d0135915080821115610e0f57600080fd5b610e1b8e838f01610d63565b909950975060608d0135915080821115610e3457600080fd5b610e408e838f01610d63565b909750955060808d0135915080821115610e5957600080fd5b50610e668d828e01610d63565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b83811015610ea1578181015183820152602001610e89565b50506000910152565b60008151808452610ec2816020860160208601610e86565b601f01601f19169290920160200192915050565b602081526000610ee96020830184610eaa565b9392505050565b60008060008060008060006080888a031215610f0b57600080fd5b87359650602088013567ffffffffffffffff80821115610f2a57600080fd5b610f368b838c01610d63565b909850965060408a0135915080821115610f4f57600080fd5b610f5b8b838c01610d63565b909650945060608a0135915080821115610f7457600080fd5b50610f818a828b01610d63565b989b979a50959850939692959293505050565b60008060008060008060608789031215610fad57600080fd5b863567ffffffffffffffff80821115610fc557600080fd5b610fd18a838b01610d63565b90985096506020890135915080821115610fea57600080fd5b610ff68a838b01610d63565b9096509450604089013591508082111561100f57600080fd5b5061101c89828a01610d63565b979a9699509497509295939492505050565b6040815260006110416040830185610eaa565b82810360208401526110538185610eaa565b95945050505050565b8183823760009101908152919050565b818352818160208501375060006020828401015260006020601f19601f840116840101905092915050565b89815260c0602082015260006110b160c083018a8c61106c565b82810360408401526110c481898b61106c565b905086606084015282810360808401526110df81868861106c565b9150508260a08301529a9950505050505050505050565b60006020828403121561110857600080fd5b81518015158114610ee957600080fd5b600181811c9082168061112c57607f821691505b602082108103611165577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600061118560808301878961106c565b828103604084015261119881868861106c565b915050826060830152979650505050505050565b6040815260006111bf6040830186610eaa565b82810360208401526111d281858761106c565b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a0602084015261120d60a08401898b61106c565b838103604085015261122081888a61106c565b905083810360608501526112348187610eaa565b92505080841660808401525098975050505050505050565b60608152600061126060608301878961106c565b828103602084015261127381868861106c565b905082810360408401526112878185610eaa565b98975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f8301126112d357600080fd5b813567ffffffffffffffff808211156112ee576112ee611293565b604051601f8301601f19908116603f0116810190828211818310171561131657611316611293565b8160405283815286602085880101111561132f57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561136257600080fd5b823567ffffffffffffffff8082111561137a57600080fd5b611386868387016112c2565b9350602085013591508082111561139c57600080fd5b506113a9858286016112c2565b9150509250929050565b601f8211156113fd57600081815260208120601f850160051c810160208610156113da5750805b601f850160051c820191505b818110156113f9578281556001016113e6565b5050505b505050565b815167ffffffffffffffff81111561141c5761141c611293565b6114308161142a8454611118565b846113b3565b602080601f831160018114611483576000841561144d5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556113f9565b600085815260208120601f198616915b828110156114b257888601518255948401946001909101908401611493565b50858210156114ee57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176115735761157361152d565b92915050565b808201808211156115735761157361152d565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036115bd576115bd61152d565b5060010190565b6060815260008085546115d681611118565b80606086015260806001808416600081146115f8576001811461163057611661565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008516838901528284151560051b8901019550611661565b8a60005260208060002060005b868110156116585781548b820187015290840190820161163d565b8a018501975050505b505050505082810360208401526116788186610eaa565b905082810360408401526111d28185610eaa565b600081518084526020808501808196508360051b8101915082860160005b858110156116d45782840389526116c2848351610eaa565b988501989350908401906001016116aa565b5091979650505050505050565b60808152601360808201527f726563656976655f6d6573736167655f65766d0000000000000000000000000060a082015260c06020820152600061172860c083018661168c565b828103604084015261173a818661168c565b905082810360608401526111d28185610eaa565b7fffffffff000000000000000000000000000000000000000000000000000000008316815260008251611788816004850160208701610e86565b91909101600401939250505056fea2646970667358221220889273e6bea1307b8d9bac0f5ee0f7d320b227ded625d279374d9e4ebf1f931164736f6c63430008140033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x70 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x117 JUMPI DUP1 PUSH4 0x5615264D EQ PUSH2 0x137 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x14A JUMPI DUP1 PUSH4 0xB2F6CBBE EQ PUSH2 0x17E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0x75 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0xD3 JUMPI DUP1 PUSH4 0x1C93B03A EQ PUSH2 0xF5 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x81 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA9 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xDF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF3 PUSH2 0xEE CALLDATASIZE PUSH1 0x4 PUSH2 0xDAC JUMP JUMPDEST PUSH2 0x1A1 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x101 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10A PUSH2 0x2C3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCA SWAP2 SWAP1 PUSH2 0xED6 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x123 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF3 PUSH2 0x132 CALLDATASIZE PUSH1 0x4 PUSH2 0xEF0 JUMP JUMPDEST PUSH2 0x351 JUMP JUMPDEST PUSH2 0xF3 PUSH2 0x145 CALLDATASIZE PUSH1 0x4 PUSH2 0xF94 JUMP JUMPDEST PUSH2 0x478 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x156 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA9 PUSH32 0x0 DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x193 PUSH2 0x603 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCA SWAP3 SWAP2 SWAP1 PUSH2 0x102E JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x1B3 SWAP3 SWAP2 SWAP1 PUSH2 0x105C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x23D SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x1097 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x25C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x10F6 JUMP JUMPDEST PUSH2 0x2B6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH2 0x2D0 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2FC SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x349 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x31E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x349 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x32C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x363 SWAP3 SWAP2 SWAP1 PUSH2 0x105C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x3E7 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x116B JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x406 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x42A SWAP2 SWAP1 PUSH2 0x10F6 JUMP JUMPDEST PUSH2 0x460 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x46E DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x723 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x483 CALLER PUSH2 0x76D JUMP JUMPDEST DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x497 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x11AC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH1 0x0 PUSH2 0x4B3 DUP3 PUSH2 0xA6F JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC93E3BB CALLVALUE ADDRESS DUP12 DUP12 DUP12 DUP12 DUP9 CALLER PUSH1 0x40 MLOAD DUP10 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x51B SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x11DC JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x534 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x548 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH32 0x1C92115F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP4 POP PUSH4 0x1C92115F SWAP3 POP PUSH2 0x5C7 SWAP2 POP DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x124C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5E1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x5F5 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP1 SLOAD DUP2 SWAP1 PUSH2 0x612 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x63E SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x68B JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x660 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x68B JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x66E JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 DUP1 PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x6A0 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x6CC SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x719 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x719 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x732 DUP4 DUP6 ADD DUP6 PUSH2 0x134F JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP3 SWAP1 MSTORE SWAP2 SWAP4 POP SWAP2 POP PUSH1 0x1 DUP1 PUSH2 0x758 DUP6 DUP3 PUSH2 0x1402 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH1 0x1 DUP3 ADD SWAP1 PUSH2 0x2B6 SWAP1 DUP3 PUSH2 0x1402 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x60 DUP3 DUP2 SHL PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000 AND PUSH1 0x20 DUP4 ADD MSTORE SWAP1 PUSH1 0x0 SWAP1 PUSH1 0x34 ADD PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB PUSH1 0x1F NOT ADD DUP2 MSTORE DUP3 DUP3 ADD DUP3 MSTORE PUSH1 0x10 DUP4 MSTORE PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0x20 DUP5 ADD MSTORE DUP2 MLOAD PUSH1 0x2A DUP1 DUP3 MSTORE PUSH1 0x60 DUP3 ADD SWAP1 SWAP4 MSTORE SWAP1 SWAP4 POP PUSH1 0x0 SWAP2 PUSH1 0x20 DUP3 ADD DUP2 DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP POP SWAP1 POP PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x836 JUMPI PUSH2 0x836 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH32 0x7800000000000000000000000000000000000000000000000000000000000000 DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x899 JUMPI PUSH2 0x899 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 JUMPDEST PUSH1 0x14 DUP2 LT ISZERO PUSH2 0xA66 JUMPI DUP3 PUSH1 0x4 DUP6 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x8E9 JUMPI PUSH2 0x8E9 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD DUP3 MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 SWAP1 SWAP2 AND SWAP1 SWAP2 SHR PUSH1 0xF8 SHR SWAP1 DUP2 LT PUSH2 0x929 JUMPI PUSH2 0x929 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 AND DUP3 PUSH2 0x95C DUP4 PUSH1 0x2 PUSH2 0x155C JUMP JUMPDEST PUSH2 0x967 SWAP1 PUSH1 0x2 PUSH2 0x1579 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x977 JUMPI PUSH2 0x977 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP3 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x9B9 JUMPI PUSH2 0x9B9 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 SWAP2 ADD ADD MLOAD DUP2 MLOAD PUSH1 0xF8 SWAP2 SWAP1 SWAP2 SHR PUSH1 0xF AND SWAP1 DUP2 LT PUSH2 0x9D9 JUMPI PUSH2 0x9D9 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 AND DUP3 PUSH2 0xA0C DUP4 PUSH1 0x2 PUSH2 0x155C JUMP JUMPDEST PUSH2 0xA17 SWAP1 PUSH1 0x3 PUSH2 0x1579 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0xA27 JUMPI PUSH2 0xA27 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH2 0xA5F DUP2 PUSH2 0x158C JUMP JUMPDEST SWAP1 POP PUSH2 0x8CB JUMP JUMPDEST POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0xA7D ADDRESS PUSH2 0x76D JUMP JUMPDEST DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xA90 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x15C4 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB PUSH1 0x1F NOT ADD DUP2 MSTORE PUSH1 0x3 DUP1 DUP5 MSTORE PUSH1 0x80 DUP5 ADD SWAP1 SWAP3 MSTORE SWAP3 POP PUSH1 0x0 SWAP2 SWAP1 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xAB4 JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xC DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x736F757263655F636861696E0000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xB14 JUMPI PUSH2 0xB14 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xE DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x736F757263655F61646472657373000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xB68 JUMPI PUSH2 0xB68 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x7061796C6F616400000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xBBC JUMPI PUSH2 0xBBC PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x40 DUP1 MLOAD PUSH1 0x3 DUP1 DUP3 MSTORE PUSH1 0x80 DUP3 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xBDF JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x737472696E670000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xC3F JUMPI PUSH2 0xC3F PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x737472696E670000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xC93 JUMPI PUSH2 0xC93 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x6279746573000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xCE7 JUMPI PUSH2 0xCE7 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x60 DUP3 DUP3 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xD09 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x16E1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1F NOT DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP1 DUP3 SWAP1 MSTORE SWAP2 POP PUSH2 0xD49 SWAP1 PUSH29 0x100000000000000000000000000000000000000000000000000000000 SWAP1 DUP4 SWAP1 PUSH1 0x20 ADD PUSH2 0x174E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP5 POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xD75 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0xDA5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xDCB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xDEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xDF6 DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE0F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xE1B DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE34 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xE40 DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE59 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xE66 DUP14 DUP3 DUP15 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xEA1 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xE89 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xEC2 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xE86 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xEE9 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xEAA JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xF0B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xF2A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF36 DUP12 DUP4 DUP13 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xF4F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF5B DUP12 DUP4 DUP13 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xF74 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF81 DUP11 DUP3 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP8 DUP10 SUB SLT ISZERO PUSH2 0xFAD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xFC5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFD1 DUP11 DUP4 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x20 DUP10 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xFEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFF6 DUP11 DUP4 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x40 DUP10 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x100F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x101C DUP10 DUP3 DUP11 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP8 SWAP11 SWAP7 SWAP10 POP SWAP5 SWAP8 POP SWAP3 SWAP6 SWAP4 SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP2 MSTORE PUSH1 0x0 PUSH2 0x1041 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0xEAA JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1053 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x10B1 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x10C4 DUP2 DUP10 DUP12 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x10DF DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1108 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xEE9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x112C JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1165 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1185 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x1198 DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP2 MSTORE PUSH1 0x0 PUSH2 0x11BF PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0xEAA JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 DUP8 PUSH2 0x106C JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP11 AND DUP4 MSTORE PUSH1 0xA0 PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x120D PUSH1 0xA0 DUP5 ADD DUP10 DUP12 PUSH2 0x106C JUMP JUMPDEST DUP4 DUP2 SUB PUSH1 0x40 DUP6 ADD MSTORE PUSH2 0x1220 DUP2 DUP9 DUP11 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP4 DUP2 SUB PUSH1 0x60 DUP6 ADD MSTORE PUSH2 0x1234 DUP2 DUP8 PUSH2 0xEAA JUMP JUMPDEST SWAP3 POP POP DUP1 DUP5 AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH2 0x1260 PUSH1 0x60 DUP4 ADD DUP8 DUP10 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1273 DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x1287 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x12D3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x12EE JUMPI PUSH2 0x12EE PUSH2 0x1293 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x1316 JUMPI PUSH2 0x1316 PUSH2 0x1293 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x132F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1362 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x137A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1386 DUP7 DUP4 DUP8 ADD PUSH2 0x12C2 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x139C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x13A9 DUP6 DUP3 DUP7 ADD PUSH2 0x12C2 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x13FD JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x13DA JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x13F9 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x13E6 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x141C JUMPI PUSH2 0x141C PUSH2 0x1293 JUMP JUMPDEST PUSH2 0x1430 DUP2 PUSH2 0x142A DUP5 SLOAD PUSH2 0x1118 JUMP JUMPDEST DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x1483 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x144D JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x13F9 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x14B2 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x1493 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x14EE JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0x1573 JUMPI PUSH2 0x1573 PUSH2 0x152D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH2 0x1573 JUMPI PUSH2 0x1573 PUSH2 0x152D JUMP JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x15BD JUMPI PUSH2 0x15BD PUSH2 0x152D JUMP JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 DUP1 DUP6 SLOAD PUSH2 0x15D6 DUP2 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x60 DUP7 ADD MSTORE PUSH1 0x80 PUSH1 0x1 DUP1 DUP5 AND PUSH1 0x0 DUP2 EQ PUSH2 0x15F8 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1630 JUMPI PUSH2 0x1661 JUMP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 DUP6 AND DUP4 DUP10 ADD MSTORE DUP3 DUP5 ISZERO ISZERO PUSH1 0x5 SHL DUP10 ADD ADD SWAP6 POP PUSH2 0x1661 JUMP JUMPDEST DUP11 PUSH1 0x0 MSTORE PUSH1 0x20 DUP1 PUSH1 0x0 KECCAK256 PUSH1 0x0 JUMPDEST DUP7 DUP2 LT ISZERO PUSH2 0x1658 JUMPI DUP2 SLOAD DUP12 DUP3 ADD DUP8 ADD MSTORE SWAP1 DUP5 ADD SWAP1 DUP3 ADD PUSH2 0x163D JUMP JUMPDEST DUP11 ADD DUP6 ADD SWAP8 POP POP POP JUMPDEST POP POP POP POP POP DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1678 DUP2 DUP7 PUSH2 0xEAA JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x20 DUP1 DUP6 ADD DUP1 DUP2 SWAP7 POP DUP4 PUSH1 0x5 SHL DUP2 ADD SWAP2 POP DUP3 DUP7 ADD PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x16D4 JUMPI DUP3 DUP5 SUB DUP10 MSTORE PUSH2 0x16C2 DUP5 DUP4 MLOAD PUSH2 0xEAA JUMP JUMPDEST SWAP9 DUP6 ADD SWAP9 SWAP4 POP SWAP1 DUP5 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x16AA JUMP JUMPDEST POP SWAP2 SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x80 DUP2 MSTORE PUSH1 0x13 PUSH1 0x80 DUP3 ADD MSTORE PUSH32 0x726563656976655F6D6573736167655F65766D00000000000000000000000000 PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1728 PUSH1 0xC0 DUP4 ADD DUP7 PUSH2 0x168C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x173A DUP2 DUP7 PUSH2 0x168C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 AND DUP2 MSTORE PUSH1 0x0 DUP3 MLOAD PUSH2 0x1788 DUP2 PUSH1 0x4 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0xE86 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD PUSH1 0x4 ADD SWAP4 SWAP3 POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP9 SWAP3 PUSH20 0xE6BEA1307B8D9BAC0F5EE0F7D320B227DED625D2 PUSH26 0x374D9E4EBF1F931164736F6C6343000814003300000000000000 ", + "sourceMap": "527:3163:15:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;252:39:0;;;;;;;;;;;;;;;;;;212:42:16;200:55;;;182:74;;170:2;155:18;252:39:0;;;;;;;;872:667;;;;;;;;;;-1:-1:-1;872:667:0;;;;;:::i;:::-;;:::i;:::-;;703:23:15;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;447:419:0:-;;;;;;;;;;-1:-1:-1;447:419:0;;;;;:::i;:::-;;:::i;1161:736:15:-;;;;;;:::i;:::-;;:::i;652:45::-;;;;;;;;;;;;;;;858:28;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;872:667:0:-;1119:19;1151:7;;1141:18;;;;;;;:::i;:::-;;;;;;;;;1188:218;;;1141:18;-1:-1:-1;1188:35:0;:7;:35;;;;:218;;1241:9;;1268:11;;;;1297:13;;;;1141:18;;1357:11;;;;1386:6;;1188:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1170:276;;1424:22;;;;;;;;;;;;;;1170:276;1109:430;872:667;;;;;;;;;;:::o;703:23:15:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;447:419:0:-;624:19;656:7;;646:18;;;;;;;:::i;:::-;;;;;;;;;680:80;;;646:18;-1:-1:-1;680:28:0;:7;:28;;;;:80;;709:9;;720:11;;;;733:13;;;;646:18;;680:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;675:128;;781:22;;;;;;;;;;;;;;675:128;814:45;823:11;;836:13;;851:7;;814:8;:45::i;:::-;614:252;447:419;;;;;;;:::o;1161:736:15:-;1362:30;1419:21;:10;:19;:21::i;:::-;1454:7;;1395:76;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1362:109;;1481:20;1504:43;1529:17;1504:24;:43::i;:::-;1481:66;;1584:10;:38;;;1630:9;1662:4;1681:16;;1711:18;;1743:7;1764:10;1584:200;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1823:67:15;;;;;:20;:7;:20;;-1:-1:-1;1823:20:15;;-1:-1:-1;1823:67:15;;-1:-1:-1;1844:16:15;;;;1862:18;;;;1882:7;;1823:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1317:580;;1161:736;;;;;;:::o;858:28::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3344:344::-;3513:20;;3560:71;;;;3584:7;3560:71;:::i;:::-;3657:24;;;;;;;;;;;;;;;;;;3512:119;;-1:-1:-1;3512:119:15;-1:-1:-1;3641:13:15;;:40;3512:119;3641:13;:40;:::i;:::-;-1:-1:-1;3641:40:15;;;;;;;;;;;;:::i;991:555:11:-;1103:26;;1050:13;14278:15:16;;;14295:66;14274:88;1103:26:11;;;14262:101:16;1050:13:11;1075:25;;14379:12:16;;1103:26:11;;;;;;-1:-1:-1;;1103:26:11;;;1139:44;;;;;;;;;1103:26;1139:44;;;1220:13;;1230:2;1220:13;;;;;;;;;1103:26;;-1:-1:-1;;;1220:13:11;;;;;;;;;;-1:-1:-1;1220:13:11;1193:40;;1244:20;:11;1256:1;1244:14;;;;;;;;:::i;:::-;;;;:20;;;;;;;;;;;1274;:11;1286:1;1274:14;;;;;;;;:::i;:::-;;;;:20;;;;;;;;;;;1310:9;1305:198;1325:2;1321:1;:6;1305:198;;;1373:10;1409:1;1390:12;1403:1;1390:15;;;;;;;;:::i;:::-;;;;;1373:39;;1390:15;;;;:20;;;:15;1384:27;;1373:39;;;;;;:::i;:::-;;;;;;;1348:11;1364:5;:1;1368;1364:5;:::i;:::-;1360:9;;:1;:9;:::i;:::-;1348:22;;;;;;;;:::i;:::-;;;;:64;;;;;;;;;;;1451:10;1468:12;1481:1;1468:15;;;;;;;;:::i;:::-;;;;;;1451:41;;1468:15;;;;;1486:4;1462:29;;1451:41;;;;;;:::i;:::-;;;;;;;1426:11;1442:5;:1;1446;1442:5;:::i;:::-;1438:9;;:1;:9;:::i;:::-;1426:22;;;;;;;;:::i;:::-;;;;:66;;;;;;;;;;-1:-1:-1;1329:3:11;;;:::i;:::-;;;1305:198;;;-1:-1:-1;1527:11:11;991:555;-1:-1:-1;;;;991:555:11:o;1903:1435:15:-;2006:12;2572:22;;2644:24;2652:4;2644:22;:24::i;:::-;2682:17;2597:112;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;2597:112:15;;;2769:1;2756:15;;;;;;;;;2597:112;-1:-1:-1;2720:33:15;;2597:112;2756:15;;;;;;;;;;;;;;;;;;;;2720:51;;2781:37;;;;;;;;;;;;;;;;;:17;2799:1;2781:20;;;;;;;;:::i;:::-;;;;;;:37;;;;2828:39;;;;;;;;;;;;;;;;;:17;2846:1;2828:20;;;;;;;;:::i;:::-;;;;;;:39;;;;2877:32;;;;;;;;;;;;;;;;;:17;2895:1;2877:20;;;;;;;;:::i;:::-;;;;;;;;;;:32;2951:15;;;2964:1;2951:15;;;;;;;;;2920:28;;2951:15;;;;;;;;;;;;;;;;;;;;2920:46;;2976:26;;;;;;;;;;;;;;;;;:12;2989:1;2976:15;;;;;;;;:::i;:::-;;;;;;:26;;;;3012;;;;;;;;;;;;;;;;;:12;3025:1;3012:15;;;;;;;;:::i;:::-;;;;;;:26;;;;3048:25;;;;;;;;;;;;;;;;;:12;3061:1;3048:15;;;;;;;;:::i;:::-;;;;;;:25;;;;3084:23;3189:17;3220:12;3246:9;3130:135;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;3130:135:15;;;;;;;;;;;-1:-1:-1;3283:48:15;;3300:18;;3130:135;;;3283:48;;:::i;:::-;;;;;;;;;;;;;3276:55;;;;;;1903:1435;;;:::o;267:348:16:-;319:8;329:6;383:3;376:4;368:6;364:17;360:27;350:55;;401:1;398;391:12;350:55;-1:-1:-1;424:20:16;;467:18;456:30;;453:50;;;499:1;496;489:12;453:50;536:4;528:6;524:17;512:29;;588:3;581:4;572:6;564;560:19;556:30;553:39;550:59;;;605:1;602;595:12;550:59;267:348;;;;;:::o;620:1437::-;771:6;779;787;795;803;811;819;827;835;843;896:3;884:9;875:7;871:23;867:33;864:53;;;913:1;910;903:12;864:53;949:9;936:23;926:33;;1010:2;999:9;995:18;982:32;1033:18;1074:2;1066:6;1063:14;1060:34;;;1090:1;1087;1080:12;1060:34;1129:59;1180:7;1171:6;1160:9;1156:22;1129:59;:::i;:::-;1207:8;;-1:-1:-1;1103:85:16;-1:-1:-1;1295:2:16;1280:18;;1267:32;;-1:-1:-1;1311:16:16;;;1308:36;;;1340:1;1337;1330:12;1308:36;1379:61;1432:7;1421:8;1410:9;1406:24;1379:61;:::i;:::-;1459:8;;-1:-1:-1;1353:87:16;-1:-1:-1;1547:2:16;1532:18;;1519:32;;-1:-1:-1;1563:16:16;;;1560:36;;;1592:1;1589;1582:12;1560:36;1631:61;1684:7;1673:8;1662:9;1658:24;1631:61;:::i;:::-;1711:8;;-1:-1:-1;1605:87:16;-1:-1:-1;1799:3:16;1784:19;;1771:33;;-1:-1:-1;1816:16:16;;;1813:36;;;1845:1;1842;1835:12;1813:36;;1884:61;1937:7;1926:8;1915:9;1911:24;1884:61;:::i;:::-;1858:87;;1964:8;1954:18;;;1991:8;1981:18;;;2046:3;2035:9;2031:19;2018:33;2008:43;;620:1437;;;;;;;;;;;;;:::o;2062:250::-;2147:1;2157:113;2171:6;2168:1;2165:13;2157:113;;;2247:11;;;2241:18;2228:11;;;2221:39;2193:2;2186:10;2157:113;;;-1:-1:-1;;2304:1:16;2286:16;;2279:27;2062:250::o;2317:330::-;2359:3;2397:5;2391:12;2424:6;2419:3;2412:19;2440:76;2509:6;2502:4;2497:3;2493:14;2486:4;2479:5;2475:16;2440:76;:::i;:::-;2561:2;2549:15;-1:-1:-1;;2545:88:16;2536:98;;;;2636:4;2532:109;;2317:330;-1:-1:-1;;2317:330:16:o;2652:220::-;2801:2;2790:9;2783:21;2764:4;2821:45;2862:2;2851:9;2847:18;2839:6;2821:45;:::i;:::-;2813:53;2652:220;-1:-1:-1;;;2652:220:16:o;2877:1078::-;2998:6;3006;3014;3022;3030;3038;3046;3099:3;3087:9;3078:7;3074:23;3070:33;3067:53;;;3116:1;3113;3106:12;3067:53;3152:9;3139:23;3129:33;;3213:2;3202:9;3198:18;3185:32;3236:18;3277:2;3269:6;3266:14;3263:34;;;3293:1;3290;3283:12;3263:34;3332:59;3383:7;3374:6;3363:9;3359:22;3332:59;:::i;:::-;3410:8;;-1:-1:-1;3306:85:16;-1:-1:-1;3498:2:16;3483:18;;3470:32;;-1:-1:-1;3514:16:16;;;3511:36;;;3543:1;3540;3533:12;3511:36;3582:61;3635:7;3624:8;3613:9;3609:24;3582:61;:::i;:::-;3662:8;;-1:-1:-1;3556:87:16;-1:-1:-1;3750:2:16;3735:18;;3722:32;;-1:-1:-1;3766:16:16;;;3763:36;;;3795:1;3792;3785:12;3763:36;;3834:61;3887:7;3876:8;3865:9;3861:24;3834:61;:::i;:::-;2877:1078;;;;-1:-1:-1;2877:1078:16;;-1:-1:-1;2877:1078:16;;;;3808:87;;-1:-1:-1;;;2877:1078:16:o;3960:1010::-;4073:6;4081;4089;4097;4105;4113;4166:2;4154:9;4145:7;4141:23;4137:32;4134:52;;;4182:1;4179;4172:12;4134:52;4222:9;4209:23;4251:18;4292:2;4284:6;4281:14;4278:34;;;4308:1;4305;4298:12;4278:34;4347:59;4398:7;4389:6;4378:9;4374:22;4347:59;:::i;:::-;4425:8;;-1:-1:-1;4321:85:16;-1:-1:-1;4513:2:16;4498:18;;4485:32;;-1:-1:-1;4529:16:16;;;4526:36;;;4558:1;4555;4548:12;4526:36;4597:61;4650:7;4639:8;4628:9;4624:24;4597:61;:::i;:::-;4677:8;;-1:-1:-1;4571:87:16;-1:-1:-1;4765:2:16;4750:18;;4737:32;;-1:-1:-1;4781:16:16;;;4778:36;;;4810:1;4807;4800:12;4778:36;;4849:61;4902:7;4891:8;4880:9;4876:24;4849:61;:::i;:::-;3960:1010;;;;-1:-1:-1;3960:1010:16;;-1:-1:-1;3960:1010:16;;4929:8;;3960:1010;-1:-1:-1;;;3960:1010:16:o;5231:383::-;5428:2;5417:9;5410:21;5391:4;5454:45;5495:2;5484:9;5480:18;5472:6;5454:45;:::i;:::-;5547:9;5539:6;5535:22;5530:2;5519:9;5515:18;5508:50;5575:33;5601:6;5593;5575:33;:::i;:::-;5567:41;5231:383;-1:-1:-1;;;;;5231:383:16:o;5619:271::-;5802:6;5794;5789:3;5776:33;5758:3;5828:16;;5853:13;;;5828:16;5619:271;-1:-1:-1;5619:271:16:o;5895:326::-;5984:6;5979:3;5972:19;6036:6;6029:5;6022:4;6017:3;6013:14;6000:43;;6088:1;6081:4;6072:6;6067:3;6063:16;6059:27;6052:38;5954:3;6210:4;-1:-1:-1;;6135:2:16;6127:6;6123:15;6119:88;6114:3;6110:98;6106:109;6099:116;;5895:326;;;;:::o;6226:844::-;6585:6;6574:9;6567:25;6628:3;6623:2;6612:9;6608:18;6601:31;6548:4;6655:63;6713:3;6702:9;6698:19;6690:6;6682;6655:63;:::i;:::-;6766:9;6758:6;6754:22;6749:2;6738:9;6734:18;6727:50;6800;6843:6;6835;6827;6800:50;:::i;:::-;6786:64;;6886:6;6881:2;6870:9;6866:18;6859:34;6942:9;6934:6;6930:22;6924:3;6913:9;6909:19;6902:51;6970:50;7013:6;7005;6997;6970:50;:::i;:::-;6962:58;;;7057:6;7051:3;7040:9;7036:19;7029:35;6226:844;;;;;;;;;;;;:::o;7075:277::-;7142:6;7195:2;7183:9;7174:7;7170:23;7166:32;7163:52;;;7211:1;7208;7201:12;7163:52;7243:9;7237:16;7296:5;7289:13;7282:21;7275:5;7272:32;7262:60;;7318:1;7315;7308:12;7357:437;7436:1;7432:12;;;;7479;;;7500:61;;7554:4;7546:6;7542:17;7532:27;;7500:61;7607:2;7599:6;7596:14;7576:18;7573:38;7570:218;;7644:77;7641:1;7634:88;7745:4;7742:1;7735:15;7773:4;7770:1;7763:15;7570:218;;7357:437;;;:::o;7799:581::-;8072:6;8061:9;8054:25;8115:3;8110:2;8099:9;8095:18;8088:31;8035:4;8142:63;8200:3;8189:9;8185:19;8177:6;8169;8142:63;:::i;:::-;8253:9;8245:6;8241:22;8236:2;8225:9;8221:18;8214:50;8281;8324:6;8316;8308;8281:50;:::i;:::-;8273:58;;;8367:6;8362:2;8351:9;8347:18;8340:34;7799:581;;;;;;;;;:::o;8385:410::-;8592:2;8581:9;8574:21;8555:4;8618:45;8659:2;8648:9;8644:18;8636:6;8618:45;:::i;:::-;8711:9;8703:6;8699:22;8694:2;8683:9;8679:18;8672:50;8739;8782:6;8774;8766;8739:50;:::i;:::-;8731:58;8385:410;-1:-1:-1;;;;;;8385:410:16:o;8800:822::-;9082:4;9111:42;9192:2;9184:6;9180:15;9169:9;9162:34;9232:3;9227:2;9216:9;9212:18;9205:31;9259:63;9317:3;9306:9;9302:19;9294:6;9286;9259:63;:::i;:::-;9370:9;9362:6;9358:22;9353:2;9342:9;9338:18;9331:50;9404;9447:6;9439;9431;9404:50;:::i;:::-;9390:64;;9502:9;9494:6;9490:22;9485:2;9474:9;9470:18;9463:50;9530:33;9556:6;9548;9530:33;:::i;:::-;9522:41;;;9612:2;9604:6;9600:15;9594:3;9583:9;9579:19;9572:44;;8800:822;;;;;;;;;;:::o;9627:598::-;9890:2;9879:9;9872:21;9853:4;9916:62;9974:2;9963:9;9959:18;9951:6;9943;9916:62;:::i;:::-;10026:9;10018:6;10014:22;10009:2;9998:9;9994:18;9987:50;10060;10103:6;10095;10087;10060:50;:::i;:::-;10046:64;;10158:9;10150:6;10146:22;10141:2;10130:9;10126:18;10119:50;10186:33;10212:6;10204;10186:33;:::i;:::-;10178:41;9627:598;-1:-1:-1;;;;;;;;9627:598:16:o;10230:184::-;10282:77;10279:1;10272:88;10379:4;10376:1;10369:15;10403:4;10400:1;10393:15;10419:778;10462:5;10515:3;10508:4;10500:6;10496:17;10492:27;10482:55;;10533:1;10530;10523:12;10482:55;10569:6;10556:20;10595:18;10632:2;10628;10625:10;10622:36;;;10638:18;;:::i;:::-;10772:2;10766:9;10834:4;10826:13;;-1:-1:-1;;10822:22:16;;;10846:2;10818:31;10814:40;10802:53;;;10870:18;;;10890:22;;;10867:46;10864:72;;;10916:18;;:::i;:::-;10956:10;10952:2;10945:22;10991:2;10983:6;10976:18;11037:3;11030:4;11025:2;11017:6;11013:15;11009:26;11006:35;11003:55;;;11054:1;11051;11044:12;11003:55;11118:2;11111:4;11103:6;11099:17;11092:4;11084:6;11080:17;11067:54;11165:1;11158:4;11153:2;11145:6;11141:15;11137:26;11130:37;11185:6;11176:15;;;;;;10419:778;;;;:::o;11202:543::-;11290:6;11298;11351:2;11339:9;11330:7;11326:23;11322:32;11319:52;;;11367:1;11364;11357:12;11319:52;11407:9;11394:23;11436:18;11477:2;11469:6;11466:14;11463:34;;;11493:1;11490;11483:12;11463:34;11516:50;11558:7;11549:6;11538:9;11534:22;11516:50;:::i;:::-;11506:60;;11619:2;11608:9;11604:18;11591:32;11575:48;;11648:2;11638:8;11635:16;11632:36;;;11664:1;11661;11654:12;11632:36;;11687:52;11731:7;11720:8;11709:9;11705:24;11687:52;:::i;:::-;11677:62;;;11202:543;;;;;:::o;11876:545::-;11978:2;11973:3;11970:11;11967:448;;;12014:1;12039:5;12035:2;12028:17;12084:4;12080:2;12070:19;12154:2;12142:10;12138:19;12135:1;12131:27;12125:4;12121:38;12190:4;12178:10;12175:20;12172:47;;;-1:-1:-1;12213:4:16;12172:47;12268:2;12263:3;12259:12;12256:1;12252:20;12246:4;12242:31;12232:41;;12323:82;12341:2;12334:5;12331:13;12323:82;;;12386:17;;;12367:1;12356:13;12323:82;;;12327:3;;;11967:448;11876:545;;;:::o;12657:1471::-;12783:3;12777:10;12810:18;12802:6;12799:30;12796:56;;;12832:18;;:::i;:::-;12861:97;12951:6;12911:38;12943:4;12937:11;12911:38;:::i;:::-;12905:4;12861:97;:::i;:::-;13013:4;;13077:2;13066:14;;13094:1;13089:782;;;;13915:1;13932:6;13929:89;;;-1:-1:-1;13984:19:16;;;13978:26;13929:89;12563:66;12554:1;12550:11;;;12546:84;12542:89;12532:100;12638:1;12634:11;;;12529:117;14031:81;;13059:1063;;13089:782;11823:1;11816:14;;;11860:4;11847:18;;-1:-1:-1;;13125:79:16;;;13302:236;13316:7;13313:1;13310:14;13302:236;;;13405:19;;;13399:26;13384:42;;13497:27;;;;13465:1;13453:14;;;;13332:19;;13302:236;;;13306:3;13566:6;13557:7;13554:19;13551:261;;;13627:19;;;13621:26;13728:66;13710:1;13706:14;;;13722:3;13702:24;13698:97;13694:102;13679:118;13664:134;;13551:261;-1:-1:-1;;;;;13858:1:16;13842:14;;;13838:22;13825:36;;-1:-1:-1;12657:1471:16:o;14402:184::-;14454:77;14451:1;14444:88;14551:4;14548:1;14541:15;14575:4;14572:1;14565:15;14591:184;14643:77;14640:1;14633:88;14740:4;14737:1;14730:15;14764:4;14761:1;14754:15;14780:168;14853:9;;;14884;;14901:15;;;14895:22;;14881:37;14871:71;;14922:18;;:::i;:::-;14780:168;;;;:::o;14953:125::-;15018:9;;;15039:10;;;15036:36;;;15052:18;;:::i;15083:195::-;15122:3;15153:66;15146:5;15143:77;15140:103;;15223:18;;:::i;:::-;-1:-1:-1;15270:1:16;15259:13;;15083:195::o;15283:1322::-;15523:2;15512:9;15505:21;15486:4;15546:1;15579:6;15573:13;15609:36;15635:9;15609:36;:::i;:::-;15681:6;15676:2;15665:9;15661:18;15654:34;15707:3;15729:1;15761:2;15750:9;15746:18;15778:1;15773:216;;;;16003:1;15998:381;;;;15739:640;;15773:216;15836:66;15825:9;15821:82;15816:2;15805:9;15801:18;15794:110;15976:2;15964:6;15957:14;15950:22;15947:1;15943:30;15932:9;15928:46;15924:55;15917:62;;15773:216;;15998:381;16029:6;16026:1;16019:17;16059:4;16104:2;16101:1;16091:16;16129:1;16143:180;16157:6;16154:1;16151:13;16143:180;;;16250:14;;16226:17;;;16222:26;;16215:50;16293:16;;;;16172:10;;16143:180;;;16347:17;;16343:26;;;-1:-1:-1;;;15739:640:16;;;;;;16426:9;16421:3;16417:19;16410:4;16399:9;16395:20;16388:49;16460:30;16486:3;16478:6;16460:30;:::i;:::-;16446:44;;16538:9;16530:6;16526:22;16521:2;16510:9;16506:18;16499:50;16566:33;16592:6;16584;16566:33;:::i;16610:616::-;16662:3;16700:5;16694:12;16727:6;16722:3;16715:19;16753:4;16794:2;16789:3;16785:12;16819:11;16846;16839:18;;16896:6;16893:1;16889:14;16882:5;16878:26;16866:38;;16938:2;16931:5;16927:14;16959:1;16969:231;16983:6;16980:1;16977:13;16969:231;;;17054:5;17048:4;17044:16;17039:3;17032:29;17082:38;17115:4;17106:6;17100:13;17082:38;:::i;:::-;17178:12;;;;17074:46;-1:-1:-1;17143:15:16;;;;17005:1;16998:9;16969:231;;;-1:-1:-1;17216:4:16;;16610:616;-1:-1:-1;;;;;;;16610:616:16:o;17231:908::-;17675:3;17664:9;17657:22;17716:2;17710:3;17699:9;17695:19;17688:31;17756:21;17750:3;17739:9;17735:19;17728:50;17816:3;17809:4;17798:9;17794:20;17787:33;17638:4;17843:56;17894:3;17883:9;17879:19;17871:6;17843:56;:::i;:::-;17947:9;17939:6;17935:22;17930:2;17919:9;17915:18;17908:50;17981:43;18017:6;18009;17981:43;:::i;:::-;17967:57;;18072:9;18064:6;18060:22;18055:2;18044:9;18040:18;18033:50;18100:33;18126:6;18118;18100:33;:::i;18144:430::-;18341:66;18333:6;18329:79;18324:3;18317:92;18299:3;18438:6;18432:13;18454:74;18521:6;18517:1;18512:3;18508:11;18501:4;18493:6;18489:17;18454:74;:::i;:::-;18548:16;;;;18566:1;18544:24;;18144:430;-1:-1:-1;;;18144:430:16:o" + }, + "methodIdentifiers": { + "chainName()": "1c93b03a", + "execute(bytes32,string,string,bytes)": "49160658", + "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", + "gasService()": "6a22d8cc", + "gateway()": "116191b6", + "send(string,string,string)": "5615264d", + "storedMessage()": "b2f6cbbe" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"gateway_\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"gasReceiver_\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"chainName_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"chainName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasService\",\"outputs\":[{\"internalType\":\"contract IAxelarGasService\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"message\",\"type\":\"string\"}],\"name\":\"send\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"storedMessage\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"sender\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"message\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/__tests__/contracts/SendReceive.sol\":\"SendReceive\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":{\"keccak256\":\"0x2a88d046f9cdc664afc7b788d6c5b534d361b46fb45ab7abf721a58dd813359b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ac48adfa686aa78e2474bcb72f49791b631bd5dd15e0991ccd91b9660caacdb\",\"dweb:/ipfs/QmQ7uFDHagPUDq93T4vaeANzLE8J8Ch3jcdTAdNT7kkfEW\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":{\"keccak256\":\"0x7ad77d3af41f342e9032889a7b5aa224ab0c6dfaf9ce9350fe403d4a596c5eae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc2358f1f1138cd742a7cfdfc83420c488c19c3b3e39d703482e124e453953ee\",\"dweb:/ipfs/QmYki4j2yWrixJVs955DyS1ZmLD5zcxe8ss52w6DLBLRi4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]},\"src/__tests__/contracts/SendReceive.sol\":{\"keccak256\":\"0x93308dc6308466686b0cd4328df8e90f27f2932298bd4a54019a92f991b60013\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3249470ad03e63b2e6062bea340d230578a3484287c040f04d356810e50431d6\",\"dweb:/ipfs/QmcDH2FKhrPJseuN39pzk6D3fyLs1kBFSR8ehhcw9xauxU\"]}},\"version\":1}" + } + } + } + } +} \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/deployed_addresses.json b/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/deployed_addresses.json new file mode 100644 index 00000000..594d570e --- /dev/null +++ b/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/deployed_addresses.json @@ -0,0 +1,3 @@ +{ + "AgoricProxyModule#AgoricProxy": "0x41056e7dA76EE9e88f30895CFC17b72C69cd276E" +} diff --git a/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/journal.jsonl b/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/journal.jsonl new file mode 100644 index 00000000..c1551033 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/journal.jsonl @@ -0,0 +1,8 @@ + +{"chainId":84532,"type":"DEPLOYMENT_INITIALIZE"} +{"artifactId":"AgoricProxyModule#AgoricProxy","constructorArgs":["0xe432150cce91c13a887f7D836923d5597adD8E31","0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6","Avalanche"],"contractName":"AgoricProxy","dependencies":[],"from":"0x20e68f6c276ac6e297ac46c84ab260928276691d","futureId":"AgoricProxyModule#AgoricProxy","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"AgoricProxyModule#AgoricProxy","networkInteraction":{"data":"0x60c06040523480156200001157600080fd5b5060405162002bf938038062002bf98339810160408190526200003491620000d3565b826001600160a01b0381166200005d5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0390811660805282811660a052600080546001600160a01b03191691851691909117905560016200009682826200025c565b5050505062000328565b80516001600160a01b0381168114620000b857600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600060608486031215620000e957600080fd5b620000f484620000a0565b9250602062000105818601620000a0565b60408601519093506001600160401b03808211156200012357600080fd5b818701915087601f8301126200013857600080fd5b8151818111156200014d576200014d620000bd565b604051601f8201601f19908116603f01168101908382118183101715620001785762000178620000bd565b816040528281528a868487010111156200019157600080fd5b600093505b82841015620001b5578484018601518185018701529285019262000196565b60008684830101528096505050505050509250925092565b600181811c90821680620001e257607f821691505b6020821081036200020357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200025757600081815260208120601f850160051c81016020861015620002325750805b601f850160051c820191505b8181101562000253578281556001016200023e565b5050505b505050565b81516001600160401b03811115620002785762000278620000bd565b6200029081620002898454620001cd565b8462000209565b602080601f831160018114620002c85760008415620002af5750858301515b600019600386901b1c1916600185901b17855562000253565b600085815260208120601f198616915b82811015620002f957888601518255948401946001909101908401620002d8565b5085821015620003185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a05161288962000370600039600081816101f001528181610525015261079f01526000818160f80152818161026b0152818161042b015261085901526128896000f3fe608060405260043610620000735760003560e01c80634916065811620000495780634916065814620001925780635e8846f614620001b75780636a22d8cc14620001dc57620000b1565b8063116191b614620000e45780631a98b2e014620001445780631c93b03a146200016b57620000b1565b36620000b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587490602001620000a7565b348015620000f157600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156200015157600080fd5b50620001696200016336600462000971565b62000212565b005b3480156200017857600080fd5b50620001836200033c565b6040516200013b919062000aca565b3480156200019f57600080fd5b5062000169620001b136600462000ae6565b620003d2565b348015620001c457600080fd5b506200011a620001d636600462000bc3565b62000503565b348015620001e957600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b600085856040516200022692919062000c9c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed990620002b2908e908e908e908e908e9089908d908d908d9060040162000cf5565b6020604051808303816000875af1158015620002d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f8919062000d5a565b6200032f576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600180546200034b9062000d7e565b80601f0160208091040260200160405190810160405280929190818152602001828054620003799062000d7e565b8015620003ca5780601f106200039e57610100808354040283529160200191620003ca565b820191906000526020600020905b815481529060010190602001808311620003ac57829003601f168201915b505050505081565b60008282604051620003e692919062000c9c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906200046c908b908b908b908b908b90899060040162000dd3565b6020604051808303816000875af11580156200048c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004b2919062000d5a565b620004e9576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620004f987878787878762000590565b5050505050505050565b60008054604051829173ffffffffffffffffffffffffffffffffffffffff16907f0000000000000000000000000000000000000000000000000000000000000000908590620005529062000917565b620005609392919062000e18565b604051809103906000f0801580156200057d573d6000803e3d6000fd5b509392505050565b505050505050505050565b6000620005d385858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506200050392505050565b90508073ffffffffffffffffffffffffffffffffffffffff167f9281645ccd9d592d9f6456fd9b95f6d2e0d36ebcc2f387399d5ac2b7c7ad7e6e86868a8a8a8a604051620006279695949392919062000e5c565b60405180910390a2604080516001808252818301909252600091816020015b604080518082019091526000815260606020820152815260200190600190039081620006465790505060408051808201825260018152815173ffffffffffffffffffffffffffffffffffffffff861660208281019190915293945090928301910160405160208183030381529060405281525081600081518110620006cf57620006cf62000eab565b602002602001018190525060008060e01b6040518060400160405280600015158152602001848152506040516020016200070a919062000eda565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905262000748929160200162000f88565b60405160208183030381529060405290506200058589898989856040517f0c93e3bb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690630c93e3bb9066038d7ea4c6800090620007eb9030908a908a908a908a908a90869060040162000fd2565b6000604051808303818588803b1580156200080557600080fd5b505af11580156200081a573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506200089b91508890889088908890889060040162001048565b600060405180830381600087803b158015620008b657600080fd5b505af1158015620008cb573d6000803e3d6000fd5b505050507fea1a07f81079879fea1a2eabafefd6f25bc76921237faf7fce963aeaa53c7ea185858585856040516200090895949392919062001048565b60405180910390a15050505050565b6117be806200109683390190565b60008083601f8401126200093857600080fd5b50813567ffffffffffffffff8111156200095157600080fd5b6020830191508360208285010111156200096a57600080fd5b9250929050565b60008060008060008060008060008060c08b8d0312156200099157600080fd5b8a35995060208b013567ffffffffffffffff80821115620009b157600080fd5b620009bf8e838f0162000925565b909b50995060408d0135915080821115620009d957600080fd5b620009e78e838f0162000925565b909950975060608d013591508082111562000a0157600080fd5b62000a0f8e838f0162000925565b909750955060808d013591508082111562000a2957600080fd5b5062000a388d828e0162000925565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b8381101562000a7557818101518382015260200162000a5b565b50506000910152565b6000815180845262000a9881602086016020860162000a58565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600062000adf602083018462000a7e565b9392505050565b60008060008060008060006080888a03121562000b0257600080fd5b87359650602088013567ffffffffffffffff8082111562000b2257600080fd5b62000b308b838c0162000925565b909850965060408a013591508082111562000b4a57600080fd5b62000b588b838c0162000925565b909650945060608a013591508082111562000b7257600080fd5b5062000b818a828b0162000925565b989b979a50959850939692959293505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121562000bd657600080fd5b813567ffffffffffffffff8082111562000bef57600080fd5b818401915084601f83011262000c0457600080fd5b81358181111562000c195762000c1962000b94565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171562000c625762000c6262000b94565b8160405282815287602084870101111562000c7c57600080fd5b826020860160208301376000928101602001929092525095945050505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600062000d1160c083018a8c62000cac565b828103604084015262000d2681898b62000cac565b9050866060840152828103608084015262000d4381868862000cac565b9150508260a08301529a9950505050505050505050565b60006020828403121562000d6d57600080fd5b8151801515811462000adf57600080fd5b600181811c9082168062000d9357607f821691505b60208210810362000dcd577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600062000def60808301878962000cac565b828103604084015262000e0481868862000cac565b915050826060830152979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff80861683528085166020840152506060604083015262000e53606083018462000a7e565b95945050505050565b60608152600062000e7260608301888a62000cac565b828103602084015262000e8781878962000cac565b9050828103604084015262000e9e81858762000cac565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006020808352606083018451151582850152818501516040808187015282825180855260808801915060808160051b8901019450858401935060005b8181101562000f7a578886037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80018352845180511515875287015187870185905262000f668588018262000a7e565b965050938601939186019160010162000f17565b509398975050505050505050565b7fffffffff00000000000000000000000000000000000000000000000000000000831681526000825162000fc481600485016020870162000a58565b919091016004019392505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a060208401526200100560a08401898b62000cac565b83810360408501526200101a81888a62000cac565b9050838103606085015262001030818762000a7e565b92505080841660808401525098975050505050505050565b6060815260006200105e60608301878962000cac565b82810360208401526200107381868862000cac565b9050828103604084015262001089818562000a7e565b9897505050505050505056fe60a06040523480156200001157600080fd5b50604051620017be380380620017be8339810160408190526200003491620001fb565b80836001600160a01b0381166200005e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b031660805262000075816200009e565b5050600180546001600160a01b0319166001600160a01b03929092169190911790555062000454565b6000808054620000ae90620002db565b80601f0160208091040260200160405190810160405280929190818152602001828054620000dc90620002db565b80156200012d5780601f1062000101576101008083540402835291602001916200012d565b820191906000526020600020905b8154815290600101906020018083116200010f57829003601f168201915b5050505050905081600090816200014591906200036a565b508160405162000156919062000436565b6040518091039020816040516200016e919062000436565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b80516001600160a01b0381168114620001ba57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620001f2578181015183820152602001620001d8565b50506000910152565b6000806000606084860312156200021157600080fd5b6200021c84620001a2565b92506200022c60208501620001a2565b60408501519092506001600160401b03808211156200024a57600080fd5b818601915086601f8301126200025f57600080fd5b815181811115620002745762000274620001bf565b604051601f8201601f19908116603f011681019083821181831017156200029f576200029f620001bf565b81604052828152896020848701011115620002b957600080fd5b620002cc836020830160208801620001d5565b80955050505050509250925092565b600181811c90821680620002f057607f821691505b6020821081036200031157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200036557600081815260208120601f850160051c81016020861015620003405750805b601f850160051c820191505b8181101562000361578281556001016200034c565b5050505b505050565b81516001600160401b03811115620003865762000386620001bf565b6200039e81620003978454620002db565b8462000317565b602080601f831160018114620003d65760008415620003bd5750858301515b600019600386901b1c1916600185901b17855562000361565b600085815260208120601f198616915b828110156200040757888601518255948401946001909101908401620003e6565b5085821015620004265787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082516200044a818460208701620001d5565b9190910192915050565b6080516113416200047d6000396000818160f50152818161026901526103ef01526113416000f3fe6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033a2646970667358221220d76f009a2c0afdd386344cb8d04f1e72dbd4b3faf6896e63f6f1e3d3eb0c805964736f6c63430008140033000000000000000000000000e432150cce91c13a887f7d836923d5597add8e31000000000000000000000000be406f0189a0b4cf3a05c286473d23791dd44cc6000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000094176616c616e6368650000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"AgoricProxyModule#AgoricProxy","networkInteractionId":1,"nonce":51,"type":"TRANSACTION_PREPARE_SEND"} +{"futureId":"AgoricProxyModule#AgoricProxy","networkInteractionId":1,"nonce":51,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"1000612"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"1000000"}},"hash":"0xe4523506fa590dcef2d606a0e10e4af573d2f9dedde546183c444a45eb18d853"},"type":"TRANSACTION_SEND"} +{"futureId":"AgoricProxyModule#AgoricProxy","hash":"0xe4523506fa590dcef2d606a0e10e4af573d2f9dedde546183c444a45eb18d853","networkInteractionId":1,"receipt":{"blockHash":"0x5f10a59910d071bb8cb47b6ced4e0723b810fd111caa0c0fddaf873a46b7def1","blockNumber":27879386,"contractAddress":"0x41056e7dA76EE9e88f30895CFC17b72C69cd276E","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"AgoricProxyModule#AgoricProxy","result":{"address":"0x41056e7dA76EE9e88f30895CFC17b72C69cd276E","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/ignition/modules/deployAgoricProxy.ts b/packages/axelar-local-dev-cosmos/ignition/modules/deployAgoricProxy.ts new file mode 100644 index 00000000..4ee497f8 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/ignition/modules/deployAgoricProxy.ts @@ -0,0 +1,27 @@ +import { buildModule } from "@nomicfoundation/hardhat-ignition/modules"; +import { config } from "dotenv"; + +config(); + +const { GATEWAY_CONTRACT, GAS_SERVICE_CONTRACT } = process.env; + +console.log("Deploying with Gateway:", GATEWAY_CONTRACT); +console.log("Deploying with Gas Service:", GAS_SERVICE_CONTRACT); + +if (!GATEWAY_CONTRACT || !GAS_SERVICE_CONTRACT) { + throw new Error("Missing env vars"); +} + +export default buildModule("AgoricProxyModule", (m) => { + const gateway = m.getParameter("gateway_", GATEWAY_CONTRACT); + const gasService = m.getParameter("gasReceiver_", GAS_SERVICE_CONTRACT); + const chainName = m.getParameter("chainName_", "Avalanche"); + + const AgoricProxy = m.contract("AgoricProxy", [ + gateway, + gasService, + chainName, + ]); + + return { AgoricProxy }; +}); diff --git a/packages/axelar-local-dev-cosmos/scripts/deploy.sh b/packages/axelar-local-dev-cosmos/scripts/deploy.sh new file mode 100755 index 00000000..3a8c0b3c --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/deploy.sh @@ -0,0 +1,47 @@ +#!/bin/bash + +if [[ $# -eq 0 ]]; then + echo "Usage: $0 [contract]" + echo "Network must be either 'fuji' or 'base'" + exit 1 +fi + +network=$1 + +deploy_contract() { + local contract_path=$1 + local gateway_contract=$2 + local gas_service_contract=$3 + + GATEWAY_CONTRACT="$gateway_contract" \ + GAS_SERVICE_CONTRACT="$gas_service_contract" \ + npx hardhat ignition deploy "$contract_path" --network "$network" +} + +delete_deployments_folder() { + local folder=$1 + if [ -d "$folder" ]; then + echo "Deleting existing deployment folder: $folder" + rm -rf "$folder" + else + echo "No existing deployment folder to delete: $folder" + fi +} + +case $network in +fuji) + GATEWAY='0xC249632c2D40b9001FE907806902f63038B737Ab' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' + ;; +base) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' + ;; +*) + echo "Invalid network specified" + exit 1 + ;; +esac + +delete_deployments_folder "ignition/deployments" +deploy_contract "./ignition/modules/deployAgoricProxy.ts" "$GATEWAY" "$GAS_SERVICE" diff --git a/packages/axelar-local-dev-cosmos/tsconfig.json b/packages/axelar-local-dev-cosmos/tsconfig.json index b38e1c14..910d4f28 100644 --- a/packages/axelar-local-dev-cosmos/tsconfig.json +++ b/packages/axelar-local-dev-cosmos/tsconfig.json @@ -36,6 +36,6 @@ "skipLibCheck": true /* Skip type checking all .d.ts files. */, "types": ["@nomicfoundation/hardhat-chai-matchers"] }, - "include": ["src"], + "include": ["src", "ignition/deployAgoricProxy.ts"], "exclude": ["node_modules", "dist", "src/__tests__/"] } From 43801e8af42a6305bcbff04a33460cf902f70cc1 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 3 Jul 2025 13:34:09 +0500 Subject: [PATCH 55/93] chore: update gitignore --- .gitignore | 2 + .../axelar-local-dev-cosmos/hardhat.config.ts | 4 - .../0bb454ad7489296ae41dd1df125d914d.json | 82808 ---------------- .../chain-84532/deployed_addresses.json | 3 - .../deployments/chain-84532/journal.jsonl | 8 - .../src/__tests__/contracts/AgoricProxy.sol | 3 +- .../contracts/ContractCallWithToken.sol | 2 +- .../src/__tests__/contracts/Multicall.sol | 2 +- .../src/__tests__/contracts/SendReceive.sol | 2 +- .../__tests__/contracts/StakingContract.sol | 2 +- 10 files changed, 8 insertions(+), 82828 deletions(-) delete mode 100644 packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/build-info/0bb454ad7489296ae41dd1df125d914d.json delete mode 100644 packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/deployed_addresses.json delete mode 100644 packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/journal.jsonl diff --git a/.gitignore b/.gitignore index a7945b27..d91adc75 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,8 @@ src/types #Hardhat files cache +# Hardhat Ignition default folder for deployments against a local node +deployments # Logs logs diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index 3e6bcb36..cc9d8a3c 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -6,10 +6,6 @@ envConfig(); const { PRIVATE_KEY } = process.env; -if (!PRIVATE_KEY) { - throw new Error("PRIVATE_KEY is not defined in the environment variables"); -} - const config: HardhatUserConfig = { solidity: { compilers: [ diff --git a/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/build-info/0bb454ad7489296ae41dd1df125d914d.json b/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/build-info/0bb454ad7489296ae41dd1df125d914d.json deleted file mode 100644 index 3c443f79..00000000 --- a/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/build-info/0bb454ad7489296ae41dd1df125d914d.json +++ /dev/null @@ -1,82808 +0,0 @@ -{ - "id": "0bb454ad7489296ae41dd1df125d914d", - "_format": "hh-sol-build-info-1", - "solcVersion": "0.8.20", - "solcLongVersion": "0.8.20+commit.a1b79de6", - "input": { - "language": "Solidity", - "sources": { - "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IAxelarGateway } from '../interfaces/IAxelarGateway.sol';\nimport { IAxelarExecutable } from '../interfaces/IAxelarExecutable.sol';\n\ncontract AxelarExecutable is IAxelarExecutable {\n IAxelarGateway public immutable gateway;\n\n constructor(address gateway_) {\n if (gateway_ == address(0)) revert InvalidAddress();\n\n gateway = IAxelarGateway(gateway_);\n }\n\n function execute(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload\n ) external {\n bytes32 payloadHash = keccak256(payload);\n\n if (!gateway.validateContractCall(commandId, sourceChain, sourceAddress, payloadHash))\n revert NotApprovedByGateway();\n\n _execute(sourceChain, sourceAddress, payload);\n }\n\n function executeWithToken(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload,\n string calldata tokenSymbol,\n uint256 amount\n ) external {\n bytes32 payloadHash = keccak256(payload);\n\n if (\n !gateway.validateContractCallAndMint(\n commandId,\n sourceChain,\n sourceAddress,\n payloadHash,\n tokenSymbol,\n amount\n )\n ) revert NotApprovedByGateway();\n\n _executeWithToken(sourceChain, sourceAddress, payload, tokenSymbol, amount);\n }\n\n function _execute(\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload\n ) internal virtual {}\n\n function _executeWithToken(\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload,\n string calldata tokenSymbol,\n uint256 amount\n ) internal virtual {}\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IAxelarGateway } from './IAxelarGateway.sol';\n\ninterface IAxelarExecutable {\n error InvalidAddress();\n error NotApprovedByGateway();\n\n function gateway() external view returns (IAxelarGateway);\n\n function execute(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload\n ) external;\n\n function executeWithToken(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata payload,\n string calldata tokenSymbol,\n uint256 amount\n ) external;\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { GasInfo } from '../types/GasEstimationTypes.sol';\nimport { IInterchainGasEstimation } from './IInterchainGasEstimation.sol';\nimport { IUpgradable } from './IUpgradable.sol';\n\n/**\n * @title IAxelarGasService Interface\n * @notice This is an interface for the AxelarGasService contract which manages gas payments\n * and refunds for cross-chain communication on the Axelar network.\n * @dev This interface inherits IUpgradable\n */\ninterface IAxelarGasService is IInterchainGasEstimation, IUpgradable {\n error InvalidAddress();\n error NotCollector();\n error InvalidAmounts();\n error InvalidGasUpdates();\n error InvalidParams();\n error InsufficientGasPayment(uint256 required, uint256 provided);\n\n event GasPaidForContractCall(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event GasPaidForContractCallWithToken(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasPaidForContractCall(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasPaidForContractCallWithToken(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event GasPaidForExpressCall(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event GasPaidForExpressCallWithToken(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasPaidForExpressCall(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasPaidForExpressCallWithToken(\n address indexed sourceAddress,\n string destinationChain,\n string destinationAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event GasAdded(\n bytes32 indexed txHash,\n uint256 indexed logIndex,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeGasAdded(bytes32 indexed txHash, uint256 indexed logIndex, uint256 gasFeeAmount, address refundAddress);\n\n event ExpressGasAdded(\n bytes32 indexed txHash,\n uint256 indexed logIndex,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event NativeExpressGasAdded(\n bytes32 indexed txHash,\n uint256 indexed logIndex,\n uint256 gasFeeAmount,\n address refundAddress\n );\n\n event Refunded(\n bytes32 indexed txHash,\n uint256 indexed logIndex,\n address payable receiver,\n address token,\n uint256 amount\n );\n\n /**\n * @notice Pay for gas for any type of contract execution on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @dev If estimateOnChain is true, the function will estimate the gas cost and revert if the payment is insufficient.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param executionGasLimit The gas limit for the contract call\n * @param estimateOnChain Flag to enable on-chain gas estimation\n * @param refundAddress The address where refunds, if any, should be sent\n * @param params Additional parameters for gas payment. This can be left empty for normal contract call payments.\n */\n function payGas(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n uint256 executionGasLimit,\n bool estimateOnChain,\n address refundAddress,\n bytes calldata params\n ) external payable;\n\n /**\n * @notice Pay for gas using ERC20 tokens for a contract call on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param gasToken The address of the ERC20 token used to pay for gas\n * @param gasFeeAmount The amount of tokens to pay for gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payGasForContractCall(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Pay for gas using ERC20 tokens for a contract call with tokens on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call with tokens will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call with tokens\n * @param symbol The symbol of the token to be sent with the call\n * @param amount The amount of tokens to be sent with the call\n * @param gasToken The address of the ERC20 token used to pay for gas\n * @param gasFeeAmount The amount of tokens to pay for gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payGasForContractCallWithToken(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Pay for gas using native currency for a contract call on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payNativeGasForContractCall(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Pay for gas using native currency for a contract call with tokens on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call with tokens will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call with tokens\n * @param symbol The symbol of the token to be sent with the call\n * @param amount The amount of tokens to be sent with the call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payNativeGasForContractCallWithToken(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Pay for gas using ERC20 tokens for an express contract call on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to express execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param gasToken The address of the ERC20 token used to pay for gas\n * @param gasFeeAmount The amount of tokens to pay for gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payGasForExpressCall(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Pay for gas using ERC20 tokens for an express contract call with tokens on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to express execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call with tokens will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call with tokens\n * @param symbol The symbol of the token to be sent with the call\n * @param amount The amount of tokens to be sent with the call\n * @param gasToken The address of the ERC20 token used to pay for gas\n * @param gasFeeAmount The amount of tokens to pay for gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payGasForExpressCallWithToken(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Pay for gas using native currency for an express contract call on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payNativeGasForExpressCall(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Pay for gas using native currency for an express contract call with tokens on a destination chain.\n * @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n * @param sender The address making the payment\n * @param destinationChain The target chain where the contract call with tokens will be made\n * @param destinationAddress The target address on the destination chain\n * @param payload Data payload for the contract call with tokens\n * @param symbol The symbol of the token to be sent with the call\n * @param amount The amount of tokens to be sent with the call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function payNativeGasForExpressCallWithToken(\n address sender,\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Add additional gas payment using ERC20 tokens after initiating a cross-chain call.\n * @dev This function can be called on the source chain after calling the gateway to execute a remote contract.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param gasToken The ERC20 token address used to add gas\n * @param gasFeeAmount The amount of tokens to add as gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function addGas(\n bytes32 txHash,\n uint256 logIndex,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Add additional gas payment using native currency after initiating a cross-chain call.\n * @dev This function can be called on the source chain after calling the gateway to execute a remote contract.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function addNativeGas(\n bytes32 txHash,\n uint256 logIndex,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Add additional gas payment using ERC20 tokens after initiating an express cross-chain call.\n * @dev This function can be called on the source chain after calling the gateway to express execute a remote contract.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param gasToken The ERC20 token address used to add gas\n * @param gasFeeAmount The amount of tokens to add as gas\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function addExpressGas(\n bytes32 txHash,\n uint256 logIndex,\n address gasToken,\n uint256 gasFeeAmount,\n address refundAddress\n ) external;\n\n /**\n * @notice Add additional gas payment using native currency after initiating an express cross-chain call.\n * @dev This function can be called on the source chain after calling the gateway to express execute a remote contract.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param refundAddress The address where refunds, if any, should be sent\n */\n function addNativeExpressGas(\n bytes32 txHash,\n uint256 logIndex,\n address refundAddress\n ) external payable;\n\n /**\n * @notice Updates the gas price for a specific chain.\n * @dev This function is called by the gas oracle to update the gas prices for a specific chains.\n * @param chains Array of chain names\n * @param gasUpdates Array of gas updates\n */\n function updateGasInfo(string[] calldata chains, GasInfo[] calldata gasUpdates) external;\n\n /**\n * @notice Allows the gasCollector to collect accumulated fees from the contract.\n * @dev Use address(0) as the token address for native currency.\n * @param receiver The address to receive the collected fees\n * @param tokens Array of token addresses to be collected\n * @param amounts Array of amounts to be collected for each respective token address\n */\n function collectFees(\n address payable receiver,\n address[] calldata tokens,\n uint256[] calldata amounts\n ) external;\n\n /**\n * @notice Refunds gas payment to the receiver in relation to a specific cross-chain transaction.\n * @dev Only callable by the gasCollector.\n * @dev Use address(0) as the token address to refund native currency.\n * @param txHash The transaction hash of the cross-chain call\n * @param logIndex The log index for the cross-chain call\n * @param receiver The address to receive the refund\n * @param token The token address to be refunded\n * @param amount The amount to refund\n */\n function refund(\n bytes32 txHash,\n uint256 logIndex,\n address payable receiver,\n address token,\n uint256 amount\n ) external;\n\n /**\n * @notice Returns the address of the designated gas collector.\n * @return address of the gas collector\n */\n function gasCollector() external returns (address);\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IGovernable } from './IGovernable.sol';\nimport { IImplementation } from './IImplementation.sol';\n\ninterface IAxelarGateway is IImplementation, IGovernable {\n /**********\\\n |* Errors *|\n \\**********/\n\n error NotSelf();\n error InvalidCodeHash();\n error SetupFailed();\n error InvalidAuthModule();\n error InvalidTokenDeployer();\n error InvalidAmount();\n error InvalidChainId();\n error InvalidCommands();\n error TokenDoesNotExist(string symbol);\n error TokenAlreadyExists(string symbol);\n error TokenDeployFailed(string symbol);\n error TokenContractDoesNotExist(address token);\n error BurnFailed(string symbol);\n error MintFailed(string symbol);\n error InvalidSetMintLimitsParams();\n error ExceedMintLimit(string symbol);\n\n /**********\\\n |* Events *|\n \\**********/\n\n event TokenSent(\n address indexed sender,\n string destinationChain,\n string destinationAddress,\n string symbol,\n uint256 amount\n );\n\n event ContractCall(\n address indexed sender,\n string destinationChain,\n string destinationContractAddress,\n bytes32 indexed payloadHash,\n bytes payload\n );\n\n event ContractCallWithToken(\n address indexed sender,\n string destinationChain,\n string destinationContractAddress,\n bytes32 indexed payloadHash,\n bytes payload,\n string symbol,\n uint256 amount\n );\n\n event Executed(bytes32 indexed commandId);\n\n event TokenDeployed(string symbol, address tokenAddresses);\n\n event ContractCallApproved(\n bytes32 indexed commandId,\n string sourceChain,\n string sourceAddress,\n address indexed contractAddress,\n bytes32 indexed payloadHash,\n bytes32 sourceTxHash,\n uint256 sourceEventIndex\n );\n\n event ContractCallApprovedWithMint(\n bytes32 indexed commandId,\n string sourceChain,\n string sourceAddress,\n address indexed contractAddress,\n bytes32 indexed payloadHash,\n string symbol,\n uint256 amount,\n bytes32 sourceTxHash,\n uint256 sourceEventIndex\n );\n\n event ContractCallExecuted(bytes32 indexed commandId);\n\n event TokenMintLimitUpdated(string symbol, uint256 limit);\n\n event OperatorshipTransferred(bytes newOperatorsData);\n\n event Upgraded(address indexed implementation);\n\n /********************\\\n |* Public Functions *|\n \\********************/\n\n function sendToken(\n string calldata destinationChain,\n string calldata destinationAddress,\n string calldata symbol,\n uint256 amount\n ) external;\n\n function callContract(\n string calldata destinationChain,\n string calldata contractAddress,\n bytes calldata payload\n ) external;\n\n function callContractWithToken(\n string calldata destinationChain,\n string calldata contractAddress,\n bytes calldata payload,\n string calldata symbol,\n uint256 amount\n ) external;\n\n function isContractCallApproved(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n address contractAddress,\n bytes32 payloadHash\n ) external view returns (bool);\n\n function isContractCallAndMintApproved(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n address contractAddress,\n bytes32 payloadHash,\n string calldata symbol,\n uint256 amount\n ) external view returns (bool);\n\n function validateContractCall(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes32 payloadHash\n ) external returns (bool);\n\n function validateContractCallAndMint(\n bytes32 commandId,\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes32 payloadHash,\n string calldata symbol,\n uint256 amount\n ) external returns (bool);\n\n /***********\\\n |* Getters *|\n \\***********/\n\n function authModule() external view returns (address);\n\n function tokenDeployer() external view returns (address);\n\n function tokenMintLimit(string memory symbol) external view returns (uint256);\n\n function tokenMintAmount(string memory symbol) external view returns (uint256);\n\n function allTokensFrozen() external view returns (bool);\n\n function implementation() external view returns (address);\n\n function tokenAddresses(string memory symbol) external view returns (address);\n\n function tokenFrozen(string memory symbol) external view returns (bool);\n\n function isCommandExecuted(bytes32 commandId) external view returns (bool);\n\n /************************\\\n |* Governance Functions *|\n \\************************/\n\n function setTokenMintLimits(string[] calldata symbols, uint256[] calldata limits) external;\n\n function upgrade(\n address newImplementation,\n bytes32 newImplementationCodeHash,\n bytes calldata setupParams\n ) external;\n\n /**********************\\\n |* External Functions *|\n \\**********************/\n\n function execute(bytes calldata input) external;\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n// General interface for upgradable contracts\ninterface IContractIdentifier {\n /**\n * @notice Returns the contract ID. It can be used as a check during upgrades.\n * @dev Meant to be overridden in derived contracts.\n * @return bytes32 The contract ID\n */\n function contractId() external pure returns (bytes32);\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Interface of the ERC20 standard as defined in the EIP.\n */\ninterface IERC20 {\n error InvalidAccount();\n\n /**\n * @dev Returns the amount of tokens in existence.\n */\n function totalSupply() external view returns (uint256);\n\n /**\n * @dev Returns the amount of tokens owned by `account`.\n */\n function balanceOf(address account) external view returns (uint256);\n\n /**\n * @dev Moves `amount` tokens from the caller's account to `recipient`.\n *\n * Returns a boolean value indicating whether the operation succeeded.\n *\n * Emits a {Transfer} event.\n */\n function transfer(address recipient, uint256 amount) external returns (bool);\n\n /**\n * @dev Returns the remaining number of tokens that `spender` will be\n * allowed to spend on behalf of `owner` through {transferFrom}. This is\n * zero by default.\n *\n * This value changes when {approve} or {transferFrom} are called.\n */\n function allowance(address owner, address spender) external view returns (uint256);\n\n /**\n * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n *\n * Returns a boolean value indicating whether the operation succeeded.\n *\n * IMPORTANT: Beware that changing an allowance with this method brings the risk\n * that someone may use both the old and the new allowance by unfortunate\n * transaction ordering. One possible solution to mitigate this race\n * condition is to first reduce the spender's allowance to 0 and set the\n * desired value afterwards:\n * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n *\n * Emits an {Approval} event.\n */\n function approve(address spender, uint256 amount) external returns (bool);\n\n /**\n * @dev Moves `amount` tokens from `sender` to `recipient` using the\n * allowance mechanism. `amount` is then deducted from the caller's\n * allowance.\n *\n * Returns a boolean value indicating whether the operation succeeded.\n *\n * Emits a {Transfer} event.\n */\n function transferFrom(\n address sender,\n address recipient,\n uint256 amount\n ) external returns (bool);\n\n /**\n * @dev Emitted when `value` tokens are moved from one account (`from`) to\n * another (`to`).\n *\n * Note that `value` may be zero.\n */\n event Transfer(address indexed from, address indexed to, uint256 value);\n\n /**\n * @dev Emitted when the allowance of a `spender` for an `owner` is set by\n * a call to {approve}. `value` is the new allowance.\n */\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n/**\n * @title IGovernable Interface\n * @notice This is an interface used by the AxelarGateway contract to manage governance and mint limiter roles.\n */\ninterface IGovernable {\n error NotGovernance();\n error NotMintLimiter();\n error InvalidGovernance();\n error InvalidMintLimiter();\n\n event GovernanceTransferred(address indexed previousGovernance, address indexed newGovernance);\n event MintLimiterTransferred(address indexed previousGovernance, address indexed newGovernance);\n\n /**\n * @notice Returns the governance address.\n * @return address of the governance\n */\n function governance() external view returns (address);\n\n /**\n * @notice Returns the mint limiter address.\n * @return address of the mint limiter\n */\n function mintLimiter() external view returns (address);\n\n /**\n * @notice Transfer the governance role to another address.\n * @param newGovernance The new governance address\n */\n function transferGovernance(address newGovernance) external;\n\n /**\n * @notice Transfer the mint limiter role to another address.\n * @param newGovernance The new mint limiter address\n */\n function transferMintLimiter(address newGovernance) external;\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IContractIdentifier } from './IContractIdentifier.sol';\n\ninterface IImplementation is IContractIdentifier {\n error NotProxy();\n\n function setup(bytes calldata data) external;\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { GasEstimationType, GasInfo } from '../types/GasEstimationTypes.sol';\n\n/**\n * @title IInterchainGasEstimation Interface\n * @notice This is an interface for the InterchainGasEstimation contract\n * which allows for estimating gas fees for cross-chain communication on the Axelar network.\n */\ninterface IInterchainGasEstimation {\n error UnsupportedEstimationType(GasEstimationType gasEstimationType);\n\n /**\n * @notice Event emitted when the gas price for a specific chain is updated.\n * @param chain The name of the chain\n * @param info The gas info for the chain\n */\n event GasInfoUpdated(string chain, GasInfo info);\n\n /**\n * @notice Returns the gas price for a specific chain.\n * @param chain The name of the chain\n * @return gasInfo The gas info for the chain\n */\n function getGasInfo(string calldata chain) external view returns (GasInfo memory);\n\n /**\n * @notice Estimates the gas fee for a cross-chain contract call.\n * @param destinationChain Axelar registered name of the destination chain\n * @param destinationAddress Destination contract address being called\n * @param executionGasLimit The gas limit to be used for the destination contract execution,\n * e.g. pass in 200k if your app consumes needs upto 200k for this contract call\n * @param params Additional parameters for the gas estimation\n * @return gasEstimate The cross-chain gas estimate, in terms of source chain's native gas token that should be forwarded to the gas service.\n */\n function estimateGasFee(\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes calldata payload,\n uint256 executionGasLimit,\n bytes calldata params\n ) external view returns (uint256 gasEstimate);\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n/**\n * @title IOwnable Interface\n * @notice IOwnable is an interface that abstracts the implementation of a\n * contract with ownership control features. It's commonly used in upgradable\n * contracts and includes the functionality to get current owner, transfer\n * ownership, and propose and accept ownership.\n */\ninterface IOwnable {\n error NotOwner();\n error InvalidOwner();\n error InvalidOwnerAddress();\n\n event OwnershipTransferStarted(address indexed newOwner);\n event OwnershipTransferred(address indexed newOwner);\n\n /**\n * @notice Returns the current owner of the contract.\n * @return address The address of the current owner\n */\n function owner() external view returns (address);\n\n /**\n * @notice Returns the address of the pending owner of the contract.\n * @return address The address of the pending owner\n */\n function pendingOwner() external view returns (address);\n\n /**\n * @notice Transfers ownership of the contract to a new address\n * @param newOwner The address to transfer ownership to\n */\n function transferOwnership(address newOwner) external;\n\n /**\n * @notice Proposes to transfer the contract's ownership to a new address.\n * The new owner needs to accept the ownership explicitly.\n * @param newOwner The address to transfer ownership to\n */\n function proposeOwnership(address newOwner) external;\n\n /**\n * @notice Transfers ownership to the pending owner.\n * @dev Can only be called by the pending owner\n */\n function acceptOwnership() external;\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nimport { IOwnable } from './IOwnable.sol';\nimport { IImplementation } from './IImplementation.sol';\n\n// General interface for upgradable contracts\ninterface IUpgradable is IOwnable, IImplementation {\n error InvalidCodeHash();\n error InvalidImplementation();\n error SetupFailed();\n\n event Upgraded(address indexed newImplementation);\n\n function implementation() external view returns (address);\n\n function upgrade(\n address newImplementation,\n bytes32 newImplementationCodeHash,\n bytes calldata params\n ) external;\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\nlibrary StringToAddress {\n error InvalidAddressString();\n\n function toAddress(string memory addressString) internal pure returns (address) {\n bytes memory stringBytes = bytes(addressString);\n uint160 addressNumber = 0;\n uint8 stringByte;\n\n if (stringBytes.length != 42 || stringBytes[0] != '0' || stringBytes[1] != 'x') revert InvalidAddressString();\n\n for (uint256 i = 2; i < 42; ++i) {\n stringByte = uint8(stringBytes[i]);\n\n if ((stringByte >= 97) && (stringByte <= 102)) stringByte -= 87;\n else if ((stringByte >= 65) && (stringByte <= 70)) stringByte -= 55;\n else if ((stringByte >= 48) && (stringByte <= 57)) stringByte -= 48;\n else revert InvalidAddressString();\n\n addressNumber |= uint160(uint256(stringByte) << ((41 - i) << 2));\n }\n\n return address(addressNumber);\n }\n}\n\nlibrary AddressToString {\n function toString(address address_) internal pure returns (string memory) {\n bytes memory addressBytes = abi.encodePacked(address_);\n bytes memory characters = '0123456789abcdef';\n bytes memory stringBytes = new bytes(42);\n\n stringBytes[0] = '0';\n stringBytes[1] = 'x';\n\n for (uint256 i; i < 20; ++i) {\n stringBytes[2 + i * 2] = characters[uint8(addressBytes[i] >> 4)];\n stringBytes[3 + i * 2] = characters[uint8(addressBytes[i] & 0x0f)];\n }\n\n return string(stringBytes);\n }\n}\n" - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol": { - "content": "// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n/**\n * @title GasEstimationType\n * @notice This enum represents the gas estimation types for different chains.\n */\nenum GasEstimationType {\n Default,\n OptimismEcotone,\n OptimismBedrock,\n Arbitrum,\n Scroll\n}\n\n/**\n * @title GasInfo\n * @notice This struct represents the gas pricing information for a specific chain.\n * @dev Smaller uint types are used for efficient struct packing to save storage costs.\n */\nstruct GasInfo {\n /// @dev Custom gas pricing rule, such as L1 data fee on L2s\n uint64 gasEstimationType;\n /// @dev Scalar value needed for specific gas estimation types, expected to be less than 1e10\n uint64 l1FeeScalar;\n /// @dev Axelar base fee for cross-chain message approval on destination, in terms of source native gas token\n uint128 axelarBaseFee;\n /// @dev Gas price of destination chain, in terms of the source chain token, i.e dest_gas_price * dest_token_market_price / src_token_market_price\n uint128 relativeGasPrice;\n /// @dev Needed for specific gas estimation types. Blob base fee of destination chain, in terms of the source chain token, i.e dest_blob_base_fee * dest_token_market_price / src_token_market_price\n uint128 relativeBlobBaseFee;\n /// @dev Axelar express fee for express execution, in terms of source chain token\n uint128 expressFee;\n}\n" - }, - "src/__tests__/contracts/AgoricProxy.sol": { - "content": "// SPDX-License-Identifier: Apache-2.0\npragma solidity ^0.8.20;\n\nimport {AxelarExecutable} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\";\nimport {IAxelarGasService} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\";\nimport {IERC20} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\";\nimport {StringToAddress, AddressToString} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\";\nimport {Ownable} from \"./Ownable.sol\";\n\nstruct CallResult {\n bool success;\n bytes result;\n}\n\nstruct AgoricResponse {\n // false if this is a smart wallet creation, true if it's a contract call\n bool isContractCallResult;\n CallResult[] data;\n}\n\nstruct CallParams {\n address target;\n bytes data;\n}\n\ncontract Wallet is AxelarExecutable, Ownable {\n IAxelarGasService public gasService;\n\n event MulticallExecuted(address indexed executor, CallResult[] results);\n event Received(address indexed sender, uint256 amount);\n\n constructor(\n address gateway_,\n address gasReceiver_,\n string memory owner_\n ) AxelarExecutable(gateway_) Ownable(owner_) {\n gasService = IAxelarGasService(gasReceiver_);\n }\n\n function _multicall(\n bytes calldata payload\n ) internal returns (CallResult[] memory) {\n CallParams[] memory calls = abi.decode(payload, (CallParams[]));\n\n CallResult[] memory results = new CallResult[](calls.length);\n\n for (uint256 i = 0; i < calls.length; i++) {\n (bool success, bytes memory result) = calls[i].target.call(\n calls[i].data\n );\n require(success, \"Contract call failed\");\n results[i] = CallResult(success, result);\n }\n\n emit MulticallExecuted(msg.sender, results);\n return results;\n }\n\n function _execute(\n string calldata /*sourceChain*/,\n string calldata sourceAddress,\n bytes calldata payload\n ) internal override onlyOwner(sourceAddress) {\n _multicall(payload);\n }\n\n function _executeWithToken(\n string calldata /*sourceChain*/,\n string calldata /*sourceAddress*/,\n bytes calldata payload,\n string calldata /*tokenSymbol*/,\n uint256 /*amount*/\n ) internal override {\n _multicall(payload);\n }\n\n receive() external payable {\n emit Received(msg.sender, msg.value);\n }\n\n fallback() external payable {\n emit Received(msg.sender, msg.value);\n }\n}\n\ncontract AgoricProxy is AxelarExecutable {\n using StringToAddress for string;\n using AddressToString for address;\n\n address _gateway;\n IAxelarGasService public immutable gasService;\n string public chainName;\n\n event SmartWalletCreated(\n address indexed wallet,\n string owner,\n string sourceChain,\n string sourceAddress\n );\n event CrossChainCallSent(\n string destinationChain,\n string destinationAddress,\n bytes payload\n );\n event Received(address indexed sender, uint256 amount);\n\n constructor(\n address gateway_,\n address gasReceiver_,\n string memory chainName_\n ) AxelarExecutable(gateway_) {\n gasService = IAxelarGasService(gasReceiver_);\n _gateway = gateway_;\n chainName = chainName_;\n }\n\n function createSmartWallet(string memory owner) public returns (address) {\n address newWallet = address(\n new Wallet(_gateway, address(gasService), owner)\n );\n return newWallet;\n }\n\n function _execute(\n string calldata sourceChain,\n string calldata sourceAddress,\n bytes calldata /*payload*/\n ) internal override {\n address smartWalletAddress = createSmartWallet(sourceAddress);\n emit SmartWalletCreated(\n smartWalletAddress,\n sourceAddress,\n sourceChain,\n sourceAddress\n );\n CallResult[] memory results = new CallResult[](1);\n\n results[0] = CallResult(true, abi.encode(smartWalletAddress));\n\n bytes memory msgPayload = abi.encodePacked(\n bytes4(0x00000000),\n abi.encode(AgoricResponse(false, results))\n );\n _send(sourceChain, sourceAddress, msgPayload);\n }\n\n function _send(\n string calldata destinationChain,\n string calldata destinationAddress,\n bytes memory payload\n ) internal {\n gasService.payNativeGasForContractCall{value: 1000000000000000}(\n address(this),\n destinationChain,\n destinationAddress,\n payload,\n address(this)\n );\n\n gateway.callContract(destinationChain, destinationAddress, payload);\n emit CrossChainCallSent(destinationChain, destinationAddress, payload);\n }\n\n receive() external payable {\n emit Received(msg.sender, msg.value);\n }\n\n fallback() external payable {\n emit Received(msg.sender, msg.value);\n }\n}\n" - }, - "src/__tests__/contracts/Ownable.sol": { - "content": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)\n\npragma solidity ^0.8.20;\n\n/**\n * @dev Contract module which provides a basic access control mechanism, where\n * there is an account (an owner) that can be granted exclusive access to\n * specific functions.\n *\n * The initial owner is set to the address provided by the deployer. This can\n * later be changed with {transferOwnership}.\n *\n * This module is used through inheritance. It will make available the modifier\n * `onlyOwner`, which can be applied to your functions to restrict their use to\n * the owner.\n */\nabstract contract Ownable {\n string private _owner;\n\n /**\n * @dev The caller account is not authorized to perform an operation.\n */\n error OwnableUnauthorizedAccount(string account);\n\n /**\n * @dev The owner is not a valid owner account. (eg. `address(0)`)\n */\n error OwnableInvalidOwner(string owner);\n\n event OwnershipTransferred(\n string indexed previousOwner,\n string indexed newOwner\n );\n\n /**\n * @dev Initializes the contract setting the address provided by the deployer as the initial owner.\n */\n constructor(string memory initialOwner) {\n // if (initialOwner == address(0)) {\n // revert OwnableInvalidOwner(address(0));\n // }\n _transferOwnership(initialOwner);\n }\n\n /**\n * @dev Throws if called by any account other than the owner.\n */\n modifier onlyOwner(string calldata incomingAddress) {\n _checkOwner(incomingAddress);\n _;\n }\n\n /**\n * @dev Returns the address of the current owner.\n */\n function owner() public view virtual returns (string memory) {\n return _owner;\n }\n\n /**\n * @dev Throws if the sender is not the owner.\n */\n function _checkOwner(\n string calldata incomingAddress\n ) internal view virtual {\n if (keccak256(bytes(owner())) != keccak256(bytes(incomingAddress))) {\n revert OwnableUnauthorizedAccount(incomingAddress);\n }\n }\n\n /**\n * @dev Leaves the contract without owner. It will not be possible to call\n * `onlyOwner` functions. Can only be called by the current owner.\n *\n * NOTE: Renouncing ownership will leave the contract without an owner,\n * thereby disabling any functionality that is only available to the owner.\n */\n function renounceOwnership(\n string calldata currentOwner\n ) public virtual onlyOwner(currentOwner) {\n _transferOwnership(\n string(\n abi.encodePacked(\"0x0000000000000000000000000000000000000000\")\n )\n );\n }\n\n /**\n * @dev Transfers ownership of the contract to a new account (`newOwner`).\n * Can only be called by the current owner.\n */\n function transferOwnership(\n string calldata oldOwner,\n string calldata newOwner\n ) public virtual onlyOwner(oldOwner) {\n // if (newOwner == address(0)) {\n // revert OwnableInvalidOwner(address(0));\n // }\n _transferOwnership(newOwner);\n }\n\n /**\n * @dev Transfers ownership of the contract to a new account (`newOwner`).\n * Internal function without access restriction.\n */\n function _transferOwnership(string memory newOwner) internal virtual {\n string memory oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner, newOwner);\n }\n}\n" - }, - "src/__tests__/contracts/SendReceive.sol": { - "content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.9;\n\nimport {AxelarExecutable} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\";\nimport {IAxelarGateway} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\";\nimport {IAxelarGasService} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\";\nimport {StringToAddress, AddressToString} from \"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\";\n\ncontract SendReceive is AxelarExecutable {\n using StringToAddress for string;\n using AddressToString for address;\n\n IAxelarGasService public immutable gasService;\n string public chainName; // name of the chain this contract is deployed to\n\n struct Message {\n string sender;\n string message;\n }\n\n Message public storedMessage; // message received from _execute\n\n constructor(\n address gateway_,\n address gasReceiver_,\n string memory chainName_\n ) AxelarExecutable(gateway_) {\n gasService = IAxelarGasService(gasReceiver_);\n chainName = chainName_;\n }\n\n function send(\n string calldata destinationChain,\n string calldata destinationAddress,\n string calldata message\n ) external payable {\n // 1. Generate GMP payload\n bytes memory executeMsgPayload = abi.encode(\n msg.sender.toString(),\n message\n );\n bytes memory payload = _encodePayloadToCosmWasm(executeMsgPayload);\n\n // 2. Pay for gas\n gasService.payNativeGasForContractCall{value: msg.value}(\n address(this),\n destinationChain,\n destinationAddress,\n payload,\n msg.sender\n );\n\n // 3. Make GMP call\n gateway.callContract(destinationChain, destinationAddress, payload);\n }\n\n function _encodePayloadToCosmWasm(\n bytes memory executeMsgPayload\n ) internal view returns (bytes memory) {\n // Schema\n // bytes4 version number (0x00000001)\n // bytes ABI-encoded payload, indicating function name and arguments:\n // string CosmWasm contract method name\n // dynamic array of string CosmWasm contract argument name array\n // dynamic array of string argument abi type array\n // bytes abi encoded argument values\n\n // contract call arguments for ExecuteMsg::receive_message_evm{ source_chain, source_address, payload }\n bytes memory argValues = abi.encode(\n chainName,\n address(this).toString(),\n executeMsgPayload\n );\n\n string[] memory argumentNameArray = new string[](3);\n argumentNameArray[0] = \"source_chain\";\n argumentNameArray[1] = \"source_address\";\n argumentNameArray[2] = \"payload\";\n\n string[] memory abiTypeArray = new string[](3);\n abiTypeArray[0] = \"string\";\n abiTypeArray[1] = \"string\";\n abiTypeArray[2] = \"bytes\";\n\n bytes memory gmpPayload;\n gmpPayload = abi.encode(\n \"receive_message_evm\",\n argumentNameArray,\n abiTypeArray,\n argValues\n );\n\n return abi.encodePacked(bytes4(0x00000001), gmpPayload);\n }\n\n function _execute(\n string calldata /*sourceChain*/,\n string calldata /*sourceAddress*/,\n bytes calldata payload\n ) internal override {\n (string memory sender, string memory message) = abi.decode(\n payload,\n (string, string)\n );\n storedMessage = Message(sender, message);\n }\n}\n" - } - }, - "settings": { - "optimizer": { - "enabled": true, - "runs": 10000, - "details": { - "yul": true - } - }, - "evmVersion": "paris", - "outputSelection": { - "*": { - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers", - "metadata" - ], - "": [ - "ast" - ] - } - } - } - }, - "output": { - "sources": { - "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", - "exportedSymbols": { - "AxelarExecutable": [ - 137 - ], - "IAxelarExecutable": [ - 178 - ], - "IAxelarGateway": [ - 991 - ] - }, - "id": 138, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:0" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", - "file": "../interfaces/IAxelarGateway.sol", - "id": 3, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 138, - "sourceUnit": 992, - "src": "58:66:0", - "symbolAliases": [ - { - "foreign": { - "id": 2, - "name": "IAxelarGateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 991, - "src": "67:14:0", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol", - "file": "../interfaces/IAxelarExecutable.sol", - "id": 5, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 138, - "sourceUnit": 179, - "src": "125:72:0", - "symbolAliases": [ - { - "foreign": { - "id": 4, - "name": "IAxelarExecutable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 178, - "src": "134:17:0", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 6, - "name": "IAxelarExecutable", - "nameLocations": [ - "228:17:0" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 178, - "src": "228:17:0" - }, - "id": 7, - "nodeType": "InheritanceSpecifier", - "src": "228:17:0" - } - ], - "canonicalName": "AxelarExecutable", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 137, - "linearizedBaseContracts": [ - 137, - 178 - ], - "name": "AxelarExecutable", - "nameLocation": "208:16:0", - "nodeType": "ContractDefinition", - "nodes": [ - { - "baseFunctions": [ - 151 - ], - "constant": false, - "functionSelector": "116191b6", - "id": 10, - "mutability": "immutable", - "name": "gateway", - "nameLocation": "284:7:0", - "nodeType": "VariableDeclaration", - "scope": 137, - "src": "252:39:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - }, - "typeName": { - "id": 9, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8, - "name": "IAxelarGateway", - "nameLocations": [ - "252:14:0" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 991, - "src": "252:14:0" - }, - "referencedDeclaration": 991, - "src": "252:14:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 31, - "nodeType": "Block", - "src": "328:113:0", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 20, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 15, - "name": "gateway_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12, - "src": "342:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 18, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "362:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 17, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "354:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 16, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "354:7:0", - "typeDescriptions": {} - } - }, - "id": 19, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "354:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "342:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 24, - "nodeType": "IfStatement", - "src": "338:51:0", - "trueBody": { - "errorCall": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 21, - "name": "InvalidAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "373:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_error_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 22, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "373:16:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 23, - "nodeType": "RevertStatement", - "src": "366:23:0" - } - }, - { - "expression": { - "id": 29, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 25, - "name": "gateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10, - "src": "400:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 27, - "name": "gateway_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12, - "src": "425:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 26, - "name": "IAxelarGateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 991, - "src": "410:14:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IAxelarGateway_$991_$", - "typeString": "type(contract IAxelarGateway)" - } - }, - "id": 28, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "410:24:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - } - }, - "src": "400:34:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - } - }, - "id": 30, - "nodeType": "ExpressionStatement", - "src": "400:34:0" - } - ] - }, - "id": 32, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 13, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 12, - "mutability": "mutable", - "name": "gateway_", - "nameLocation": "318:8:0", - "nodeType": "VariableDeclaration", - "scope": 32, - "src": "310:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 11, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "310:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "309:18:0" - }, - "returnParameters": { - "id": 14, - "nodeType": "ParameterList", - "parameters": [], - "src": "328:0:0" - }, - "scope": 137, - "src": "298:143:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "baseFunctions": [ - 162 - ], - "body": { - "id": 67, - "nodeType": "Block", - "src": "614:252:0", - "statements": [ - { - "assignments": [ - 44 - ], - "declarations": [ - { - "constant": false, - "id": 44, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "632:11:0", - "nodeType": "VariableDeclaration", - "scope": 67, - "src": "624:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 43, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "624:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 48, - "initialValue": { - "arguments": [ - { - "id": 46, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 40, - "src": "656:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 45, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "646:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 47, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "646:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "624:40:0" - }, - { - "condition": { - "id": 56, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "679:81:0", - "subExpression": { - "arguments": [ - { - "id": 51, - "name": "commandId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 34, - "src": "709:9:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 52, - "name": "sourceChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 36, - "src": "720:11:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 53, - "name": "sourceAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38, - "src": "733:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 54, - "name": "payloadHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 44, - "src": "748:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 49, - "name": "gateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10, - "src": "680:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - } - }, - "id": 50, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "688:20:0", - "memberName": "validateContractCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 895, - "src": "680:28:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$returns$_t_bool_$", - "typeString": "function (bytes32,string memory,string memory,bytes32) external returns (bool)" - } - }, - "id": 55, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "680:80:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 60, - "nodeType": "IfStatement", - "src": "675:128:0", - "trueBody": { - "errorCall": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 57, - "name": "NotApprovedByGateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 145, - "src": "781:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_error_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 58, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "781:22:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 59, - "nodeType": "RevertStatement", - "src": "774:29:0" - } - }, - { - "expression": { - "arguments": [ - { - "id": 62, - "name": "sourceChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 36, - "src": "823:11:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 63, - "name": "sourceAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38, - "src": "836:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 64, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 40, - "src": "851:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 61, - "name": "_execute", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 122, - "src": "814:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_calldata_ptr_$_t_string_calldata_ptr_$_t_bytes_calldata_ptr_$returns$__$", - "typeString": "function (string calldata,string calldata,bytes calldata)" - } - }, - "id": 65, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "814:45:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 66, - "nodeType": "ExpressionStatement", - "src": "814:45:0" - } - ] - }, - "functionSelector": "49160658", - "id": 68, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "execute", - "nameLocation": "456:7:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 41, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 34, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "481:9:0", - "nodeType": "VariableDeclaration", - "scope": 68, - "src": "473:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 33, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "473:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 36, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "516:11:0", - "nodeType": "VariableDeclaration", - "scope": 68, - "src": "500:27:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 35, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "500:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 38, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "553:13:0", - "nodeType": "VariableDeclaration", - "scope": 68, - "src": "537:29:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 37, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "537:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 40, - "mutability": "mutable", - "name": "payload", - "nameLocation": "591:7:0", - "nodeType": "VariableDeclaration", - "scope": 68, - "src": "576:22:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 39, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "576:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "463:141:0" - }, - "returnParameters": { - "id": 42, - "nodeType": "ParameterList", - "parameters": [], - "src": "614:0:0" - }, - "scope": 137, - "src": "447:419:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 177 - ], - "body": { - "id": 111, - "nodeType": "Block", - "src": "1109:430:0", - "statements": [ - { - "assignments": [ - 84 - ], - "declarations": [ - { - "constant": false, - "id": 84, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "1127:11:0", - "nodeType": "VariableDeclaration", - "scope": 111, - "src": "1119:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 83, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1119:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 88, - "initialValue": { - "arguments": [ - { - "id": 86, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 76, - "src": "1151:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 85, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "1141:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 87, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1141:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1119:40:0" - }, - { - "condition": { - "id": 98, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "1187:219:0", - "subExpression": { - "arguments": [ - { - "id": 91, - "name": "commandId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "1241:9:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 92, - "name": "sourceChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 72, - "src": "1268:11:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 93, - "name": "sourceAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "1297:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 94, - "name": "payloadHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 84, - "src": "1328:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 95, - "name": "tokenSymbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 78, - "src": "1357:11:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 96, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 80, - "src": "1386:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 89, - "name": "gateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10, - "src": "1188:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - } - }, - "id": 90, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1196:27:0", - "memberName": "validateContractCallAndMint", - "nodeType": "MemberAccess", - "referencedDeclaration": 912, - "src": "1188:35:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (bytes32,string memory,string memory,bytes32,string memory,uint256) external returns (bool)" - } - }, - "id": 97, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1188:218:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 102, - "nodeType": "IfStatement", - "src": "1170:276:0", - "trueBody": { - "errorCall": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 99, - "name": "NotApprovedByGateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 145, - "src": "1424:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_error_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 100, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1424:22:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 101, - "nodeType": "RevertStatement", - "src": "1417:29:0" - } - }, - { - "expression": { - "arguments": [ - { - "id": 104, - "name": "sourceChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 72, - "src": "1475:11:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 105, - "name": "sourceAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "1488:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 106, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 76, - "src": "1503:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "id": 107, - "name": "tokenSymbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 78, - "src": "1512:11:0", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 108, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 80, - "src": "1525:6:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 103, - "name": "_executeWithToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 136, - "src": "1457:17:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_calldata_ptr_$_t_string_calldata_ptr_$_t_bytes_calldata_ptr_$_t_string_calldata_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string calldata,string calldata,bytes calldata,string calldata,uint256)" - } - }, - "id": 109, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1457:75:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 110, - "nodeType": "ExpressionStatement", - "src": "1457:75:0" - } - ] - }, - "functionSelector": "1a98b2e0", - "id": 112, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "executeWithToken", - "nameLocation": "881:16:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 81, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 70, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "915:9:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "907:17:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 69, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "907:7:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 72, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "950:11:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "934:27:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 71, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "934:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 74, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "987:13:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "971:29:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 73, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "971:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 76, - "mutability": "mutable", - "name": "payload", - "nameLocation": "1025:7:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "1010:22:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 75, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1010:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 78, - "mutability": "mutable", - "name": "tokenSymbol", - "nameLocation": "1058:11:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "1042:27:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 77, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1042:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 80, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1087:6:0", - "nodeType": "VariableDeclaration", - "scope": 112, - "src": "1079:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 79, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1079:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "897:202:0" - }, - "returnParameters": { - "id": 82, - "nodeType": "ParameterList", - "parameters": [], - "src": "1109:0:0" - }, - "scope": 137, - "src": "872:667:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 121, - "nodeType": "Block", - "src": "1694:2:0", - "statements": [] - }, - "id": 122, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_execute", - "nameLocation": "1554:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 119, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 114, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "1588:11:0", - "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1572:27:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 113, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1572:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 116, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "1625:13:0", - "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1609:29:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 115, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1609:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 118, - "mutability": "mutable", - "name": "payload", - "nameLocation": "1663:7:0", - "nodeType": "VariableDeclaration", - "scope": 122, - "src": "1648:22:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 117, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1648:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1562:114:0" - }, - "returnParameters": { - "id": 120, - "nodeType": "ParameterList", - "parameters": [], - "src": "1694:0:0" - }, - "scope": 137, - "src": "1545:151:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 135, - "nodeType": "Block", - "src": "1921:2:0", - "statements": [] - }, - "id": 136, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_executeWithToken", - "nameLocation": "1711:17:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 133, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 124, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "1754:11:0", - "nodeType": "VariableDeclaration", - "scope": 136, - "src": "1738:27:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 123, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1738:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 126, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "1791:13:0", - "nodeType": "VariableDeclaration", - "scope": 136, - "src": "1775:29:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 125, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1775:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 128, - "mutability": "mutable", - "name": "payload", - "nameLocation": "1829:7:0", - "nodeType": "VariableDeclaration", - "scope": 136, - "src": "1814:22:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 127, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1814:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 130, - "mutability": "mutable", - "name": "tokenSymbol", - "nameLocation": "1862:11:0", - "nodeType": "VariableDeclaration", - "scope": 136, - "src": "1846:27:0", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 129, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1846:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 132, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1891:6:0", - "nodeType": "VariableDeclaration", - "scope": 136, - "src": "1883:14:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 131, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1883:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1728:175:0" - }, - "returnParameters": { - "id": 134, - "nodeType": "ParameterList", - "parameters": [], - "src": "1921:0:0" - }, - "scope": 137, - "src": "1702:221:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 138, - "src": "199:1726:0", - "usedErrors": [ - 143, - 145 - ], - "usedEvents": [] - } - ], - "src": "33:1893:0" - }, - "id": 0 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol", - "exportedSymbols": { - "IAxelarExecutable": [ - 178 - ], - "IAxelarGateway": [ - 991 - ] - }, - "id": 179, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 139, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:1" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", - "file": "./IAxelarGateway.sol", - "id": 141, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 179, - "sourceUnit": 992, - "src": "58:54:1", - "symbolAliases": [ - { - "foreign": { - "id": 140, - "name": "IAxelarGateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 991, - "src": "67:14:1", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IAxelarExecutable", - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "id": 178, - "linearizedBaseContracts": [ - 178 - ], - "name": "IAxelarExecutable", - "nameLocation": "124:17:1", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "e6c4247b", - "id": 143, - "name": "InvalidAddress", - "nameLocation": "154:14:1", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 142, - "nodeType": "ParameterList", - "parameters": [], - "src": "168:2:1" - }, - "src": "148:23:1" - }, - { - "errorSelector": "500c44b4", - "id": 145, - "name": "NotApprovedByGateway", - "nameLocation": "182:20:1", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 144, - "nodeType": "ParameterList", - "parameters": [], - "src": "202:2:1" - }, - "src": "176:29:1" - }, - { - "functionSelector": "116191b6", - "id": 151, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "gateway", - "nameLocation": "220:7:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 146, - "nodeType": "ParameterList", - "parameters": [], - "src": "227:2:1" - }, - "returnParameters": { - "id": 150, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 149, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 151, - "src": "253:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - }, - "typeName": { - "id": 148, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 147, - "name": "IAxelarGateway", - "nameLocations": [ - "253:14:1" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 991, - "src": "253:14:1" - }, - "referencedDeclaration": 991, - "src": "253:14:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - } - }, - "visibility": "internal" - } - ], - "src": "252:16:1" - }, - "scope": 178, - "src": "211:58:1", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "49160658", - "id": 162, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "execute", - "nameLocation": "284:7:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 160, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 153, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "309:9:1", - "nodeType": "VariableDeclaration", - "scope": 162, - "src": "301:17:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 152, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "301:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 155, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "344:11:1", - "nodeType": "VariableDeclaration", - "scope": 162, - "src": "328:27:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 154, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "328:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 157, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "381:13:1", - "nodeType": "VariableDeclaration", - "scope": 162, - "src": "365:29:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 156, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "365:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 159, - "mutability": "mutable", - "name": "payload", - "nameLocation": "419:7:1", - "nodeType": "VariableDeclaration", - "scope": 162, - "src": "404:22:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 158, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "404:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "291:141:1" - }, - "returnParameters": { - "id": 161, - "nodeType": "ParameterList", - "parameters": [], - "src": "441:0:1" - }, - "scope": 178, - "src": "275:167:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1a98b2e0", - "id": 177, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "executeWithToken", - "nameLocation": "457:16:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 175, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 164, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "491:9:1", - "nodeType": "VariableDeclaration", - "scope": 177, - "src": "483:17:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 163, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "483:7:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 166, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "526:11:1", - "nodeType": "VariableDeclaration", - "scope": 177, - "src": "510:27:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 165, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "510:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 168, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "563:13:1", - "nodeType": "VariableDeclaration", - "scope": 177, - "src": "547:29:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 167, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "547:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 170, - "mutability": "mutable", - "name": "payload", - "nameLocation": "601:7:1", - "nodeType": "VariableDeclaration", - "scope": 177, - "src": "586:22:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 169, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "586:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 172, - "mutability": "mutable", - "name": "tokenSymbol", - "nameLocation": "634:11:1", - "nodeType": "VariableDeclaration", - "scope": 177, - "src": "618:27:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 171, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "618:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 174, - "mutability": "mutable", - "name": "amount", - "nameLocation": "663:6:1", - "nodeType": "VariableDeclaration", - "scope": 177, - "src": "655:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 173, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "655:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "473:202:1" - }, - "returnParameters": { - "id": 176, - "nodeType": "ParameterList", - "parameters": [], - "src": "684:0:1" - }, - "scope": 178, - "src": "448:237:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 179, - "src": "114:573:1", - "usedErrors": [ - 143, - 145 - ], - "usedEvents": [] - } - ], - "src": "33:655:1" - }, - "id": 1 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", - "exportedSymbols": { - "GasInfo": [ - 1526 - ], - "IAxelarGasService": [ - 655 - ], - "IInterchainGasEstimation": [ - 1187 - ], - "IUpgradable": [ - 1268 - ] - }, - "id": 656, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 180, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:2" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol", - "file": "../types/GasEstimationTypes.sol", - "id": 182, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 656, - "sourceUnit": 1527, - "src": "58:58:2", - "symbolAliases": [ - { - "foreign": { - "id": 181, - "name": "GasInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "67:7:2", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol", - "file": "./IInterchainGasEstimation.sol", - "id": 184, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 656, - "sourceUnit": 1188, - "src": "117:74:2", - "symbolAliases": [ - { - "foreign": { - "id": 183, - "name": "IInterchainGasEstimation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1187, - "src": "126:24:2", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol", - "file": "./IUpgradable.sol", - "id": 186, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 656, - "sourceUnit": 1269, - "src": "192:48:2", - "symbolAliases": [ - { - "foreign": { - "id": 185, - "name": "IUpgradable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1268, - "src": "201:11:2", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 188, - "name": "IInterchainGasEstimation", - "nameLocations": [ - "524:24:2" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1187, - "src": "524:24:2" - }, - "id": 189, - "nodeType": "InheritanceSpecifier", - "src": "524:24:2" - }, - { - "baseName": { - "id": 190, - "name": "IUpgradable", - "nameLocations": [ - "550:11:2" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1268, - "src": "550:11:2" - }, - "id": 191, - "nodeType": "InheritanceSpecifier", - "src": "550:11:2" - } - ], - "canonicalName": "IAxelarGasService", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 187, - "nodeType": "StructuredDocumentation", - "src": "242:250:2", - "text": " @title IAxelarGasService Interface\n @notice This is an interface for the AxelarGasService contract which manages gas payments\n and refunds for cross-chain communication on the Axelar network.\n @dev This interface inherits IUpgradable" - }, - "fullyImplemented": false, - "id": 655, - "linearizedBaseContracts": [ - 655, - 1268, - 1142, - 1000, - 1233, - 1187 - ], - "name": "IAxelarGasService", - "nameLocation": "503:17:2", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "e6c4247b", - "id": 193, - "name": "InvalidAddress", - "nameLocation": "574:14:2", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 192, - "nodeType": "ParameterList", - "parameters": [], - "src": "588:2:2" - }, - "src": "568:23:2" - }, - { - "errorSelector": "77620600", - "id": 195, - "name": "NotCollector", - "nameLocation": "602:12:2", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 194, - "nodeType": "ParameterList", - "parameters": [], - "src": "614:2:2" - }, - "src": "596:21:2" - }, - { - "errorSelector": "d856fc5a", - "id": 197, - "name": "InvalidAmounts", - "nameLocation": "628:14:2", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 196, - "nodeType": "ParameterList", - "parameters": [], - "src": "642:2:2" - }, - "src": "622:23:2" - }, - { - "errorSelector": "a5f1efe3", - "id": 199, - "name": "InvalidGasUpdates", - "nameLocation": "656:17:2", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 198, - "nodeType": "ParameterList", - "parameters": [], - "src": "673:2:2" - }, - "src": "650:26:2" - }, - { - "errorSelector": "a86b6512", - "id": 201, - "name": "InvalidParams", - "nameLocation": "687:13:2", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 200, - "nodeType": "ParameterList", - "parameters": [], - "src": "700:2:2" - }, - "src": "681:22:2" - }, - { - "errorSelector": "5b1fe5fc", - "id": 207, - "name": "InsufficientGasPayment", - "nameLocation": "714:22:2", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 206, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 203, - "mutability": "mutable", - "name": "required", - "nameLocation": "745:8:2", - "nodeType": "VariableDeclaration", - "scope": 207, - "src": "737:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 202, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "737:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 205, - "mutability": "mutable", - "name": "provided", - "nameLocation": "763:8:2", - "nodeType": "VariableDeclaration", - "scope": 207, - "src": "755:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 204, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "755:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "736:36:2" - }, - "src": "708:65:2" - }, - { - "anonymous": false, - "eventSelector": "99206760f0be19dd093729bd35e5924daff5e217bcedc5223ed067b60008cf8a", - "id": 223, - "name": "GasPaidForContractCall", - "nameLocation": "785:22:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 222, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 209, - "indexed": true, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "833:13:2", - "nodeType": "VariableDeclaration", - "scope": 223, - "src": "817:29:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 208, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "817:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 211, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "863:16:2", - "nodeType": "VariableDeclaration", - "scope": 223, - "src": "856:23:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 210, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "856:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 213, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "896:18:2", - "nodeType": "VariableDeclaration", - "scope": 223, - "src": "889:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 212, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "889:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 215, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "940:11:2", - "nodeType": "VariableDeclaration", - "scope": 223, - "src": "924:27:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 214, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "924:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 217, - "indexed": false, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "969:8:2", - "nodeType": "VariableDeclaration", - "scope": 223, - "src": "961:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 216, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "961:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 219, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "995:12:2", - "nodeType": "VariableDeclaration", - "scope": 223, - "src": "987:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 218, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "987:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 221, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "1025:13:2", - "nodeType": "VariableDeclaration", - "scope": 223, - "src": "1017:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 220, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1017:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "807:237:2" - }, - "src": "779:266:2" - }, - { - "anonymous": false, - "eventSelector": "8875f9764f28fa82d3e7ff1b80bd5c8f665e1f42fcd8c2faebc7c400a4ba1bbd", - "id": 243, - "name": "GasPaidForContractCallWithToken", - "nameLocation": "1057:31:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 242, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 225, - "indexed": true, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "1114:13:2", - "nodeType": "VariableDeclaration", - "scope": 243, - "src": "1098:29:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 224, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1098:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 227, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "1144:16:2", - "nodeType": "VariableDeclaration", - "scope": 243, - "src": "1137:23:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 226, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1137:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 229, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "1177:18:2", - "nodeType": "VariableDeclaration", - "scope": 243, - "src": "1170:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 228, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1170:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 231, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "1221:11:2", - "nodeType": "VariableDeclaration", - "scope": 243, - "src": "1205:27:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 230, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1205:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 233, - "indexed": false, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "1249:6:2", - "nodeType": "VariableDeclaration", - "scope": 243, - "src": "1242:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 232, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1242:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 235, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1273:6:2", - "nodeType": "VariableDeclaration", - "scope": 243, - "src": "1265:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 234, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1265:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 237, - "indexed": false, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "1297:8:2", - "nodeType": "VariableDeclaration", - "scope": 243, - "src": "1289:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 236, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1289:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 239, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "1323:12:2", - "nodeType": "VariableDeclaration", - "scope": 243, - "src": "1315:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 238, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1315:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 241, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "1353:13:2", - "nodeType": "VariableDeclaration", - "scope": 243, - "src": "1345:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 240, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1345:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1088:284:2" - }, - "src": "1051:322:2" - }, - { - "anonymous": false, - "eventSelector": "617332c1832058df6ee45fcbdf471251474c9945a8e5d229287a21a5f67ccf0a", - "id": 257, - "name": "NativeGasPaidForContractCall", - "nameLocation": "1385:28:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 256, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 245, - "indexed": true, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "1439:13:2", - "nodeType": "VariableDeclaration", - "scope": 257, - "src": "1423:29:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 244, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1423:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 247, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "1469:16:2", - "nodeType": "VariableDeclaration", - "scope": 257, - "src": "1462:23:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 246, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1462:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 249, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "1502:18:2", - "nodeType": "VariableDeclaration", - "scope": 257, - "src": "1495:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 248, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1495:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 251, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "1546:11:2", - "nodeType": "VariableDeclaration", - "scope": 257, - "src": "1530:27:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 250, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1530:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 253, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "1575:12:2", - "nodeType": "VariableDeclaration", - "scope": 257, - "src": "1567:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 252, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1567:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 255, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "1605:13:2", - "nodeType": "VariableDeclaration", - "scope": 257, - "src": "1597:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 254, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1597:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1413:211:2" - }, - "src": "1379:246:2" - }, - { - "anonymous": false, - "eventSelector": "999d431b58761213cf53af96262b67a069cbd963499fd8effd1e21556217b841", - "id": 275, - "name": "NativeGasPaidForContractCallWithToken", - "nameLocation": "1637:37:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 274, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 259, - "indexed": true, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "1700:13:2", - "nodeType": "VariableDeclaration", - "scope": 275, - "src": "1684:29:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 258, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1684:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 261, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "1730:16:2", - "nodeType": "VariableDeclaration", - "scope": 275, - "src": "1723:23:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 260, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1723:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 263, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "1763:18:2", - "nodeType": "VariableDeclaration", - "scope": 275, - "src": "1756:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 262, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1756:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 265, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "1807:11:2", - "nodeType": "VariableDeclaration", - "scope": 275, - "src": "1791:27:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 264, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1791:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 267, - "indexed": false, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "1835:6:2", - "nodeType": "VariableDeclaration", - "scope": 275, - "src": "1828:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 266, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1828:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 269, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1859:6:2", - "nodeType": "VariableDeclaration", - "scope": 275, - "src": "1851:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 268, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1851:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 271, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "1883:12:2", - "nodeType": "VariableDeclaration", - "scope": 275, - "src": "1875:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 270, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1875:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 273, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "1913:13:2", - "nodeType": "VariableDeclaration", - "scope": 275, - "src": "1905:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 272, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1905:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1674:258:2" - }, - "src": "1631:302:2" - }, - { - "anonymous": false, - "eventSelector": "d171a7eb157e548ca493dd0a16016d125963a369ac5ae3c275ec12c96d527702", - "id": 291, - "name": "GasPaidForExpressCall", - "nameLocation": "1945:21:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 290, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 277, - "indexed": true, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "1992:13:2", - "nodeType": "VariableDeclaration", - "scope": 291, - "src": "1976:29:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 276, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1976:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 279, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "2022:16:2", - "nodeType": "VariableDeclaration", - "scope": 291, - "src": "2015:23:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 278, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2015:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 281, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "2055:18:2", - "nodeType": "VariableDeclaration", - "scope": 291, - "src": "2048:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 280, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2048:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 283, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "2099:11:2", - "nodeType": "VariableDeclaration", - "scope": 291, - "src": "2083:27:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 282, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2083:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 285, - "indexed": false, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "2128:8:2", - "nodeType": "VariableDeclaration", - "scope": 291, - "src": "2120:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 284, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2120:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 287, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "2154:12:2", - "nodeType": "VariableDeclaration", - "scope": 291, - "src": "2146:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 286, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2146:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 289, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "2184:13:2", - "nodeType": "VariableDeclaration", - "scope": 291, - "src": "2176:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 288, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2176:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1966:237:2" - }, - "src": "1939:265:2" - }, - { - "anonymous": false, - "eventSelector": "da4ed638a7ffe9e814722efdb9ad6058c152c19c8564ceffe52e11dda1ca3223", - "id": 311, - "name": "GasPaidForExpressCallWithToken", - "nameLocation": "2216:30:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 310, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 293, - "indexed": true, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "2272:13:2", - "nodeType": "VariableDeclaration", - "scope": 311, - "src": "2256:29:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 292, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2256:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 295, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "2302:16:2", - "nodeType": "VariableDeclaration", - "scope": 311, - "src": "2295:23:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 294, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2295:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 297, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "2335:18:2", - "nodeType": "VariableDeclaration", - "scope": 311, - "src": "2328:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 296, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2328:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 299, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "2379:11:2", - "nodeType": "VariableDeclaration", - "scope": 311, - "src": "2363:27:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 298, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2363:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 301, - "indexed": false, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "2407:6:2", - "nodeType": "VariableDeclaration", - "scope": 311, - "src": "2400:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 300, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2400:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 303, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2431:6:2", - "nodeType": "VariableDeclaration", - "scope": 311, - "src": "2423:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 302, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2423:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 305, - "indexed": false, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "2455:8:2", - "nodeType": "VariableDeclaration", - "scope": 311, - "src": "2447:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 304, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2447:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 307, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "2481:12:2", - "nodeType": "VariableDeclaration", - "scope": 311, - "src": "2473:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 306, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2473:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 309, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "2511:13:2", - "nodeType": "VariableDeclaration", - "scope": 311, - "src": "2503:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 308, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2503:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2246:284:2" - }, - "src": "2210:321:2" - }, - { - "anonymous": false, - "eventSelector": "5cf48f121a0fecaa2c4a64b3eaf482c8c308d5387e161535970f3e9e4363eff6", - "id": 325, - "name": "NativeGasPaidForExpressCall", - "nameLocation": "2543:27:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 324, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 313, - "indexed": true, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "2596:13:2", - "nodeType": "VariableDeclaration", - "scope": 325, - "src": "2580:29:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 312, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2580:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 315, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "2626:16:2", - "nodeType": "VariableDeclaration", - "scope": 325, - "src": "2619:23:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 314, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2619:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 317, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "2659:18:2", - "nodeType": "VariableDeclaration", - "scope": 325, - "src": "2652:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 316, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2652:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 319, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "2703:11:2", - "nodeType": "VariableDeclaration", - "scope": 325, - "src": "2687:27:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 318, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2687:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 321, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "2732:12:2", - "nodeType": "VariableDeclaration", - "scope": 325, - "src": "2724:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 320, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2724:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 323, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "2762:13:2", - "nodeType": "VariableDeclaration", - "scope": 325, - "src": "2754:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 322, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2754:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2570:211:2" - }, - "src": "2537:245:2" - }, - { - "anonymous": false, - "eventSelector": "8c092067e86e85e8cfbaf187202ef580cdfd7ec37fbec89191607de73ca80005", - "id": 343, - "name": "NativeGasPaidForExpressCallWithToken", - "nameLocation": "2794:36:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 342, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 327, - "indexed": true, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "2856:13:2", - "nodeType": "VariableDeclaration", - "scope": 343, - "src": "2840:29:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 326, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2840:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 329, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "2886:16:2", - "nodeType": "VariableDeclaration", - "scope": 343, - "src": "2879:23:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 328, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2879:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 331, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "2919:18:2", - "nodeType": "VariableDeclaration", - "scope": 343, - "src": "2912:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 330, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2912:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 333, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "2963:11:2", - "nodeType": "VariableDeclaration", - "scope": 343, - "src": "2947:27:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 332, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2947:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 335, - "indexed": false, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "2991:6:2", - "nodeType": "VariableDeclaration", - "scope": 343, - "src": "2984:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 334, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2984:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 337, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3015:6:2", - "nodeType": "VariableDeclaration", - "scope": 343, - "src": "3007:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 336, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3007:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 339, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "3039:12:2", - "nodeType": "VariableDeclaration", - "scope": 343, - "src": "3031:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 338, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3031:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 341, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "3069:13:2", - "nodeType": "VariableDeclaration", - "scope": 343, - "src": "3061:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 340, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3061:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2830:258:2" - }, - "src": "2788:301:2" - }, - { - "anonymous": false, - "eventSelector": "2275e75614080f9782f72563c2c1688c901c5339c7f9f436d323f9386fed700a", - "id": 355, - "name": "GasAdded", - "nameLocation": "3101:8:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 354, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 345, - "indexed": true, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "3135:6:2", - "nodeType": "VariableDeclaration", - "scope": 355, - "src": "3119:22:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 344, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3119:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 347, - "indexed": true, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "3167:8:2", - "nodeType": "VariableDeclaration", - "scope": 355, - "src": "3151:24:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 346, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3151:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 349, - "indexed": false, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "3193:8:2", - "nodeType": "VariableDeclaration", - "scope": 355, - "src": "3185:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 348, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3185:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 351, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "3219:12:2", - "nodeType": "VariableDeclaration", - "scope": 355, - "src": "3211:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 350, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3211:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 353, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "3249:13:2", - "nodeType": "VariableDeclaration", - "scope": 355, - "src": "3241:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 352, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3241:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3109:159:2" - }, - "src": "3095:174:2" - }, - { - "anonymous": false, - "eventSelector": "feb6b00343feee0f29a1a4345f8bf93ca1c73ee922248a4237a4e50d6447604e", - "id": 365, - "name": "NativeGasAdded", - "nameLocation": "3281:14:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 364, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 357, - "indexed": true, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "3312:6:2", - "nodeType": "VariableDeclaration", - "scope": 365, - "src": "3296:22:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 356, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3296:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 359, - "indexed": true, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "3336:8:2", - "nodeType": "VariableDeclaration", - "scope": 365, - "src": "3320:24:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 358, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3320:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 361, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "3354:12:2", - "nodeType": "VariableDeclaration", - "scope": 365, - "src": "3346:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 360, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3346:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 363, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "3376:13:2", - "nodeType": "VariableDeclaration", - "scope": 365, - "src": "3368:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 362, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3368:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3295:95:2" - }, - "src": "3275:116:2" - }, - { - "anonymous": false, - "eventSelector": "f0b09bf969e7958967e0968e22596f647dd6efa09f4778e0393967b881f4b09f", - "id": 377, - "name": "ExpressGasAdded", - "nameLocation": "3403:15:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 376, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 367, - "indexed": true, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "3444:6:2", - "nodeType": "VariableDeclaration", - "scope": 377, - "src": "3428:22:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 366, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3428:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 369, - "indexed": true, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "3476:8:2", - "nodeType": "VariableDeclaration", - "scope": 377, - "src": "3460:24:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 368, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3460:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 371, - "indexed": false, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "3502:8:2", - "nodeType": "VariableDeclaration", - "scope": 377, - "src": "3494:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 370, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3494:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 373, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "3528:12:2", - "nodeType": "VariableDeclaration", - "scope": 377, - "src": "3520:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 372, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3520:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 375, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "3558:13:2", - "nodeType": "VariableDeclaration", - "scope": 377, - "src": "3550:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 374, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3550:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3418:159:2" - }, - "src": "3397:181:2" - }, - { - "anonymous": false, - "eventSelector": "b26db521e067acd5c6e345ad92fa1ed06bc7fb2aedd68f35dc7a2e10d636fc98", - "id": 387, - "name": "NativeExpressGasAdded", - "nameLocation": "3590:21:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 386, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 379, - "indexed": true, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "3637:6:2", - "nodeType": "VariableDeclaration", - "scope": 387, - "src": "3621:22:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 378, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3621:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 381, - "indexed": true, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "3669:8:2", - "nodeType": "VariableDeclaration", - "scope": 387, - "src": "3653:24:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 380, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3653:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 383, - "indexed": false, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "3695:12:2", - "nodeType": "VariableDeclaration", - "scope": 387, - "src": "3687:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 382, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3687:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 385, - "indexed": false, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "3725:13:2", - "nodeType": "VariableDeclaration", - "scope": 387, - "src": "3717:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 384, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3717:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3611:133:2" - }, - "src": "3584:161:2" - }, - { - "anonymous": false, - "eventSelector": "d5df103822011013c8c940930e5180419111c65abadd6525ca7e740d56b4703f", - "id": 399, - "name": "Refunded", - "nameLocation": "3757:8:2", - "nodeType": "EventDefinition", - "parameters": { - "id": 398, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 389, - "indexed": true, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "3791:6:2", - "nodeType": "VariableDeclaration", - "scope": 399, - "src": "3775:22:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 388, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3775:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 391, - "indexed": true, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "3823:8:2", - "nodeType": "VariableDeclaration", - "scope": 399, - "src": "3807:24:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 390, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3807:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 393, - "indexed": false, - "mutability": "mutable", - "name": "receiver", - "nameLocation": "3857:8:2", - "nodeType": "VariableDeclaration", - "scope": 399, - "src": "3841:24:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 392, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3841:15:2", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 395, - "indexed": false, - "mutability": "mutable", - "name": "token", - "nameLocation": "3883:5:2", - "nodeType": "VariableDeclaration", - "scope": 399, - "src": "3875:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 394, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3875:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 397, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3906:6:2", - "nodeType": "VariableDeclaration", - "scope": 399, - "src": "3898:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 396, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3898:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3765:153:2" - }, - "src": "3751:168:2" - }, - { - "documentation": { - "id": 400, - "nodeType": "StructuredDocumentation", - "src": "3925:937:2", - "text": " @notice Pay for gas for any type of contract execution on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @dev If estimateOnChain is true, the function will estimate the gas cost and revert if the payment is insufficient.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param executionGasLimit The gas limit for the contract call\n @param estimateOnChain Flag to enable on-chain gas estimation\n @param refundAddress The address where refunds, if any, should be sent\n @param params Additional parameters for gas payment. This can be left empty for normal contract call payments." - }, - "functionSelector": "edf936f2", - "id": 419, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payGas", - "nameLocation": "4876:6:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 417, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 402, - "mutability": "mutable", - "name": "sender", - "nameLocation": "4900:6:2", - "nodeType": "VariableDeclaration", - "scope": 419, - "src": "4892:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 401, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4892:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 404, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "4932:16:2", - "nodeType": "VariableDeclaration", - "scope": 419, - "src": "4916:32:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 403, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4916:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 406, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "4974:18:2", - "nodeType": "VariableDeclaration", - "scope": 419, - "src": "4958:34:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 405, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4958:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 408, - "mutability": "mutable", - "name": "payload", - "nameLocation": "5017:7:2", - "nodeType": "VariableDeclaration", - "scope": 419, - "src": "5002:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 407, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5002:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 410, - "mutability": "mutable", - "name": "executionGasLimit", - "nameLocation": "5042:17:2", - "nodeType": "VariableDeclaration", - "scope": 419, - "src": "5034:25:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 409, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5034:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 412, - "mutability": "mutable", - "name": "estimateOnChain", - "nameLocation": "5074:15:2", - "nodeType": "VariableDeclaration", - "scope": 419, - "src": "5069:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 411, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5069:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 414, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "5107:13:2", - "nodeType": "VariableDeclaration", - "scope": 419, - "src": "5099:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 413, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5099:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 416, - "mutability": "mutable", - "name": "params", - "nameLocation": "5145:6:2", - "nodeType": "VariableDeclaration", - "scope": 419, - "src": "5130:21:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 415, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5130:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4882:275:2" - }, - "returnParameters": { - "id": 418, - "nodeType": "ParameterList", - "parameters": [], - "src": "5174:0:2" - }, - "scope": 655, - "src": "4867:308:2", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 420, - "nodeType": "StructuredDocumentation", - "src": "5181:700:2", - "text": " @notice Pay for gas using ERC20 tokens for a contract call on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param gasToken The address of the ERC20 token used to pay for gas\n @param gasFeeAmount The amount of tokens to pay for gas\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "fd09e3bd", - "id": 437, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payGasForContractCall", - "nameLocation": "5895:21:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 435, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 422, - "mutability": "mutable", - "name": "sender", - "nameLocation": "5934:6:2", - "nodeType": "VariableDeclaration", - "scope": 437, - "src": "5926:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 421, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5926:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 424, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "5966:16:2", - "nodeType": "VariableDeclaration", - "scope": 437, - "src": "5950:32:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 423, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5950:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 426, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "6008:18:2", - "nodeType": "VariableDeclaration", - "scope": 437, - "src": "5992:34:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 425, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5992:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 428, - "mutability": "mutable", - "name": "payload", - "nameLocation": "6051:7:2", - "nodeType": "VariableDeclaration", - "scope": 437, - "src": "6036:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 427, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6036:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 430, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "6076:8:2", - "nodeType": "VariableDeclaration", - "scope": 437, - "src": "6068:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 429, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6068:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 432, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "6102:12:2", - "nodeType": "VariableDeclaration", - "scope": 437, - "src": "6094:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 431, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6094:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 434, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "6132:13:2", - "nodeType": "VariableDeclaration", - "scope": 437, - "src": "6124:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 433, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6124:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "5916:235:2" - }, - "returnParameters": { - "id": 436, - "nodeType": "ParameterList", - "parameters": [], - "src": "6160:0:2" - }, - "scope": 655, - "src": "5886:275:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 438, - "nodeType": "StructuredDocumentation", - "src": "6167:873:2", - "text": " @notice Pay for gas using ERC20 tokens for a contract call with tokens on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call with tokens will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call with tokens\n @param symbol The symbol of the token to be sent with the call\n @param amount The amount of tokens to be sent with the call\n @param gasToken The address of the ERC20 token used to pay for gas\n @param gasFeeAmount The amount of tokens to pay for gas\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "edb6b3a5", - "id": 459, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payGasForContractCallWithToken", - "nameLocation": "7054:30:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 457, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 440, - "mutability": "mutable", - "name": "sender", - "nameLocation": "7102:6:2", - "nodeType": "VariableDeclaration", - "scope": 459, - "src": "7094:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 439, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7094:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 442, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "7134:16:2", - "nodeType": "VariableDeclaration", - "scope": 459, - "src": "7118:32:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 441, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7118:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 444, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "7176:18:2", - "nodeType": "VariableDeclaration", - "scope": 459, - "src": "7160:34:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 443, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7160:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 446, - "mutability": "mutable", - "name": "payload", - "nameLocation": "7219:7:2", - "nodeType": "VariableDeclaration", - "scope": 459, - "src": "7204:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 445, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7204:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 448, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "7252:6:2", - "nodeType": "VariableDeclaration", - "scope": 459, - "src": "7236:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 447, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7236:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 450, - "mutability": "mutable", - "name": "amount", - "nameLocation": "7276:6:2", - "nodeType": "VariableDeclaration", - "scope": 459, - "src": "7268:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 449, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7268:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 452, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "7300:8:2", - "nodeType": "VariableDeclaration", - "scope": 459, - "src": "7292:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 451, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7292:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 454, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "7326:12:2", - "nodeType": "VariableDeclaration", - "scope": 459, - "src": "7318:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 453, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7318:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 456, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "7356:13:2", - "nodeType": "VariableDeclaration", - "scope": 459, - "src": "7348:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 455, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7348:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "7084:291:2" - }, - "returnParameters": { - "id": 458, - "nodeType": "ParameterList", - "parameters": [], - "src": "7384:0:2" - }, - "scope": 655, - "src": "7045:340:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 460, - "nodeType": "StructuredDocumentation", - "src": "7391:566:2", - "text": " @notice Pay for gas using native currency for a contract call on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "0c93e3bb", - "id": 473, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payNativeGasForContractCall", - "nameLocation": "7971:27:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 471, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 462, - "mutability": "mutable", - "name": "sender", - "nameLocation": "8016:6:2", - "nodeType": "VariableDeclaration", - "scope": 473, - "src": "8008:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 461, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8008:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 464, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "8048:16:2", - "nodeType": "VariableDeclaration", - "scope": 473, - "src": "8032:32:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 463, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8032:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 466, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "8090:18:2", - "nodeType": "VariableDeclaration", - "scope": 473, - "src": "8074:34:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 465, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8074:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 468, - "mutability": "mutable", - "name": "payload", - "nameLocation": "8133:7:2", - "nodeType": "VariableDeclaration", - "scope": 473, - "src": "8118:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 467, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8118:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 470, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "8158:13:2", - "nodeType": "VariableDeclaration", - "scope": 473, - "src": "8150:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 469, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8150:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "7998:179:2" - }, - "returnParameters": { - "id": 472, - "nodeType": "ParameterList", - "parameters": [], - "src": "8194:0:2" - }, - "scope": 655, - "src": "7962:233:2", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 474, - "nodeType": "StructuredDocumentation", - "src": "8201:739:2", - "text": " @notice Pay for gas using native currency for a contract call with tokens on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call with tokens will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call with tokens\n @param symbol The symbol of the token to be sent with the call\n @param amount The amount of tokens to be sent with the call\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "c62c2002", - "id": 491, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payNativeGasForContractCallWithToken", - "nameLocation": "8954:36:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 489, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 476, - "mutability": "mutable", - "name": "sender", - "nameLocation": "9008:6:2", - "nodeType": "VariableDeclaration", - "scope": 491, - "src": "9000:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 475, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9000:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 478, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "9040:16:2", - "nodeType": "VariableDeclaration", - "scope": 491, - "src": "9024:32:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 477, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "9024:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 480, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "9082:18:2", - "nodeType": "VariableDeclaration", - "scope": 491, - "src": "9066:34:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 479, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "9066:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 482, - "mutability": "mutable", - "name": "payload", - "nameLocation": "9125:7:2", - "nodeType": "VariableDeclaration", - "scope": 491, - "src": "9110:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 481, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "9110:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 484, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "9158:6:2", - "nodeType": "VariableDeclaration", - "scope": 491, - "src": "9142:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 483, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "9142:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 486, - "mutability": "mutable", - "name": "amount", - "nameLocation": "9182:6:2", - "nodeType": "VariableDeclaration", - "scope": 491, - "src": "9174:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 485, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "9174:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 488, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "9206:13:2", - "nodeType": "VariableDeclaration", - "scope": 491, - "src": "9198:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 487, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9198:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "8990:235:2" - }, - "returnParameters": { - "id": 490, - "nodeType": "ParameterList", - "parameters": [], - "src": "9242:0:2" - }, - "scope": 655, - "src": "8945:298:2", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 492, - "nodeType": "StructuredDocumentation", - "src": "9249:717:2", - "text": " @notice Pay for gas using ERC20 tokens for an express contract call on a destination chain.\n @dev This function is called on the source chain before calling the gateway to express execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param gasToken The address of the ERC20 token used to pay for gas\n @param gasFeeAmount The amount of tokens to pay for gas\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "ba9ddc8d", - "id": 509, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payGasForExpressCall", - "nameLocation": "9980:20:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 507, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 494, - "mutability": "mutable", - "name": "sender", - "nameLocation": "10018:6:2", - "nodeType": "VariableDeclaration", - "scope": 509, - "src": "10010:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 493, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10010:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 496, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "10050:16:2", - "nodeType": "VariableDeclaration", - "scope": 509, - "src": "10034:32:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 495, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "10034:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 498, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "10092:18:2", - "nodeType": "VariableDeclaration", - "scope": 509, - "src": "10076:34:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 497, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "10076:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 500, - "mutability": "mutable", - "name": "payload", - "nameLocation": "10135:7:2", - "nodeType": "VariableDeclaration", - "scope": 509, - "src": "10120:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 499, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10120:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 502, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "10160:8:2", - "nodeType": "VariableDeclaration", - "scope": 509, - "src": "10152:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 501, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10152:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 504, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "10186:12:2", - "nodeType": "VariableDeclaration", - "scope": 509, - "src": "10178:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 503, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "10178:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 506, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "10216:13:2", - "nodeType": "VariableDeclaration", - "scope": 509, - "src": "10208:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 505, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10208:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "10000:235:2" - }, - "returnParameters": { - "id": 508, - "nodeType": "ParameterList", - "parameters": [], - "src": "10244:0:2" - }, - "scope": 655, - "src": "9971:274:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 510, - "nodeType": "StructuredDocumentation", - "src": "10251:890:2", - "text": " @notice Pay for gas using ERC20 tokens for an express contract call with tokens on a destination chain.\n @dev This function is called on the source chain before calling the gateway to express execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call with tokens will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call with tokens\n @param symbol The symbol of the token to be sent with the call\n @param amount The amount of tokens to be sent with the call\n @param gasToken The address of the ERC20 token used to pay for gas\n @param gasFeeAmount The amount of tokens to pay for gas\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "17a49f7c", - "id": 531, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payGasForExpressCallWithToken", - "nameLocation": "11155:29:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 529, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 512, - "mutability": "mutable", - "name": "sender", - "nameLocation": "11202:6:2", - "nodeType": "VariableDeclaration", - "scope": 531, - "src": "11194:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 511, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11194:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 514, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "11234:16:2", - "nodeType": "VariableDeclaration", - "scope": 531, - "src": "11218:32:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 513, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "11218:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 516, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "11276:18:2", - "nodeType": "VariableDeclaration", - "scope": 531, - "src": "11260:34:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 515, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "11260:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 518, - "mutability": "mutable", - "name": "payload", - "nameLocation": "11319:7:2", - "nodeType": "VariableDeclaration", - "scope": 531, - "src": "11304:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 517, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11304:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 520, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "11352:6:2", - "nodeType": "VariableDeclaration", - "scope": 531, - "src": "11336:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 519, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "11336:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 522, - "mutability": "mutable", - "name": "amount", - "nameLocation": "11376:6:2", - "nodeType": "VariableDeclaration", - "scope": 531, - "src": "11368:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 521, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11368:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 524, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "11400:8:2", - "nodeType": "VariableDeclaration", - "scope": 531, - "src": "11392:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 523, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11392:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 526, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "11426:12:2", - "nodeType": "VariableDeclaration", - "scope": 531, - "src": "11418:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 525, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11418:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 528, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "11456:13:2", - "nodeType": "VariableDeclaration", - "scope": 531, - "src": "11448:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 527, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11448:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "11184:291:2" - }, - "returnParameters": { - "id": 530, - "nodeType": "ParameterList", - "parameters": [], - "src": "11484:0:2" - }, - "scope": 655, - "src": "11146:339:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 532, - "nodeType": "StructuredDocumentation", - "src": "11491:575:2", - "text": " @notice Pay for gas using native currency for an express contract call on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "f61ed218", - "id": 545, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payNativeGasForExpressCall", - "nameLocation": "12080:26:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 543, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 534, - "mutability": "mutable", - "name": "sender", - "nameLocation": "12124:6:2", - "nodeType": "VariableDeclaration", - "scope": 545, - "src": "12116:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 533, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12116:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 536, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "12156:16:2", - "nodeType": "VariableDeclaration", - "scope": 545, - "src": "12140:32:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 535, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "12140:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 538, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "12198:18:2", - "nodeType": "VariableDeclaration", - "scope": 545, - "src": "12182:34:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 537, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "12182:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 540, - "mutability": "mutable", - "name": "payload", - "nameLocation": "12241:7:2", - "nodeType": "VariableDeclaration", - "scope": 545, - "src": "12226:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 539, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12226:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 542, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "12266:13:2", - "nodeType": "VariableDeclaration", - "scope": 545, - "src": "12258:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 541, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12258:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "12106:179:2" - }, - "returnParameters": { - "id": 544, - "nodeType": "ParameterList", - "parameters": [], - "src": "12302:0:2" - }, - "scope": 655, - "src": "12071:232:2", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 546, - "nodeType": "StructuredDocumentation", - "src": "12309:748:2", - "text": " @notice Pay for gas using native currency for an express contract call with tokens on a destination chain.\n @dev This function is called on the source chain before calling the gateway to execute a remote contract.\n @param sender The address making the payment\n @param destinationChain The target chain where the contract call with tokens will be made\n @param destinationAddress The target address on the destination chain\n @param payload Data payload for the contract call with tokens\n @param symbol The symbol of the token to be sent with the call\n @param amount The amount of tokens to be sent with the call\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "2e9b7470", - "id": 563, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "payNativeGasForExpressCallWithToken", - "nameLocation": "13071:35:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 561, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 548, - "mutability": "mutable", - "name": "sender", - "nameLocation": "13124:6:2", - "nodeType": "VariableDeclaration", - "scope": 563, - "src": "13116:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 547, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "13116:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 550, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "13156:16:2", - "nodeType": "VariableDeclaration", - "scope": 563, - "src": "13140:32:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 549, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "13140:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 552, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "13198:18:2", - "nodeType": "VariableDeclaration", - "scope": 563, - "src": "13182:34:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 551, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "13182:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 554, - "mutability": "mutable", - "name": "payload", - "nameLocation": "13241:7:2", - "nodeType": "VariableDeclaration", - "scope": 563, - "src": "13226:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 553, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "13226:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 556, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "13274:6:2", - "nodeType": "VariableDeclaration", - "scope": 563, - "src": "13258:22:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 555, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "13258:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 558, - "mutability": "mutable", - "name": "amount", - "nameLocation": "13298:6:2", - "nodeType": "VariableDeclaration", - "scope": 563, - "src": "13290:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 557, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13290:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 560, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "13322:13:2", - "nodeType": "VariableDeclaration", - "scope": 563, - "src": "13314:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 559, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "13314:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "13106:235:2" - }, - "returnParameters": { - "id": 562, - "nodeType": "ParameterList", - "parameters": [], - "src": "13358:0:2" - }, - "scope": 655, - "src": "13062:297:2", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 564, - "nodeType": "StructuredDocumentation", - "src": "13365:556:2", - "text": " @notice Add additional gas payment using ERC20 tokens after initiating a cross-chain call.\n @dev This function can be called on the source chain after calling the gateway to execute a remote contract.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param gasToken The ERC20 token address used to add gas\n @param gasFeeAmount The amount of tokens to add as gas\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "ab1999ba", - "id": 577, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addGas", - "nameLocation": "13935:6:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 575, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 566, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "13959:6:2", - "nodeType": "VariableDeclaration", - "scope": 577, - "src": "13951:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 565, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13951:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 568, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "13983:8:2", - "nodeType": "VariableDeclaration", - "scope": 577, - "src": "13975:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 567, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13975:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 570, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "14009:8:2", - "nodeType": "VariableDeclaration", - "scope": 577, - "src": "14001:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 569, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14001:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 572, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "14035:12:2", - "nodeType": "VariableDeclaration", - "scope": 577, - "src": "14027:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 571, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14027:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 574, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "14065:13:2", - "nodeType": "VariableDeclaration", - "scope": 577, - "src": "14057:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 573, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14057:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "13941:143:2" - }, - "returnParameters": { - "id": 576, - "nodeType": "ParameterList", - "parameters": [], - "src": "14093:0:2" - }, - "scope": 655, - "src": "13926:168:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 578, - "nodeType": "StructuredDocumentation", - "src": "14100:434:2", - "text": " @notice Add additional gas payment using native currency after initiating a cross-chain call.\n @dev This function can be called on the source chain after calling the gateway to execute a remote contract.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "cd433ada", - "id": 587, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addNativeGas", - "nameLocation": "14548:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 585, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 580, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "14578:6:2", - "nodeType": "VariableDeclaration", - "scope": 587, - "src": "14570:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 579, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "14570:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 582, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "14602:8:2", - "nodeType": "VariableDeclaration", - "scope": 587, - "src": "14594:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 581, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14594:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 584, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "14628:13:2", - "nodeType": "VariableDeclaration", - "scope": 587, - "src": "14620:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 583, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14620:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "14560:87:2" - }, - "returnParameters": { - "id": 586, - "nodeType": "ParameterList", - "parameters": [], - "src": "14664:0:2" - }, - "scope": 655, - "src": "14539:126:2", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 588, - "nodeType": "StructuredDocumentation", - "src": "14671:573:2", - "text": " @notice Add additional gas payment using ERC20 tokens after initiating an express cross-chain call.\n @dev This function can be called on the source chain after calling the gateway to express execute a remote contract.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param gasToken The ERC20 token address used to add gas\n @param gasFeeAmount The amount of tokens to add as gas\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "2edd2aa8", - "id": 601, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addExpressGas", - "nameLocation": "15258:13:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 599, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 590, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "15289:6:2", - "nodeType": "VariableDeclaration", - "scope": 601, - "src": "15281:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 589, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "15281:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 592, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "15313:8:2", - "nodeType": "VariableDeclaration", - "scope": 601, - "src": "15305:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 591, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "15305:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 594, - "mutability": "mutable", - "name": "gasToken", - "nameLocation": "15339:8:2", - "nodeType": "VariableDeclaration", - "scope": 601, - "src": "15331:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 593, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15331:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 596, - "mutability": "mutable", - "name": "gasFeeAmount", - "nameLocation": "15365:12:2", - "nodeType": "VariableDeclaration", - "scope": 601, - "src": "15357:20:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 595, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "15357:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 598, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "15395:13:2", - "nodeType": "VariableDeclaration", - "scope": 601, - "src": "15387:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 597, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15387:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "15271:143:2" - }, - "returnParameters": { - "id": 600, - "nodeType": "ParameterList", - "parameters": [], - "src": "15423:0:2" - }, - "scope": 655, - "src": "15249:175:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 602, - "nodeType": "StructuredDocumentation", - "src": "15430:451:2", - "text": " @notice Add additional gas payment using native currency after initiating an express cross-chain call.\n @dev This function can be called on the source chain after calling the gateway to express execute a remote contract.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param refundAddress The address where refunds, if any, should be sent" - }, - "functionSelector": "4d238489", - "id": 611, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addNativeExpressGas", - "nameLocation": "15895:19:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 609, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 604, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "15932:6:2", - "nodeType": "VariableDeclaration", - "scope": 611, - "src": "15924:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 603, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "15924:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 606, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "15956:8:2", - "nodeType": "VariableDeclaration", - "scope": 611, - "src": "15948:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 605, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "15948:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 608, - "mutability": "mutable", - "name": "refundAddress", - "nameLocation": "15982:13:2", - "nodeType": "VariableDeclaration", - "scope": 611, - "src": "15974:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 607, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15974:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "15914:87:2" - }, - "returnParameters": { - "id": 610, - "nodeType": "ParameterList", - "parameters": [], - "src": "16018:0:2" - }, - "scope": 655, - "src": "15886:133:2", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 612, - "nodeType": "StructuredDocumentation", - "src": "16025:260:2", - "text": " @notice Updates the gas price for a specific chain.\n @dev This function is called by the gas oracle to update the gas prices for a specific chains.\n @param chains Array of chain names\n @param gasUpdates Array of gas updates" - }, - "functionSelector": "d3b81f0c", - "id": 622, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "updateGasInfo", - "nameLocation": "16299:13:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 620, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 615, - "mutability": "mutable", - "name": "chains", - "nameLocation": "16331:6:2", - "nodeType": "VariableDeclaration", - "scope": 622, - "src": "16313:24:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr", - "typeString": "string[]" - }, - "typeName": { - "baseType": { - "id": 613, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "16313:6:2", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "id": 614, - "nodeType": "ArrayTypeName", - "src": "16313:8:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", - "typeString": "string[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 619, - "mutability": "mutable", - "name": "gasUpdates", - "nameLocation": "16358:10:2", - "nodeType": "VariableDeclaration", - "scope": 622, - "src": "16339:29:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_GasInfo_$1526_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct GasInfo[]" - }, - "typeName": { - "baseType": { - "id": 617, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 616, - "name": "GasInfo", - "nameLocations": [ - "16339:7:2" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1526, - "src": "16339:7:2" - }, - "referencedDeclaration": 1526, - "src": "16339:7:2", - "typeDescriptions": { - "typeIdentifier": "t_struct$_GasInfo_$1526_storage_ptr", - "typeString": "struct GasInfo" - } - }, - "id": 618, - "nodeType": "ArrayTypeName", - "src": "16339:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_GasInfo_$1526_storage_$dyn_storage_ptr", - "typeString": "struct GasInfo[]" - } - }, - "visibility": "internal" - } - ], - "src": "16312:57:2" - }, - "returnParameters": { - "id": 621, - "nodeType": "ParameterList", - "parameters": [], - "src": "16378:0:2" - }, - "scope": 655, - "src": "16290:89:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 623, - "nodeType": "StructuredDocumentation", - "src": "16385:382:2", - "text": " @notice Allows the gasCollector to collect accumulated fees from the contract.\n @dev Use address(0) as the token address for native currency.\n @param receiver The address to receive the collected fees\n @param tokens Array of token addresses to be collected\n @param amounts Array of amounts to be collected for each respective token address" - }, - "functionSelector": "1055eaaf", - "id": 634, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "collectFees", - "nameLocation": "16781:11:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 632, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 625, - "mutability": "mutable", - "name": "receiver", - "nameLocation": "16818:8:2", - "nodeType": "VariableDeclaration", - "scope": 634, - "src": "16802:24:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 624, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16802:15:2", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 628, - "mutability": "mutable", - "name": "tokens", - "nameLocation": "16855:6:2", - "nodeType": "VariableDeclaration", - "scope": 634, - "src": "16836:25:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 626, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16836:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 627, - "nodeType": "ArrayTypeName", - "src": "16836:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 631, - "mutability": "mutable", - "name": "amounts", - "nameLocation": "16890:7:2", - "nodeType": "VariableDeclaration", - "scope": 634, - "src": "16871:26:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 629, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "16871:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 630, - "nodeType": "ArrayTypeName", - "src": "16871:9:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "16792:111:2" - }, - "returnParameters": { - "id": 633, - "nodeType": "ParameterList", - "parameters": [], - "src": "16912:0:2" - }, - "scope": 655, - "src": "16772:141:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 635, - "nodeType": "StructuredDocumentation", - "src": "16919:515:2", - "text": " @notice Refunds gas payment to the receiver in relation to a specific cross-chain transaction.\n @dev Only callable by the gasCollector.\n @dev Use address(0) as the token address to refund native currency.\n @param txHash The transaction hash of the cross-chain call\n @param logIndex The log index for the cross-chain call\n @param receiver The address to receive the refund\n @param token The token address to be refunded\n @param amount The amount to refund" - }, - "functionSelector": "36504721", - "id": 648, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "refund", - "nameLocation": "17448:6:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 646, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 637, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "17472:6:2", - "nodeType": "VariableDeclaration", - "scope": 648, - "src": "17464:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 636, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "17464:7:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 639, - "mutability": "mutable", - "name": "logIndex", - "nameLocation": "17496:8:2", - "nodeType": "VariableDeclaration", - "scope": 648, - "src": "17488:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 638, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "17488:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 641, - "mutability": "mutable", - "name": "receiver", - "nameLocation": "17530:8:2", - "nodeType": "VariableDeclaration", - "scope": 648, - "src": "17514:24:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 640, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17514:15:2", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 643, - "mutability": "mutable", - "name": "token", - "nameLocation": "17556:5:2", - "nodeType": "VariableDeclaration", - "scope": 648, - "src": "17548:13:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 642, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17548:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 645, - "mutability": "mutable", - "name": "amount", - "nameLocation": "17579:6:2", - "nodeType": "VariableDeclaration", - "scope": 648, - "src": "17571:14:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 644, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "17571:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "17454:137:2" - }, - "returnParameters": { - "id": 647, - "nodeType": "ParameterList", - "parameters": [], - "src": "17600:0:2" - }, - "scope": 655, - "src": "17439:162:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 649, - "nodeType": "StructuredDocumentation", - "src": "17607:123:2", - "text": " @notice Returns the address of the designated gas collector.\n @return address of the gas collector" - }, - "functionSelector": "892b5007", - "id": 654, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "gasCollector", - "nameLocation": "17744:12:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 650, - "nodeType": "ParameterList", - "parameters": [], - "src": "17756:2:2" - }, - "returnParameters": { - "id": 653, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 652, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 654, - "src": "17777:7:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 651, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17777:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "17776:9:2" - }, - "scope": 655, - "src": "17735:51:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 656, - "src": "493:17295:2", - "usedErrors": [ - 193, - 195, - 197, - 199, - 201, - 207, - 1136, - 1153, - 1192, - 1194, - 1196, - 1245, - 1247, - 1249 - ], - "usedEvents": [ - 223, - 243, - 257, - 275, - 291, - 311, - 325, - 343, - 355, - 365, - 377, - 387, - 399, - 1161, - 1200, - 1204, - 1253 - ] - } - ], - "src": "33:17756:2" - }, - "id": 2 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", - "exportedSymbols": { - "IAxelarGateway": [ - 991 - ], - "IGovernable": [ - 1128 - ], - "IImplementation": [ - 1142 - ] - }, - "id": 992, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 657, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:3" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol", - "file": "./IGovernable.sol", - "id": 659, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 992, - "sourceUnit": 1129, - "src": "58:48:3", - "symbolAliases": [ - { - "foreign": { - "id": 658, - "name": "IGovernable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "67:11:3", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol", - "file": "./IImplementation.sol", - "id": 661, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 992, - "sourceUnit": 1143, - "src": "107:56:3", - "symbolAliases": [ - { - "foreign": { - "id": 660, - "name": "IImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "116:15:3", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 662, - "name": "IImplementation", - "nameLocations": [ - "193:15:3" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1142, - "src": "193:15:3" - }, - "id": 663, - "nodeType": "InheritanceSpecifier", - "src": "193:15:3" - }, - { - "baseName": { - "id": 664, - "name": "IGovernable", - "nameLocations": [ - "210:11:3" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, - "src": "210:11:3" - }, - "id": 665, - "nodeType": "InheritanceSpecifier", - "src": "210:11:3" - } - ], - "canonicalName": "IAxelarGateway", - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "id": 991, - "linearizedBaseContracts": [ - 991, - 1128, - 1142, - 1000 - ], - "name": "IAxelarGateway", - "nameLocation": "175:14:3", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "29c3b7ee", - "id": 667, - "name": "NotSelf", - "nameLocation": "286:7:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 666, - "nodeType": "ParameterList", - "parameters": [], - "src": "293:2:3" - }, - "src": "280:16:3" - }, - { - "errorSelector": "8f84fb24", - "id": 669, - "name": "InvalidCodeHash", - "nameLocation": "307:15:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 668, - "nodeType": "ParameterList", - "parameters": [], - "src": "322:2:3" - }, - "src": "301:24:3" - }, - { - "errorSelector": "97905dfb", - "id": 671, - "name": "SetupFailed", - "nameLocation": "336:11:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 670, - "nodeType": "ParameterList", - "parameters": [], - "src": "347:2:3" - }, - "src": "330:20:3" - }, - { - "errorSelector": "735326ab", - "id": 673, - "name": "InvalidAuthModule", - "nameLocation": "361:17:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 672, - "nodeType": "ParameterList", - "parameters": [], - "src": "378:2:3" - }, - "src": "355:26:3" - }, - { - "errorSelector": "6426d5f8", - "id": 675, - "name": "InvalidTokenDeployer", - "nameLocation": "392:20:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 674, - "nodeType": "ParameterList", - "parameters": [], - "src": "412:2:3" - }, - "src": "386:29:3" - }, - { - "errorSelector": "2c5211c6", - "id": 677, - "name": "InvalidAmount", - "nameLocation": "426:13:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 676, - "nodeType": "ParameterList", - "parameters": [], - "src": "439:2:3" - }, - "src": "420:22:3" - }, - { - "errorSelector": "7a47c9a2", - "id": 679, - "name": "InvalidChainId", - "nameLocation": "453:14:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 678, - "nodeType": "ParameterList", - "parameters": [], - "src": "467:2:3" - }, - "src": "447:23:3" - }, - { - "errorSelector": "ca9a28f5", - "id": 681, - "name": "InvalidCommands", - "nameLocation": "481:15:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 680, - "nodeType": "ParameterList", - "parameters": [], - "src": "496:2:3" - }, - "src": "475:24:3" - }, - { - "errorSelector": "72ba137e", - "id": 685, - "name": "TokenDoesNotExist", - "nameLocation": "510:17:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 684, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 683, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "535:6:3", - "nodeType": "VariableDeclaration", - "scope": 685, - "src": "528:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 682, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "528:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "527:15:3" - }, - "src": "504:39:3" - }, - { - "errorSelector": "aa7e8b32", - "id": 689, - "name": "TokenAlreadyExists", - "nameLocation": "554:18:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 688, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 687, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "580:6:3", - "nodeType": "VariableDeclaration", - "scope": 689, - "src": "573:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 686, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "573:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "572:15:3" - }, - "src": "548:40:3" - }, - { - "errorSelector": "86d52743", - "id": 693, - "name": "TokenDeployFailed", - "nameLocation": "599:17:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 692, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 691, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "624:6:3", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "617:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 690, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "617:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "616:15:3" - }, - "src": "593:39:3" - }, - { - "errorSelector": "c5ccddde", - "id": 697, - "name": "TokenContractDoesNotExist", - "nameLocation": "643:25:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 696, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 695, - "mutability": "mutable", - "name": "token", - "nameLocation": "677:5:3", - "nodeType": "VariableDeclaration", - "scope": 697, - "src": "669:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 694, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "669:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "668:15:3" - }, - "src": "637:47:3" - }, - { - "errorSelector": "e217b0ad", - "id": 701, - "name": "BurnFailed", - "nameLocation": "695:10:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 700, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 699, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "713:6:3", - "nodeType": "VariableDeclaration", - "scope": 701, - "src": "706:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 698, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "706:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "705:15:3" - }, - "src": "689:32:3" - }, - { - "errorSelector": "90c52ed7", - "id": 705, - "name": "MintFailed", - "nameLocation": "732:10:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 704, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 703, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "750:6:3", - "nodeType": "VariableDeclaration", - "scope": 705, - "src": "743:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 702, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "743:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "742:15:3" - }, - "src": "726:32:3" - }, - { - "errorSelector": "14a2275f", - "id": 707, - "name": "InvalidSetMintLimitsParams", - "nameLocation": "769:26:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 706, - "nodeType": "ParameterList", - "parameters": [], - "src": "795:2:3" - }, - "src": "763:35:3" - }, - { - "errorSelector": "037f60e5", - "id": 711, - "name": "ExceedMintLimit", - "nameLocation": "809:15:3", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 710, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 709, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "832:6:3", - "nodeType": "VariableDeclaration", - "scope": 711, - "src": "825:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 708, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "825:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "824:15:3" - }, - "src": "803:37:3" - }, - { - "anonymous": false, - "eventSelector": "651d93f66c4329630e8d0f62488eff599e3be484da587335e8dc0fcf46062726", - "id": 723, - "name": "TokenSent", - "nameLocation": "904:9:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 722, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 713, - "indexed": true, - "mutability": "mutable", - "name": "sender", - "nameLocation": "939:6:3", - "nodeType": "VariableDeclaration", - "scope": 723, - "src": "923:22:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 712, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "923:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 715, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "962:16:3", - "nodeType": "VariableDeclaration", - "scope": 723, - "src": "955:23:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 714, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "955:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 717, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "995:18:3", - "nodeType": "VariableDeclaration", - "scope": 723, - "src": "988:25:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 716, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "988:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 719, - "indexed": false, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "1030:6:3", - "nodeType": "VariableDeclaration", - "scope": 723, - "src": "1023:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 718, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1023:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 721, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1054:6:3", - "nodeType": "VariableDeclaration", - "scope": 723, - "src": "1046:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 720, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1046:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "913:153:3" - }, - "src": "898:169:3" - }, - { - "anonymous": false, - "eventSelector": "30ae6cc78c27e651745bf2ad08a11de83910ac1e347a52f7ac898c0fbef94dae", - "id": 735, - "name": "ContractCall", - "nameLocation": "1079:12:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 734, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 725, - "indexed": true, - "mutability": "mutable", - "name": "sender", - "nameLocation": "1117:6:3", - "nodeType": "VariableDeclaration", - "scope": 735, - "src": "1101:22:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 724, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1101:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 727, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "1140:16:3", - "nodeType": "VariableDeclaration", - "scope": 735, - "src": "1133:23:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 726, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1133:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 729, - "indexed": false, - "mutability": "mutable", - "name": "destinationContractAddress", - "nameLocation": "1173:26:3", - "nodeType": "VariableDeclaration", - "scope": 735, - "src": "1166:33:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 728, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1166:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 731, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "1225:11:3", - "nodeType": "VariableDeclaration", - "scope": 735, - "src": "1209:27:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 730, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1209:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 733, - "indexed": false, - "mutability": "mutable", - "name": "payload", - "nameLocation": "1252:7:3", - "nodeType": "VariableDeclaration", - "scope": 735, - "src": "1246:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 732, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1246:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1091:174:3" - }, - "src": "1073:193:3" - }, - { - "anonymous": false, - "eventSelector": "7e50569d26be643bda7757722291ec66b1be66d8283474ae3fab5a98f878a7a2", - "id": 751, - "name": "ContractCallWithToken", - "nameLocation": "1278:21:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 750, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 737, - "indexed": true, - "mutability": "mutable", - "name": "sender", - "nameLocation": "1325:6:3", - "nodeType": "VariableDeclaration", - "scope": 751, - "src": "1309:22:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 736, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1309:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 739, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "1348:16:3", - "nodeType": "VariableDeclaration", - "scope": 751, - "src": "1341:23:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 738, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1341:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 741, - "indexed": false, - "mutability": "mutable", - "name": "destinationContractAddress", - "nameLocation": "1381:26:3", - "nodeType": "VariableDeclaration", - "scope": 751, - "src": "1374:33:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 740, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1374:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 743, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "1433:11:3", - "nodeType": "VariableDeclaration", - "scope": 751, - "src": "1417:27:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 742, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1417:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 745, - "indexed": false, - "mutability": "mutable", - "name": "payload", - "nameLocation": "1460:7:3", - "nodeType": "VariableDeclaration", - "scope": 751, - "src": "1454:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 744, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1454:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 747, - "indexed": false, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "1484:6:3", - "nodeType": "VariableDeclaration", - "scope": 751, - "src": "1477:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 746, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1477:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 749, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1508:6:3", - "nodeType": "VariableDeclaration", - "scope": 751, - "src": "1500:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 748, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1500:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1299:221:3" - }, - "src": "1272:249:3" - }, - { - "anonymous": false, - "eventSelector": "a74c8847d513feba22a0f0cb38d53081abf97562cdb293926ba243689e7c41ca", - "id": 755, - "name": "Executed", - "nameLocation": "1533:8:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 754, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 753, - "indexed": true, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "1558:9:3", - "nodeType": "VariableDeclaration", - "scope": 755, - "src": "1542:25:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 752, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1542:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "1541:27:3" - }, - "src": "1527:42:3" - }, - { - "anonymous": false, - "eventSelector": "bf90b5a1ec9763e8bf4b9245cef0c28db92bab309fc2c5177f17814f38246938", - "id": 761, - "name": "TokenDeployed", - "nameLocation": "1581:13:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 760, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 757, - "indexed": false, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "1602:6:3", - "nodeType": "VariableDeclaration", - "scope": 761, - "src": "1595:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 756, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1595:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 759, - "indexed": false, - "mutability": "mutable", - "name": "tokenAddresses", - "nameLocation": "1618:14:3", - "nodeType": "VariableDeclaration", - "scope": 761, - "src": "1610:22:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 758, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1610:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1594:39:3" - }, - "src": "1575:59:3" - }, - { - "anonymous": false, - "eventSelector": "44e4f8f6bd682c5a3aeba93601ab07cb4d1f21b2aab1ae4880d9577919309aa4", - "id": 777, - "name": "ContractCallApproved", - "nameLocation": "1646:20:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 776, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 763, - "indexed": true, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "1692:9:3", - "nodeType": "VariableDeclaration", - "scope": 777, - "src": "1676:25:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 762, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1676:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 765, - "indexed": false, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "1718:11:3", - "nodeType": "VariableDeclaration", - "scope": 777, - "src": "1711:18:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 764, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1711:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 767, - "indexed": false, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "1746:13:3", - "nodeType": "VariableDeclaration", - "scope": 777, - "src": "1739:20:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 766, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1739:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 769, - "indexed": true, - "mutability": "mutable", - "name": "contractAddress", - "nameLocation": "1785:15:3", - "nodeType": "VariableDeclaration", - "scope": 777, - "src": "1769:31:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 768, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1769:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 771, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "1826:11:3", - "nodeType": "VariableDeclaration", - "scope": 777, - "src": "1810:27:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 770, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1810:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 773, - "indexed": false, - "mutability": "mutable", - "name": "sourceTxHash", - "nameLocation": "1855:12:3", - "nodeType": "VariableDeclaration", - "scope": 777, - "src": "1847:20:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 772, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1847:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 775, - "indexed": false, - "mutability": "mutable", - "name": "sourceEventIndex", - "nameLocation": "1885:16:3", - "nodeType": "VariableDeclaration", - "scope": 777, - "src": "1877:24:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 774, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1877:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1666:241:3" - }, - "src": "1640:268:3" - }, - { - "anonymous": false, - "eventSelector": "9991faa1f435675159ffae64b66d7ecfdb55c29755869a18db8497b4392347e0", - "id": 797, - "name": "ContractCallApprovedWithMint", - "nameLocation": "1920:28:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 796, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 779, - "indexed": true, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "1974:9:3", - "nodeType": "VariableDeclaration", - "scope": 797, - "src": "1958:25:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 778, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1958:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 781, - "indexed": false, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "2000:11:3", - "nodeType": "VariableDeclaration", - "scope": 797, - "src": "1993:18:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 780, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1993:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 783, - "indexed": false, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "2028:13:3", - "nodeType": "VariableDeclaration", - "scope": 797, - "src": "2021:20:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 782, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2021:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 785, - "indexed": true, - "mutability": "mutable", - "name": "contractAddress", - "nameLocation": "2067:15:3", - "nodeType": "VariableDeclaration", - "scope": 797, - "src": "2051:31:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 784, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2051:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 787, - "indexed": true, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "2108:11:3", - "nodeType": "VariableDeclaration", - "scope": 797, - "src": "2092:27:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 786, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2092:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 789, - "indexed": false, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "2136:6:3", - "nodeType": "VariableDeclaration", - "scope": 797, - "src": "2129:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 788, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2129:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 791, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2160:6:3", - "nodeType": "VariableDeclaration", - "scope": 797, - "src": "2152:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 790, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2152:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 793, - "indexed": false, - "mutability": "mutable", - "name": "sourceTxHash", - "nameLocation": "2184:12:3", - "nodeType": "VariableDeclaration", - "scope": 797, - "src": "2176:20:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 792, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2176:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 795, - "indexed": false, - "mutability": "mutable", - "name": "sourceEventIndex", - "nameLocation": "2214:16:3", - "nodeType": "VariableDeclaration", - "scope": 797, - "src": "2206:24:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 794, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2206:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1948:288:3" - }, - "src": "1914:323:3" - }, - { - "anonymous": false, - "eventSelector": "91057b069763121972ce22b18b2f319b1520dd4c72f1f94a6395e81ceaf63f41", - "id": 801, - "name": "ContractCallExecuted", - "nameLocation": "2249:20:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 800, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 799, - "indexed": true, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "2286:9:3", - "nodeType": "VariableDeclaration", - "scope": 801, - "src": "2270:25:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 798, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2270:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "2269:27:3" - }, - "src": "2243:54:3" - }, - { - "anonymous": false, - "eventSelector": "d99446c1d76385bb5519ccfb5274abcfd5896dfc22405e40010fde217f018a18", - "id": 807, - "name": "TokenMintLimitUpdated", - "nameLocation": "2309:21:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 806, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 803, - "indexed": false, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "2338:6:3", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "2331:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 802, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2331:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 805, - "indexed": false, - "mutability": "mutable", - "name": "limit", - "nameLocation": "2354:5:3", - "nodeType": "VariableDeclaration", - "scope": 807, - "src": "2346:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 804, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2346:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2330:30:3" - }, - "src": "2303:58:3" - }, - { - "anonymous": false, - "eventSelector": "192e759e55f359cd9832b5c0c6e38e4b6df5c5ca33f3bd5c90738e865a521872", - "id": 811, - "name": "OperatorshipTransferred", - "nameLocation": "2373:23:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 810, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 809, - "indexed": false, - "mutability": "mutable", - "name": "newOperatorsData", - "nameLocation": "2403:16:3", - "nodeType": "VariableDeclaration", - "scope": 811, - "src": "2397:22:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 808, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2397:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2396:24:3" - }, - "src": "2367:54:3" - }, - { - "anonymous": false, - "eventSelector": "bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", - "id": 815, - "name": "Upgraded", - "nameLocation": "2433:8:3", - "nodeType": "EventDefinition", - "parameters": { - "id": 814, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 813, - "indexed": true, - "mutability": "mutable", - "name": "implementation", - "nameLocation": "2458:14:3", - "nodeType": "VariableDeclaration", - "scope": 815, - "src": "2442:30:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 812, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2442:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2441:32:3" - }, - "src": "2427:47:3" - }, - { - "functionSelector": "26ef699d", - "id": 826, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "sendToken", - "nameLocation": "2571:9:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 824, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 817, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "2606:16:3", - "nodeType": "VariableDeclaration", - "scope": 826, - "src": "2590:32:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 816, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2590:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 819, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "2648:18:3", - "nodeType": "VariableDeclaration", - "scope": 826, - "src": "2632:34:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 818, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2632:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 821, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "2692:6:3", - "nodeType": "VariableDeclaration", - "scope": 826, - "src": "2676:22:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 820, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2676:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 823, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2716:6:3", - "nodeType": "VariableDeclaration", - "scope": 826, - "src": "2708:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 822, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2708:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2580:148:3" - }, - "returnParameters": { - "id": 825, - "nodeType": "ParameterList", - "parameters": [], - "src": "2737:0:3" - }, - "scope": 991, - "src": "2562:176:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1c92115f", - "id": 835, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "callContract", - "nameLocation": "2753:12:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 833, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 828, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "2791:16:3", - "nodeType": "VariableDeclaration", - "scope": 835, - "src": "2775:32:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 827, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2775:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 830, - "mutability": "mutable", - "name": "contractAddress", - "nameLocation": "2833:15:3", - "nodeType": "VariableDeclaration", - "scope": 835, - "src": "2817:31:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 829, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2817:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 832, - "mutability": "mutable", - "name": "payload", - "nameLocation": "2873:7:3", - "nodeType": "VariableDeclaration", - "scope": 835, - "src": "2858:22:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 831, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2858:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2765:121:3" - }, - "returnParameters": { - "id": 834, - "nodeType": "ParameterList", - "parameters": [], - "src": "2895:0:3" - }, - "scope": 991, - "src": "2744:152:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "b5417084", - "id": 848, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "callContractWithToken", - "nameLocation": "2911:21:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 846, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 837, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "2958:16:3", - "nodeType": "VariableDeclaration", - "scope": 848, - "src": "2942:32:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 836, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2942:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 839, - "mutability": "mutable", - "name": "contractAddress", - "nameLocation": "3000:15:3", - "nodeType": "VariableDeclaration", - "scope": 848, - "src": "2984:31:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 838, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2984:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 841, - "mutability": "mutable", - "name": "payload", - "nameLocation": "3040:7:3", - "nodeType": "VariableDeclaration", - "scope": 848, - "src": "3025:22:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 840, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3025:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 843, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "3073:6:3", - "nodeType": "VariableDeclaration", - "scope": 848, - "src": "3057:22:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 842, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3057:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 845, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3097:6:3", - "nodeType": "VariableDeclaration", - "scope": 848, - "src": "3089:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 844, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3089:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2932:177:3" - }, - "returnParameters": { - "id": 847, - "nodeType": "ParameterList", - "parameters": [], - "src": "3118:0:3" - }, - "scope": 991, - "src": "2902:217:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "f6a5f9f5", - "id": 863, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isContractCallApproved", - "nameLocation": "3134:22:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 859, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 850, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "3174:9:3", - "nodeType": "VariableDeclaration", - "scope": 863, - "src": "3166:17:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 849, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3166:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 852, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "3209:11:3", - "nodeType": "VariableDeclaration", - "scope": 863, - "src": "3193:27:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 851, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3193:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 854, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "3246:13:3", - "nodeType": "VariableDeclaration", - "scope": 863, - "src": "3230:29:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 853, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3230:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 856, - "mutability": "mutable", - "name": "contractAddress", - "nameLocation": "3277:15:3", - "nodeType": "VariableDeclaration", - "scope": 863, - "src": "3269:23:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 855, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3269:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 858, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "3310:11:3", - "nodeType": "VariableDeclaration", - "scope": 863, - "src": "3302:19:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 857, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3302:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3156:171:3" - }, - "returnParameters": { - "id": 862, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 861, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 863, - "src": "3351:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 860, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3351:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "3350:6:3" - }, - "scope": 991, - "src": "3125:232:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "bc00c216", - "id": 882, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isContractCallAndMintApproved", - "nameLocation": "3372:29:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 878, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 865, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "3419:9:3", - "nodeType": "VariableDeclaration", - "scope": 882, - "src": "3411:17:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 864, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3411:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 867, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "3454:11:3", - "nodeType": "VariableDeclaration", - "scope": 882, - "src": "3438:27:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 866, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3438:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 869, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "3491:13:3", - "nodeType": "VariableDeclaration", - "scope": 882, - "src": "3475:29:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 868, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3475:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 871, - "mutability": "mutable", - "name": "contractAddress", - "nameLocation": "3522:15:3", - "nodeType": "VariableDeclaration", - "scope": 882, - "src": "3514:23:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 870, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3514:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 873, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "3555:11:3", - "nodeType": "VariableDeclaration", - "scope": 882, - "src": "3547:19:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 872, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3547:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 875, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "3592:6:3", - "nodeType": "VariableDeclaration", - "scope": 882, - "src": "3576:22:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 874, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3576:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 877, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3616:6:3", - "nodeType": "VariableDeclaration", - "scope": 882, - "src": "3608:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 876, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3608:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3401:227:3" - }, - "returnParameters": { - "id": 881, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 880, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 882, - "src": "3652:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 879, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3652:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "3651:6:3" - }, - "scope": 991, - "src": "3363:295:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5f6970c3", - "id": 895, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "validateContractCall", - "nameLocation": "3673:20:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 891, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 884, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "3711:9:3", - "nodeType": "VariableDeclaration", - "scope": 895, - "src": "3703:17:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 883, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3703:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 886, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "3746:11:3", - "nodeType": "VariableDeclaration", - "scope": 895, - "src": "3730:27:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 885, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3730:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 888, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "3783:13:3", - "nodeType": "VariableDeclaration", - "scope": 895, - "src": "3767:29:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 887, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3767:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 890, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "3814:11:3", - "nodeType": "VariableDeclaration", - "scope": 895, - "src": "3806:19:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 889, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3806:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3693:138:3" - }, - "returnParameters": { - "id": 894, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 893, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 895, - "src": "3850:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 892, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3850:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "3849:6:3" - }, - "scope": 991, - "src": "3664:192:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1876eed9", - "id": 912, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "validateContractCallAndMint", - "nameLocation": "3871:27:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 908, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 897, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "3916:9:3", - "nodeType": "VariableDeclaration", - "scope": 912, - "src": "3908:17:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 896, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3908:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 899, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "3951:11:3", - "nodeType": "VariableDeclaration", - "scope": 912, - "src": "3935:27:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 898, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3935:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 901, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "3988:13:3", - "nodeType": "VariableDeclaration", - "scope": 912, - "src": "3972:29:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 900, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3972:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 903, - "mutability": "mutable", - "name": "payloadHash", - "nameLocation": "4019:11:3", - "nodeType": "VariableDeclaration", - "scope": 912, - "src": "4011:19:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 902, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4011:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 905, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "4056:6:3", - "nodeType": "VariableDeclaration", - "scope": 912, - "src": "4040:22:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 904, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4040:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 907, - "mutability": "mutable", - "name": "amount", - "nameLocation": "4080:6:3", - "nodeType": "VariableDeclaration", - "scope": 912, - "src": "4072:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 906, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4072:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3898:194:3" - }, - "returnParameters": { - "id": 911, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 910, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 912, - "src": "4111:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 909, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4111:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4110:6:3" - }, - "scope": 991, - "src": "3862:255:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "64940c56", - "id": 917, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "authModule", - "nameLocation": "4187:10:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 913, - "nodeType": "ParameterList", - "parameters": [], - "src": "4197:2:3" - }, - "returnParameters": { - "id": 916, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 915, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 917, - "src": "4223:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 914, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4223:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4222:9:3" - }, - "scope": 991, - "src": "4178:54:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "2a2dae0a", - "id": 922, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "tokenDeployer", - "nameLocation": "4247:13:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 918, - "nodeType": "ParameterList", - "parameters": [], - "src": "4260:2:3" - }, - "returnParameters": { - "id": 921, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 920, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 922, - "src": "4286:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 919, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4286:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4285:9:3" - }, - "scope": 991, - "src": "4238:57:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "269eb65e", - "id": 929, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "tokenMintLimit", - "nameLocation": "4310:14:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 925, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 924, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "4339:6:3", - "nodeType": "VariableDeclaration", - "scope": 929, - "src": "4325:20:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 923, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4325:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4324:22:3" - }, - "returnParameters": { - "id": 928, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 927, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 929, - "src": "4370:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 926, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4370:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4369:9:3" - }, - "scope": 991, - "src": "4301:78:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "cec7b359", - "id": 936, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "tokenMintAmount", - "nameLocation": "4394:15:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 932, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 931, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "4424:6:3", - "nodeType": "VariableDeclaration", - "scope": 936, - "src": "4410:20:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 930, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4410:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4409:22:3" - }, - "returnParameters": { - "id": 935, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 934, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 936, - "src": "4455:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 933, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4455:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4454:9:3" - }, - "scope": 991, - "src": "4385:79:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "aa1e1f0a", - "id": 941, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "allTokensFrozen", - "nameLocation": "4479:15:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 937, - "nodeType": "ParameterList", - "parameters": [], - "src": "4494:2:3" - }, - "returnParameters": { - "id": 940, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 939, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 941, - "src": "4520:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 938, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4520:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4519:6:3" - }, - "scope": 991, - "src": "4470:56:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5c60da1b", - "id": 946, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "implementation", - "nameLocation": "4541:14:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 942, - "nodeType": "ParameterList", - "parameters": [], - "src": "4555:2:3" - }, - "returnParameters": { - "id": 945, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 944, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 946, - "src": "4581:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 943, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4581:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4580:9:3" - }, - "scope": 991, - "src": "4532:58:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "935b13f6", - "id": 953, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "tokenAddresses", - "nameLocation": "4605:14:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 949, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 948, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "4634:6:3", - "nodeType": "VariableDeclaration", - "scope": 953, - "src": "4620:20:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 947, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4620:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4619:22:3" - }, - "returnParameters": { - "id": 952, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 951, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 953, - "src": "4665:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 950, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4665:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4664:9:3" - }, - "scope": 991, - "src": "4596:78:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "7b1b769e", - "id": 960, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "tokenFrozen", - "nameLocation": "4689:11:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 956, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 955, - "mutability": "mutable", - "name": "symbol", - "nameLocation": "4715:6:3", - "nodeType": "VariableDeclaration", - "scope": 960, - "src": "4701:20:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 954, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4701:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4700:22:3" - }, - "returnParameters": { - "id": 959, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 958, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 960, - "src": "4746:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 957, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4746:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4745:6:3" - }, - "scope": 991, - "src": "4680:72:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "d26ff210", - "id": 967, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isCommandExecuted", - "nameLocation": "4767:17:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 963, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 962, - "mutability": "mutable", - "name": "commandId", - "nameLocation": "4793:9:3", - "nodeType": "VariableDeclaration", - "scope": 967, - "src": "4785:17:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 961, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4785:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4784:19:3" - }, - "returnParameters": { - "id": 966, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 965, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 967, - "src": "4827:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 964, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4827:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4826:6:3" - }, - "scope": 991, - "src": "4758:75:3", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "67ace8eb", - "id": 976, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setTokenMintLimits", - "nameLocation": "4942:18:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 974, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 970, - "mutability": "mutable", - "name": "symbols", - "nameLocation": "4979:7:3", - "nodeType": "VariableDeclaration", - "scope": 976, - "src": "4961:25:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr", - "typeString": "string[]" - }, - "typeName": { - "baseType": { - "id": 968, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4961:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "id": 969, - "nodeType": "ArrayTypeName", - "src": "4961:8:3", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", - "typeString": "string[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 973, - "mutability": "mutable", - "name": "limits", - "nameLocation": "5007:6:3", - "nodeType": "VariableDeclaration", - "scope": 976, - "src": "4988:25:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 971, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4988:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 972, - "nodeType": "ArrayTypeName", - "src": "4988:9:3", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "4960:54:3" - }, - "returnParameters": { - "id": 975, - "nodeType": "ParameterList", - "parameters": [], - "src": "5023:0:3" - }, - "scope": 991, - "src": "4933:91:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "a3499c73", - "id": 985, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "upgrade", - "nameLocation": "5039:7:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 983, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 978, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "5064:17:3", - "nodeType": "VariableDeclaration", - "scope": 985, - "src": "5056:25:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 977, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5056:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 980, - "mutability": "mutable", - "name": "newImplementationCodeHash", - "nameLocation": "5099:25:3", - "nodeType": "VariableDeclaration", - "scope": 985, - "src": "5091:33:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 979, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5091:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 982, - "mutability": "mutable", - "name": "setupParams", - "nameLocation": "5149:11:3", - "nodeType": "VariableDeclaration", - "scope": 985, - "src": "5134:26:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 981, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5134:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5046:120:3" - }, - "returnParameters": { - "id": 984, - "nodeType": "ParameterList", - "parameters": [], - "src": "5175:0:3" - }, - "scope": 991, - "src": "5030:146:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "09c5eabe", - "id": 990, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "execute", - "nameLocation": "5279:7:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 988, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 987, - "mutability": "mutable", - "name": "input", - "nameLocation": "5302:5:3", - "nodeType": "VariableDeclaration", - "scope": 990, - "src": "5287:20:3", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 986, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5287:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5286:22:3" - }, - "returnParameters": { - "id": 989, - "nodeType": "ParameterList", - "parameters": [], - "src": "5317:0:3" - }, - "scope": 991, - "src": "5270:48:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 992, - "src": "165:5155:3", - "usedErrors": [ - 667, - 669, - 671, - 673, - 675, - 677, - 679, - 681, - 685, - 689, - 693, - 697, - 701, - 705, - 707, - 711, - 1085, - 1087, - 1089, - 1091, - 1136 - ], - "usedEvents": [ - 723, - 735, - 751, - 755, - 761, - 777, - 797, - 801, - 807, - 811, - 815, - 1097, - 1103 - ] - } - ], - "src": "33:5288:3" - }, - "id": 3 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol", - "exportedSymbols": { - "IContractIdentifier": [ - 1000 - ] - }, - "id": 1001, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 993, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:4" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IContractIdentifier", - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "id": 1000, - "linearizedBaseContracts": [ - 1000 - ], - "name": "IContractIdentifier", - "nameLocation": "114:19:4", - "nodeType": "ContractDefinition", - "nodes": [ - { - "documentation": { - "id": 994, - "nodeType": "StructuredDocumentation", - "src": "140:190:4", - "text": " @notice Returns the contract ID. It can be used as a check during upgrades.\n @dev Meant to be overridden in derived contracts.\n @return bytes32 The contract ID" - }, - "functionSelector": "8291286c", - "id": 999, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "contractId", - "nameLocation": "344:10:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 995, - "nodeType": "ParameterList", - "parameters": [], - "src": "354:2:4" - }, - "returnParameters": { - "id": 998, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 997, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 999, - "src": "380:7:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 996, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "380:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "379:9:4" - }, - "scope": 1000, - "src": "335:54:4", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1001, - "src": "104:287:4", - "usedErrors": [], - "usedEvents": [] - } - ], - "src": "33:359:4" - }, - "id": 4 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol", - "exportedSymbols": { - "IERC20": [ - 1080 - ] - }, - "id": 1081, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1002, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:5" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IERC20", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1003, - "nodeType": "StructuredDocumentation", - "src": "58:70:5", - "text": " @dev Interface of the ERC20 standard as defined in the EIP." - }, - "fullyImplemented": false, - "id": 1080, - "linearizedBaseContracts": [ - 1080 - ], - "name": "IERC20", - "nameLocation": "139:6:5", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "6d187b28", - "id": 1005, - "name": "InvalidAccount", - "nameLocation": "158:14:5", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1004, - "nodeType": "ParameterList", - "parameters": [], - "src": "172:2:5" - }, - "src": "152:23:5" - }, - { - "documentation": { - "id": 1006, - "nodeType": "StructuredDocumentation", - "src": "181:66:5", - "text": " @dev Returns the amount of tokens in existence." - }, - "functionSelector": "18160ddd", - "id": 1011, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "totalSupply", - "nameLocation": "261:11:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1007, - "nodeType": "ParameterList", - "parameters": [], - "src": "272:2:5" - }, - "returnParameters": { - "id": 1010, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1009, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1011, - "src": "298:7:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1008, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "298:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "297:9:5" - }, - "scope": 1080, - "src": "252:55:5", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1012, - "nodeType": "StructuredDocumentation", - "src": "313:72:5", - "text": " @dev Returns the amount of tokens owned by `account`." - }, - "functionSelector": "70a08231", - "id": 1019, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nameLocation": "399:9:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1015, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1014, - "mutability": "mutable", - "name": "account", - "nameLocation": "417:7:5", - "nodeType": "VariableDeclaration", - "scope": 1019, - "src": "409:15:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1013, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "409:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "408:17:5" - }, - "returnParameters": { - "id": 1018, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1017, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1019, - "src": "449:7:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1016, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "449:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "448:9:5" - }, - "scope": 1080, - "src": "390:68:5", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1020, - "nodeType": "StructuredDocumentation", - "src": "464:209:5", - "text": " @dev Moves `amount` tokens from the caller's account to `recipient`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." - }, - "functionSelector": "a9059cbb", - "id": 1029, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transfer", - "nameLocation": "687:8:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1025, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1022, - "mutability": "mutable", - "name": "recipient", - "nameLocation": "704:9:5", - "nodeType": "VariableDeclaration", - "scope": 1029, - "src": "696:17:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1021, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "696:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1024, - "mutability": "mutable", - "name": "amount", - "nameLocation": "723:6:5", - "nodeType": "VariableDeclaration", - "scope": 1029, - "src": "715:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1023, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "715:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "695:35:5" - }, - "returnParameters": { - "id": 1028, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1027, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1029, - "src": "749:4:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1026, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "749:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "748:6:5" - }, - "scope": 1080, - "src": "678:77:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1030, - "nodeType": "StructuredDocumentation", - "src": "761:264:5", - "text": " @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called." - }, - "functionSelector": "dd62ed3e", - "id": 1039, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "allowance", - "nameLocation": "1039:9:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1035, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1032, - "mutability": "mutable", - "name": "owner", - "nameLocation": "1057:5:5", - "nodeType": "VariableDeclaration", - "scope": 1039, - "src": "1049:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1031, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1049:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1034, - "mutability": "mutable", - "name": "spender", - "nameLocation": "1072:7:5", - "nodeType": "VariableDeclaration", - "scope": 1039, - "src": "1064:15:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1033, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1064:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1048:32:5" - }, - "returnParameters": { - "id": 1038, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1037, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1039, - "src": "1104:7:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1036, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1104:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1103:9:5" - }, - "scope": 1080, - "src": "1030:83:5", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1040, - "nodeType": "StructuredDocumentation", - "src": "1119:642:5", - "text": " @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event." - }, - "functionSelector": "095ea7b3", - "id": 1049, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "approve", - "nameLocation": "1775:7:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1045, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1042, - "mutability": "mutable", - "name": "spender", - "nameLocation": "1791:7:5", - "nodeType": "VariableDeclaration", - "scope": 1049, - "src": "1783:15:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1041, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1783:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1044, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1808:6:5", - "nodeType": "VariableDeclaration", - "scope": 1049, - "src": "1800:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1043, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1800:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1782:33:5" - }, - "returnParameters": { - "id": 1048, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1047, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1049, - "src": "1834:4:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1046, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1834:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1833:6:5" - }, - "scope": 1080, - "src": "1766:74:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1050, - "nodeType": "StructuredDocumentation", - "src": "1846:296:5", - "text": " @dev Moves `amount` tokens from `sender` to `recipient` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." - }, - "functionSelector": "23b872dd", - "id": 1061, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nameLocation": "2156:12:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1057, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1052, - "mutability": "mutable", - "name": "sender", - "nameLocation": "2186:6:5", - "nodeType": "VariableDeclaration", - "scope": 1061, - "src": "2178:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1051, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2178:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1054, - "mutability": "mutable", - "name": "recipient", - "nameLocation": "2210:9:5", - "nodeType": "VariableDeclaration", - "scope": 1061, - "src": "2202:17:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1053, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2202:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1056, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2237:6:5", - "nodeType": "VariableDeclaration", - "scope": 1061, - "src": "2229:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1055, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2229:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2168:81:5" - }, - "returnParameters": { - "id": 1060, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1059, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1061, - "src": "2268:4:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1058, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2268:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2267:6:5" - }, - "scope": 1080, - "src": "2147:127:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "anonymous": false, - "documentation": { - "id": 1062, - "nodeType": "StructuredDocumentation", - "src": "2280:158:5", - "text": " @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero." - }, - "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", - "id": 1070, - "name": "Transfer", - "nameLocation": "2449:8:5", - "nodeType": "EventDefinition", - "parameters": { - "id": 1069, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1064, - "indexed": true, - "mutability": "mutable", - "name": "from", - "nameLocation": "2474:4:5", - "nodeType": "VariableDeclaration", - "scope": 1070, - "src": "2458:20:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1063, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2458:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1066, - "indexed": true, - "mutability": "mutable", - "name": "to", - "nameLocation": "2496:2:5", - "nodeType": "VariableDeclaration", - "scope": 1070, - "src": "2480:18:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1065, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2480:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1068, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "2508:5:5", - "nodeType": "VariableDeclaration", - "scope": 1070, - "src": "2500:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1067, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2500:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2457:57:5" - }, - "src": "2443:72:5" - }, - { - "anonymous": false, - "documentation": { - "id": 1071, - "nodeType": "StructuredDocumentation", - "src": "2521:148:5", - "text": " @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance." - }, - "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "id": 1079, - "name": "Approval", - "nameLocation": "2680:8:5", - "nodeType": "EventDefinition", - "parameters": { - "id": 1078, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1073, - "indexed": true, - "mutability": "mutable", - "name": "owner", - "nameLocation": "2705:5:5", - "nodeType": "VariableDeclaration", - "scope": 1079, - "src": "2689:21:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1072, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2689:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1075, - "indexed": true, - "mutability": "mutable", - "name": "spender", - "nameLocation": "2728:7:5", - "nodeType": "VariableDeclaration", - "scope": 1079, - "src": "2712:23:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1074, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2712:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1077, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "2745:5:5", - "nodeType": "VariableDeclaration", - "scope": 1079, - "src": "2737:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1076, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2737:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2688:63:5" - }, - "src": "2674:78:5" - } - ], - "scope": 1081, - "src": "129:2625:5", - "usedErrors": [ - 1005 - ], - "usedEvents": [ - 1070, - 1079 - ] - } - ], - "src": "33:2722:5" - }, - "id": 5 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol", - "exportedSymbols": { - "IGovernable": [ - 1128 - ] - }, - "id": 1129, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1082, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:6" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IGovernable", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1083, - "nodeType": "StructuredDocumentation", - "src": "58:151:6", - "text": " @title IGovernable Interface\n @notice This is an interface used by the AxelarGateway contract to manage governance and mint limiter roles." - }, - "fullyImplemented": false, - "id": 1128, - "linearizedBaseContracts": [ - 1128 - ], - "name": "IGovernable", - "nameLocation": "220:11:6", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "b56f932c", - "id": 1085, - "name": "NotGovernance", - "nameLocation": "244:13:6", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1084, - "nodeType": "ParameterList", - "parameters": [], - "src": "257:2:6" - }, - "src": "238:22:6" - }, - { - "errorSelector": "4475507a", - "id": 1087, - "name": "NotMintLimiter", - "nameLocation": "271:14:6", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1086, - "nodeType": "ParameterList", - "parameters": [], - "src": "285:2:6" - }, - "src": "265:23:6" - }, - { - "errorSelector": "0063186c", - "id": 1089, - "name": "InvalidGovernance", - "nameLocation": "299:17:6", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1088, - "nodeType": "ParameterList", - "parameters": [], - "src": "316:2:6" - }, - "src": "293:26:6" - }, - { - "errorSelector": "d79d772c", - "id": 1091, - "name": "InvalidMintLimiter", - "nameLocation": "330:18:6", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1090, - "nodeType": "ParameterList", - "parameters": [], - "src": "348:2:6" - }, - "src": "324:27:6" - }, - { - "anonymous": false, - "eventSelector": "5f56bee8cffbe9a78652a74a60705edede02af10b0bbb888ca44b79a0d42ce80", - "id": 1097, - "name": "GovernanceTransferred", - "nameLocation": "363:21:6", - "nodeType": "EventDefinition", - "parameters": { - "id": 1096, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1093, - "indexed": true, - "mutability": "mutable", - "name": "previousGovernance", - "nameLocation": "401:18:6", - "nodeType": "VariableDeclaration", - "scope": 1097, - "src": "385:34:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1092, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "385:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1095, - "indexed": true, - "mutability": "mutable", - "name": "newGovernance", - "nameLocation": "437:13:6", - "nodeType": "VariableDeclaration", - "scope": 1097, - "src": "421:29:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1094, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "421:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "384:67:6" - }, - "src": "357:95:6" - }, - { - "anonymous": false, - "eventSelector": "a9303c860c5de3c0c866c354d281785c89778ac5ca2dffdf12841c45cd4e1e6e", - "id": 1103, - "name": "MintLimiterTransferred", - "nameLocation": "463:22:6", - "nodeType": "EventDefinition", - "parameters": { - "id": 1102, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1099, - "indexed": true, - "mutability": "mutable", - "name": "previousGovernance", - "nameLocation": "502:18:6", - "nodeType": "VariableDeclaration", - "scope": 1103, - "src": "486:34:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1098, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "486:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1101, - "indexed": true, - "mutability": "mutable", - "name": "newGovernance", - "nameLocation": "538:13:6", - "nodeType": "VariableDeclaration", - "scope": 1103, - "src": "522:29:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1100, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "522:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "485:67:6" - }, - "src": "457:96:6" - }, - { - "documentation": { - "id": 1104, - "nodeType": "StructuredDocumentation", - "src": "559:99:6", - "text": " @notice Returns the governance address.\n @return address of the governance" - }, - "functionSelector": "5aa6e675", - "id": 1109, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "governance", - "nameLocation": "672:10:6", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1105, - "nodeType": "ParameterList", - "parameters": [], - "src": "682:2:6" - }, - "returnParameters": { - "id": 1108, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1107, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1109, - "src": "708:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1106, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "708:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "707:9:6" - }, - "scope": 1128, - "src": "663:54:6", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1110, - "nodeType": "StructuredDocumentation", - "src": "723:103:6", - "text": " @notice Returns the mint limiter address.\n @return address of the mint limiter" - }, - "functionSelector": "c82fe87a", - "id": 1115, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "mintLimiter", - "nameLocation": "840:11:6", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1111, - "nodeType": "ParameterList", - "parameters": [], - "src": "851:2:6" - }, - "returnParameters": { - "id": 1114, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1113, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1115, - "src": "877:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1112, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "877:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "876:9:6" - }, - "scope": 1128, - "src": "831:55:6", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1116, - "nodeType": "StructuredDocumentation", - "src": "892:130:6", - "text": " @notice Transfer the governance role to another address.\n @param newGovernance The new governance address" - }, - "functionSelector": "d38bfff4", - "id": 1121, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferGovernance", - "nameLocation": "1036:18:6", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1119, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1118, - "mutability": "mutable", - "name": "newGovernance", - "nameLocation": "1063:13:6", - "nodeType": "VariableDeclaration", - "scope": 1121, - "src": "1055:21:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1117, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1055:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1054:23:6" - }, - "returnParameters": { - "id": 1120, - "nodeType": "ParameterList", - "parameters": [], - "src": "1086:0:6" - }, - "scope": 1128, - "src": "1027:60:6", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1122, - "nodeType": "StructuredDocumentation", - "src": "1093:134:6", - "text": " @notice Transfer the mint limiter role to another address.\n @param newGovernance The new mint limiter address" - }, - "functionSelector": "41d8f26b", - "id": 1127, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferMintLimiter", - "nameLocation": "1241:19:6", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1125, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1124, - "mutability": "mutable", - "name": "newGovernance", - "nameLocation": "1269:13:6", - "nodeType": "VariableDeclaration", - "scope": 1127, - "src": "1261:21:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1123, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1261:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1260:23:6" - }, - "returnParameters": { - "id": 1126, - "nodeType": "ParameterList", - "parameters": [], - "src": "1292:0:6" - }, - "scope": 1128, - "src": "1232:61:6", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1129, - "src": "210:1085:6", - "usedErrors": [ - 1085, - 1087, - 1089, - 1091 - ], - "usedEvents": [ - 1097, - 1103 - ] - } - ], - "src": "33:1263:6" - }, - "id": 6 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol", - "exportedSymbols": { - "IContractIdentifier": [ - 1000 - ], - "IImplementation": [ - 1142 - ] - }, - "id": 1143, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1130, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:7" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol", - "file": "./IContractIdentifier.sol", - "id": 1132, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1143, - "sourceUnit": 1001, - "src": "58:64:7", - "symbolAliases": [ - { - "foreign": { - "id": 1131, - "name": "IContractIdentifier", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1000, - "src": "67:19:7", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1133, - "name": "IContractIdentifier", - "nameLocations": [ - "153:19:7" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1000, - "src": "153:19:7" - }, - "id": 1134, - "nodeType": "InheritanceSpecifier", - "src": "153:19:7" - } - ], - "canonicalName": "IImplementation", - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "id": 1142, - "linearizedBaseContracts": [ - 1142, - 1000 - ], - "name": "IImplementation", - "nameLocation": "134:15:7", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "bf10dd3a", - "id": 1136, - "name": "NotProxy", - "nameLocation": "185:8:7", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1135, - "nodeType": "ParameterList", - "parameters": [], - "src": "193:2:7" - }, - "src": "179:17:7" - }, - { - "functionSelector": "9ded06df", - "id": 1141, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setup", - "nameLocation": "211:5:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1139, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1138, - "mutability": "mutable", - "name": "data", - "nameLocation": "232:4:7", - "nodeType": "VariableDeclaration", - "scope": 1141, - "src": "217:19:7", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1137, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "217:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "216:21:7" - }, - "returnParameters": { - "id": 1140, - "nodeType": "ParameterList", - "parameters": [], - "src": "246:0:7" - }, - "scope": 1142, - "src": "202:45:7", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1143, - "src": "124:125:7", - "usedErrors": [ - 1136 - ], - "usedEvents": [] - } - ], - "src": "33:217:7" - }, - "id": 7 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol", - "exportedSymbols": { - "GasEstimationType": [ - 1506 - ], - "GasInfo": [ - 1526 - ], - "IInterchainGasEstimation": [ - 1187 - ] - }, - "id": 1188, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1144, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:8" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol", - "file": "../types/GasEstimationTypes.sol", - "id": 1147, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1188, - "sourceUnit": 1527, - "src": "58:77:8", - "symbolAliases": [ - { - "foreign": { - "id": 1145, - "name": "GasEstimationType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1506, - "src": "67:17:8", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - }, - { - "foreign": { - "id": 1146, - "name": "GasInfo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "86:7:8", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IInterchainGasEstimation", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1148, - "nodeType": "StructuredDocumentation", - "src": "137:218:8", - "text": " @title IInterchainGasEstimation Interface\n @notice This is an interface for the InterchainGasEstimation contract\n which allows for estimating gas fees for cross-chain communication on the Axelar network." - }, - "fullyImplemented": false, - "id": 1187, - "linearizedBaseContracts": [ - 1187 - ], - "name": "IInterchainGasEstimation", - "nameLocation": "366:24:8", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "10fcd31f", - "id": 1153, - "name": "UnsupportedEstimationType", - "nameLocation": "403:25:8", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1152, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1151, - "mutability": "mutable", - "name": "gasEstimationType", - "nameLocation": "447:17:8", - "nodeType": "VariableDeclaration", - "scope": 1153, - "src": "429:35:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_enum$_GasEstimationType_$1506", - "typeString": "enum GasEstimationType" - }, - "typeName": { - "id": 1150, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1149, - "name": "GasEstimationType", - "nameLocations": [ - "429:17:8" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1506, - "src": "429:17:8" - }, - "referencedDeclaration": 1506, - "src": "429:17:8", - "typeDescriptions": { - "typeIdentifier": "t_enum$_GasEstimationType_$1506", - "typeString": "enum GasEstimationType" - } - }, - "visibility": "internal" - } - ], - "src": "428:37:8" - }, - "src": "397:69:8" - }, - { - "anonymous": false, - "documentation": { - "id": 1154, - "nodeType": "StructuredDocumentation", - "src": "472:180:8", - "text": " @notice Event emitted when the gas price for a specific chain is updated.\n @param chain The name of the chain\n @param info The gas info for the chain" - }, - "eventSelector": "11415423beab67062fb0f3f22cb2a478e3b5a02a845dd62ddb7c12d11098ff1b", - "id": 1161, - "name": "GasInfoUpdated", - "nameLocation": "663:14:8", - "nodeType": "EventDefinition", - "parameters": { - "id": 1160, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1156, - "indexed": false, - "mutability": "mutable", - "name": "chain", - "nameLocation": "685:5:8", - "nodeType": "VariableDeclaration", - "scope": 1161, - "src": "678:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1155, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "678:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1159, - "indexed": false, - "mutability": "mutable", - "name": "info", - "nameLocation": "700:4:8", - "nodeType": "VariableDeclaration", - "scope": 1161, - "src": "692:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_struct$_GasInfo_$1526_memory_ptr", - "typeString": "struct GasInfo" - }, - "typeName": { - "id": 1158, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1157, - "name": "GasInfo", - "nameLocations": [ - "692:7:8" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1526, - "src": "692:7:8" - }, - "referencedDeclaration": 1526, - "src": "692:7:8", - "typeDescriptions": { - "typeIdentifier": "t_struct$_GasInfo_$1526_storage_ptr", - "typeString": "struct GasInfo" - } - }, - "visibility": "internal" - } - ], - "src": "677:28:8" - }, - "src": "657:49:8" - }, - { - "documentation": { - "id": 1162, - "nodeType": "StructuredDocumentation", - "src": "712:162:8", - "text": " @notice Returns the gas price for a specific chain.\n @param chain The name of the chain\n @return gasInfo The gas info for the chain" - }, - "functionSelector": "86389f02", - "id": 1170, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getGasInfo", - "nameLocation": "888:10:8", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1165, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1164, - "mutability": "mutable", - "name": "chain", - "nameLocation": "915:5:8", - "nodeType": "VariableDeclaration", - "scope": 1170, - "src": "899:21:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1163, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "899:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "898:23:8" - }, - "returnParameters": { - "id": 1169, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1168, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1170, - "src": "945:14:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_GasInfo_$1526_memory_ptr", - "typeString": "struct GasInfo" - }, - "typeName": { - "id": 1167, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1166, - "name": "GasInfo", - "nameLocations": [ - "945:7:8" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1526, - "src": "945:7:8" - }, - "referencedDeclaration": 1526, - "src": "945:7:8", - "typeDescriptions": { - "typeIdentifier": "t_struct$_GasInfo_$1526_storage_ptr", - "typeString": "struct GasInfo" - } - }, - "visibility": "internal" - } - ], - "src": "944:16:8" - }, - "scope": 1187, - "src": "879:82:8", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1171, - "nodeType": "StructuredDocumentation", - "src": "967:636:8", - "text": " @notice Estimates the gas fee for a cross-chain contract call.\n @param destinationChain Axelar registered name of the destination chain\n @param destinationAddress Destination contract address being called\n @param executionGasLimit The gas limit to be used for the destination contract execution,\n e.g. pass in 200k if your app consumes needs upto 200k for this contract call\n @param params Additional parameters for the gas estimation\n @return gasEstimate The cross-chain gas estimate, in terms of source chain's native gas token that should be forwarded to the gas service." - }, - "functionSelector": "135eaa70", - "id": 1186, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "estimateGasFee", - "nameLocation": "1617:14:8", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1182, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1173, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "1657:16:8", - "nodeType": "VariableDeclaration", - "scope": 1186, - "src": "1641:32:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1172, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1641:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1175, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "1699:18:8", - "nodeType": "VariableDeclaration", - "scope": 1186, - "src": "1683:34:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1174, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1683:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1177, - "mutability": "mutable", - "name": "payload", - "nameLocation": "1742:7:8", - "nodeType": "VariableDeclaration", - "scope": 1186, - "src": "1727:22:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1176, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1727:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1179, - "mutability": "mutable", - "name": "executionGasLimit", - "nameLocation": "1767:17:8", - "nodeType": "VariableDeclaration", - "scope": 1186, - "src": "1759:25:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1178, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1759:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1181, - "mutability": "mutable", - "name": "params", - "nameLocation": "1809:6:8", - "nodeType": "VariableDeclaration", - "scope": 1186, - "src": "1794:21:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1180, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1794:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1631:190:8" - }, - "returnParameters": { - "id": 1185, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1184, - "mutability": "mutable", - "name": "gasEstimate", - "nameLocation": "1853:11:8", - "nodeType": "VariableDeclaration", - "scope": 1186, - "src": "1845:19:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1183, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1845:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1844:21:8" - }, - "scope": 1187, - "src": "1608:258:8", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1188, - "src": "356:1512:8", - "usedErrors": [ - 1153 - ], - "usedEvents": [ - 1161 - ] - } - ], - "src": "33:1836:8" - }, - "id": 8 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol", - "exportedSymbols": { - "IOwnable": [ - 1233 - ] - }, - "id": 1234, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1189, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:9" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IOwnable", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1190, - "nodeType": "StructuredDocumentation", - "src": "58:312:9", - "text": " @title IOwnable Interface\n @notice IOwnable is an interface that abstracts the implementation of a\n contract with ownership control features. It's commonly used in upgradable\n contracts and includes the functionality to get current owner, transfer\n ownership, and propose and accept ownership." - }, - "fullyImplemented": false, - "id": 1233, - "linearizedBaseContracts": [ - 1233 - ], - "name": "IOwnable", - "nameLocation": "381:8:9", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "30cd7471", - "id": 1192, - "name": "NotOwner", - "nameLocation": "402:8:9", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1191, - "nodeType": "ParameterList", - "parameters": [], - "src": "410:2:9" - }, - "src": "396:17:9" - }, - { - "errorSelector": "49e27cff", - "id": 1194, - "name": "InvalidOwner", - "nameLocation": "424:12:9", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1193, - "nodeType": "ParameterList", - "parameters": [], - "src": "436:2:9" - }, - "src": "418:21:9" - }, - { - "errorSelector": "d924e5f4", - "id": 1196, - "name": "InvalidOwnerAddress", - "nameLocation": "450:19:9", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1195, - "nodeType": "ParameterList", - "parameters": [], - "src": "469:2:9" - }, - "src": "444:28:9" - }, - { - "anonymous": false, - "eventSelector": "d9be0e8e07417e00f2521db636cb53e316fd288f5051f16d2aa2bf0c3938a876", - "id": 1200, - "name": "OwnershipTransferStarted", - "nameLocation": "484:24:9", - "nodeType": "EventDefinition", - "parameters": { - "id": 1199, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1198, - "indexed": true, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "525:8:9", - "nodeType": "VariableDeclaration", - "scope": 1200, - "src": "509:24:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1197, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "509:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "508:26:9" - }, - "src": "478:57:9" - }, - { - "anonymous": false, - "eventSelector": "04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163", - "id": 1204, - "name": "OwnershipTransferred", - "nameLocation": "546:20:9", - "nodeType": "EventDefinition", - "parameters": { - "id": 1203, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1202, - "indexed": true, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "583:8:9", - "nodeType": "VariableDeclaration", - "scope": 1204, - "src": "567:24:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1201, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "567:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "566:26:9" - }, - "src": "540:53:9" - }, - { - "documentation": { - "id": 1205, - "nodeType": "StructuredDocumentation", - "src": "599:125:9", - "text": " @notice Returns the current owner of the contract.\n @return address The address of the current owner" - }, - "functionSelector": "8da5cb5b", - "id": 1210, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "owner", - "nameLocation": "738:5:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1206, - "nodeType": "ParameterList", - "parameters": [], - "src": "743:2:9" - }, - "returnParameters": { - "id": 1209, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1208, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1210, - "src": "769:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1207, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "769:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "768:9:9" - }, - "scope": 1233, - "src": "729:49:9", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1211, - "nodeType": "StructuredDocumentation", - "src": "784:140:9", - "text": " @notice Returns the address of the pending owner of the contract.\n @return address The address of the pending owner" - }, - "functionSelector": "e30c3978", - "id": 1216, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "pendingOwner", - "nameLocation": "938:12:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1212, - "nodeType": "ParameterList", - "parameters": [], - "src": "950:2:9" - }, - "returnParameters": { - "id": 1215, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1214, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1216, - "src": "976:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1213, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "976:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "975:9:9" - }, - "scope": 1233, - "src": "929:56:9", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1217, - "nodeType": "StructuredDocumentation", - "src": "991:139:9", - "text": " @notice Transfers ownership of the contract to a new address\n @param newOwner The address to transfer ownership to" - }, - "functionSelector": "f2fde38b", - "id": 1222, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferOwnership", - "nameLocation": "1144:17:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1220, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1219, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "1170:8:9", - "nodeType": "VariableDeclaration", - "scope": 1222, - "src": "1162:16:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1218, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1162:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1161:18:9" - }, - "returnParameters": { - "id": 1221, - "nodeType": "ParameterList", - "parameters": [], - "src": "1188:0:9" - }, - "scope": 1233, - "src": "1135:54:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1223, - "nodeType": "StructuredDocumentation", - "src": "1195:213:9", - "text": " @notice Proposes to transfer the contract's ownership to a new address.\n The new owner needs to accept the ownership explicitly.\n @param newOwner The address to transfer ownership to" - }, - "functionSelector": "710bf322", - "id": 1228, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "proposeOwnership", - "nameLocation": "1422:16:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1226, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1225, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "1447:8:9", - "nodeType": "VariableDeclaration", - "scope": 1228, - "src": "1439:16:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1224, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1439:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1438:18:9" - }, - "returnParameters": { - "id": 1227, - "nodeType": "ParameterList", - "parameters": [], - "src": "1465:0:9" - }, - "scope": 1233, - "src": "1413:53:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1229, - "nodeType": "StructuredDocumentation", - "src": "1472:120:9", - "text": " @notice Transfers ownership to the pending owner.\n @dev Can only be called by the pending owner" - }, - "functionSelector": "79ba5097", - "id": 1232, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "acceptOwnership", - "nameLocation": "1606:15:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1230, - "nodeType": "ParameterList", - "parameters": [], - "src": "1621:2:9" - }, - "returnParameters": { - "id": 1231, - "nodeType": "ParameterList", - "parameters": [], - "src": "1632:0:9" - }, - "scope": 1233, - "src": "1597:36:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1234, - "src": "371:1264:9", - "usedErrors": [ - 1192, - 1194, - 1196 - ], - "usedEvents": [ - 1200, - 1204 - ] - } - ], - "src": "33:1603:9" - }, - "id": 9 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol", - "exportedSymbols": { - "IImplementation": [ - 1142 - ], - "IOwnable": [ - 1233 - ], - "IUpgradable": [ - 1268 - ] - }, - "id": 1269, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1235, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:10" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol", - "file": "./IOwnable.sol", - "id": 1237, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1269, - "sourceUnit": 1234, - "src": "58:42:10", - "symbolAliases": [ - { - "foreign": { - "id": 1236, - "name": "IOwnable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1233, - "src": "67:8:10", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol", - "file": "./IImplementation.sol", - "id": 1239, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1269, - "sourceUnit": 1143, - "src": "101:56:10", - "symbolAliases": [ - { - "foreign": { - "id": 1238, - "name": "IImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "110:15:10", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1240, - "name": "IOwnable", - "nameLocations": [ - "230:8:10" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1233, - "src": "230:8:10" - }, - "id": 1241, - "nodeType": "InheritanceSpecifier", - "src": "230:8:10" - }, - { - "baseName": { - "id": 1242, - "name": "IImplementation", - "nameLocations": [ - "240:15:10" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1142, - "src": "240:15:10" - }, - "id": 1243, - "nodeType": "InheritanceSpecifier", - "src": "240:15:10" - } - ], - "canonicalName": "IUpgradable", - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "id": 1268, - "linearizedBaseContracts": [ - 1268, - 1142, - 1000, - 1233 - ], - "name": "IUpgradable", - "nameLocation": "215:11:10", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "8f84fb24", - "id": 1245, - "name": "InvalidCodeHash", - "nameLocation": "268:15:10", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1244, - "nodeType": "ParameterList", - "parameters": [], - "src": "283:2:10" - }, - "src": "262:24:10" - }, - { - "errorSelector": "68155f9a", - "id": 1247, - "name": "InvalidImplementation", - "nameLocation": "297:21:10", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1246, - "nodeType": "ParameterList", - "parameters": [], - "src": "318:2:10" - }, - "src": "291:30:10" - }, - { - "errorSelector": "97905dfb", - "id": 1249, - "name": "SetupFailed", - "nameLocation": "332:11:10", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1248, - "nodeType": "ParameterList", - "parameters": [], - "src": "343:2:10" - }, - "src": "326:20:10" - }, - { - "anonymous": false, - "eventSelector": "bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", - "id": 1253, - "name": "Upgraded", - "nameLocation": "358:8:10", - "nodeType": "EventDefinition", - "parameters": { - "id": 1252, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1251, - "indexed": true, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "383:17:10", - "nodeType": "VariableDeclaration", - "scope": 1253, - "src": "367:33:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1250, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "367:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "366:35:10" - }, - "src": "352:50:10" - }, - { - "functionSelector": "5c60da1b", - "id": 1258, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "implementation", - "nameLocation": "417:14:10", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1254, - "nodeType": "ParameterList", - "parameters": [], - "src": "431:2:10" - }, - "returnParameters": { - "id": 1257, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1256, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1258, - "src": "457:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1255, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "457:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "456:9:10" - }, - "scope": 1268, - "src": "408:58:10", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "a3499c73", - "id": 1267, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "upgrade", - "nameLocation": "481:7:10", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1265, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1260, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "506:17:10", - "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "498:25:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1259, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "498:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1262, - "mutability": "mutable", - "name": "newImplementationCodeHash", - "nameLocation": "541:25:10", - "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "533:33:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1261, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "533:7:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1264, - "mutability": "mutable", - "name": "params", - "nameLocation": "591:6:10", - "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "576:21:10", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1263, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "576:5:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "488:115:10" - }, - "returnParameters": { - "id": 1266, - "nodeType": "ParameterList", - "parameters": [], - "src": "612:0:10" - }, - "scope": 1268, - "src": "472:141:10", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1269, - "src": "205:410:10", - "usedErrors": [ - 1136, - 1192, - 1194, - 1196, - 1245, - 1247, - 1249 - ], - "usedEvents": [ - 1200, - 1204, - 1253 - ] - } - ], - "src": "33:583:10" - }, - "id": 10 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", - "exportedSymbols": { - "AddressToString": [ - 1497 - ], - "StringToAddress": [ - 1404 - ] - }, - "id": 1498, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1270, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:11" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "StringToAddress", - "contractDependencies": [], - "contractKind": "library", - "fullyImplemented": true, - "id": 1404, - "linearizedBaseContracts": [ - 1404 - ], - "name": "StringToAddress", - "nameLocation": "66:15:11", - "nodeType": "ContractDefinition", - "nodes": [ - { - "errorSelector": "df48f19e", - "id": 1272, - "name": "InvalidAddressString", - "nameLocation": "94:20:11", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1271, - "nodeType": "ParameterList", - "parameters": [], - "src": "114:2:11" - }, - "src": "88:29:11" - }, - { - "body": { - "id": 1402, - "nodeType": "Block", - "src": "203:754:11", - "statements": [ - { - "assignments": [ - 1280 - ], - "declarations": [ - { - "constant": false, - "id": 1280, - "mutability": "mutable", - "name": "stringBytes", - "nameLocation": "226:11:11", - "nodeType": "VariableDeclaration", - "scope": 1402, - "src": "213:24:11", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1279, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "213:5:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1285, - "initialValue": { - "arguments": [ - { - "id": 1283, - "name": "addressString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1274, - "src": "246:13:11", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1282, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "240:5:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1281, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "240:5:11", - "typeDescriptions": {} - } - }, - "id": 1284, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "240:20:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "213:47:11" - }, - { - "assignments": [ - 1287 - ], - "declarations": [ - { - "constant": false, - "id": 1287, - "mutability": "mutable", - "name": "addressNumber", - "nameLocation": "278:13:11", - "nodeType": "VariableDeclaration", - "scope": 1402, - "src": "270:21:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - }, - "typeName": { - "id": 1286, - "name": "uint160", - "nodeType": "ElementaryTypeName", - "src": "270:7:11", - "typeDescriptions": { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } - }, - "visibility": "internal" - } - ], - "id": 1289, - "initialValue": { - "hexValue": "30", - "id": 1288, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "294:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "270:25:11" - }, - { - "assignments": [ - 1291 - ], - "declarations": [ - { - "constant": false, - "id": 1291, - "mutability": "mutable", - "name": "stringByte", - "nameLocation": "311:10:11", - "nodeType": "VariableDeclaration", - "scope": 1402, - "src": "305:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 1290, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "305:5:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 1292, - "nodeType": "VariableDeclarationStatement", - "src": "305:16:11" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1308, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1302, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1296, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1293, - "name": "stringBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1280, - "src": "336:11:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1294, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "348:6:11", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "336:18:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "3432", - "id": 1295, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "358:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_42_by_1", - "typeString": "int_const 42" - }, - "value": "42" - }, - "src": "336:24:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 1301, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 1297, - "name": "stringBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1280, - "src": "364:11:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1299, - "indexExpression": { - "hexValue": "30", - "id": 1298, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "376:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "364:14:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 1300, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "382:3:11", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", - "typeString": "literal_string \"0\"" - }, - "value": "0" - }, - "src": "364:21:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "336:49:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 1307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 1303, - "name": "stringBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1280, - "src": "389:11:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1305, - "indexExpression": { - "hexValue": "31", - "id": 1304, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "401:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "389:14:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "78", - "id": 1306, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "407:3:11", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83", - "typeString": "literal_string \"x\"" - }, - "value": "x" - }, - "src": "389:21:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "336:74:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1312, - "nodeType": "IfStatement", - "src": "332:109:11", - "trueBody": { - "errorCall": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1309, - "name": "InvalidAddressString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1272, - "src": "419:20:11", - "typeDescriptions": { - "typeIdentifier": "t_function_error_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "419:22:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1311, - "nodeType": "RevertStatement", - "src": "412:29:11" - } - }, - { - "body": { - "id": 1395, - "nodeType": "Block", - "src": "485:426:11", - "statements": [ - { - "expression": { - "id": 1330, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1323, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "499:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "baseExpression": { - "id": 1326, - "name": "stringBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1280, - "src": "518:11:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1328, - "indexExpression": { - "id": 1327, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1314, - "src": "530:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "518:14:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 1325, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "512:5:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 1324, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "512:5:11", - "typeDescriptions": {} - } - }, - "id": 1329, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "512:21:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "499:34:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 1331, - "nodeType": "ExpressionStatement", - "src": "499:34:11" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1340, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 1334, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1332, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "553:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "3937", - "id": 1333, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "567:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_97_by_1", - "typeString": "int_const 97" - }, - "value": "97" - }, - "src": "553:16:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1335, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "552:18:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 1338, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1336, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "575:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "hexValue": "313032", - "id": 1337, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "589:3:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_102_by_1", - "typeString": "int_const 102" - }, - "value": "102" - }, - "src": "575:17:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1339, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "574:19:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "552:41:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1353, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 1347, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1345, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "635:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "3635", - "id": 1346, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "649:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_65_by_1", - "typeString": "int_const 65" - }, - "value": "65" - }, - "src": "635:16:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1348, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "634:18:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 1351, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1349, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "657:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "hexValue": "3730", - "id": 1350, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "671:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_70_by_1", - "typeString": "int_const 70" - }, - "value": "70" - }, - "src": "657:16:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1352, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "656:18:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "634:40:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1366, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 1360, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1358, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "716:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "3438", - "id": 1359, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "730:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_48_by_1", - "typeString": "int_const 48" - }, - "value": "48" - }, - "src": "716:16:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1361, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "715:18:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 1364, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1362, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "738:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "hexValue": "3537", - "id": 1363, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "752:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_57_by_1", - "typeString": "int_const 57" - }, - "value": "57" - }, - "src": "738:16:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1365, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "737:18:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "715:40:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "errorCall": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1371, - "name": "InvalidAddressString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1272, - "src": "799:20:11", - "typeDescriptions": { - "typeIdentifier": "t_function_error_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1372, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "799:22:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1373, - "nodeType": "RevertStatement", - "src": "792:29:11" - }, - "id": 1374, - "nodeType": "IfStatement", - "src": "711:110:11", - "trueBody": { - "expression": { - "id": 1369, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1367, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "757:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "hexValue": "3438", - "id": 1368, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "771:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_48_by_1", - "typeString": "int_const 48" - }, - "value": "48" - }, - "src": "757:16:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 1370, - "nodeType": "ExpressionStatement", - "src": "757:16:11" - } - }, - "id": 1375, - "nodeType": "IfStatement", - "src": "630:191:11", - "trueBody": { - "expression": { - "id": 1356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1354, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "676:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "hexValue": "3535", - "id": 1355, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "690:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_55_by_1", - "typeString": "int_const 55" - }, - "value": "55" - }, - "src": "676:16:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 1357, - "nodeType": "ExpressionStatement", - "src": "676:16:11" - } - }, - "id": 1376, - "nodeType": "IfStatement", - "src": "548:273:11", - "trueBody": { - "expression": { - "id": 1343, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1341, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "595:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "hexValue": "3837", - "id": 1342, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "609:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_87_by_1", - "typeString": "int_const 87" - }, - "value": "87" - }, - "src": "595:16:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 1344, - "nodeType": "ExpressionStatement", - "src": "595:16:11" - } - }, - { - "expression": { - "id": 1393, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1377, - "name": "addressNumber", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1287, - "src": "836:13:11", - "typeDescriptions": { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } - }, - "nodeType": "Assignment", - "operator": "|=", - "rightHandSide": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1391, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 1382, - "name": "stringByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "869:10:11", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 1381, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "861:7:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 1380, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "861:7:11", - "typeDescriptions": {} - } - }, - "id": 1383, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "861:19:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1389, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "3431", - "id": 1384, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "886:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_41_by_1", - "typeString": "int_const 41" - }, - "value": "41" - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 1385, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1314, - "src": "891:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "886:6:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 1387, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "885:8:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "hexValue": "32", - "id": 1388, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "897:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "885:13:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 1390, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "884:15:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "861:38:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1379, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "853:7:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint160_$", - "typeString": "type(uint160)" - }, - "typeName": { - "id": 1378, - "name": "uint160", - "nodeType": "ElementaryTypeName", - "src": "853:7:11", - "typeDescriptions": {} - } - }, - "id": 1392, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "853:47:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } - }, - "src": "836:64:11", - "typeDescriptions": { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } - }, - "id": 1394, - "nodeType": "ExpressionStatement", - "src": "836:64:11" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1317, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1314, - "src": "472:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "hexValue": "3432", - "id": 1318, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "476:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_42_by_1", - "typeString": "int_const 42" - }, - "value": "42" - }, - "src": "472:6:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1396, - "initializationExpression": { - "assignments": [ - 1314 - ], - "declarations": [ - { - "constant": false, - "id": 1314, - "mutability": "mutable", - "name": "i", - "nameLocation": "465:1:11", - "nodeType": "VariableDeclaration", - "scope": 1396, - "src": "457:9:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1313, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "457:7:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1316, - "initialValue": { - "hexValue": "32", - "id": 1315, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "469:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "VariableDeclarationStatement", - "src": "457:13:11" - }, - "loopExpression": { - "expression": { - "id": 1321, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": true, - "src": "480:3:11", - "subExpression": { - "id": 1320, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1314, - "src": "482:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1322, - "nodeType": "ExpressionStatement", - "src": "480:3:11" - }, - "nodeType": "ForStatement", - "src": "452:459:11" - }, - { - "expression": { - "arguments": [ - { - "id": 1399, - "name": "addressNumber", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1287, - "src": "936:13:11", - "typeDescriptions": { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } - ], - "id": 1398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "928:7:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1397, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "928:7:11", - "typeDescriptions": {} - } - }, - "id": 1400, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "928:22:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1278, - "id": 1401, - "nodeType": "Return", - "src": "921:29:11" - } - ] - }, - "id": 1403, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "toAddress", - "nameLocation": "132:9:11", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1275, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1274, - "mutability": "mutable", - "name": "addressString", - "nameLocation": "156:13:11", - "nodeType": "VariableDeclaration", - "scope": 1403, - "src": "142:27:11", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1273, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "142:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "141:29:11" - }, - "returnParameters": { - "id": 1278, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1277, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1403, - "src": "194:7:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1276, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "194:7:11", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "193:9:11" - }, - "scope": 1404, - "src": "123:834:11", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 1498, - "src": "58:901:11", - "usedErrors": [ - 1272 - ], - "usedEvents": [] - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "AddressToString", - "contractDependencies": [], - "contractKind": "library", - "fullyImplemented": true, - "id": 1497, - "linearizedBaseContracts": [ - 1497 - ], - "name": "AddressToString", - "nameLocation": "969:15:11", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1495, - "nodeType": "Block", - "src": "1065:481:11", - "statements": [ - { - "assignments": [ - 1412 - ], - "declarations": [ - { - "constant": false, - "id": 1412, - "mutability": "mutable", - "name": "addressBytes", - "nameLocation": "1088:12:11", - "nodeType": "VariableDeclaration", - "scope": 1495, - "src": "1075:25:11", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1411, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1075:5:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1417, - "initialValue": { - "arguments": [ - { - "id": 1415, - "name": "address_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1406, - "src": "1120:8:11", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1413, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "1103:3:11", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1414, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1107:12:11", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "1103:16:11", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1416, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1103:26:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1075:54:11" - }, - { - "assignments": [ - 1419 - ], - "declarations": [ - { - "constant": false, - "id": 1419, - "mutability": "mutable", - "name": "characters", - "nameLocation": "1152:10:11", - "nodeType": "VariableDeclaration", - "scope": 1495, - "src": "1139:23:11", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1418, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1139:5:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1421, - "initialValue": { - "hexValue": "30313233343536373839616263646566", - "id": 1420, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1165:18:11", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cb29997ed99ead0db59ce4d12b7d3723198c827273e5796737c926d78019c39f", - "typeString": "literal_string \"0123456789abcdef\"" - }, - "value": "0123456789abcdef" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1139:44:11" - }, - { - "assignments": [ - 1423 - ], - "declarations": [ - { - "constant": false, - "id": 1423, - "mutability": "mutable", - "name": "stringBytes", - "nameLocation": "1206:11:11", - "nodeType": "VariableDeclaration", - "scope": 1495, - "src": "1193:24:11", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1422, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1193:5:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1428, - "initialValue": { - "arguments": [ - { - "hexValue": "3432", - "id": 1426, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1230:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_42_by_1", - "typeString": "int_const 42" - }, - "value": "42" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_42_by_1", - "typeString": "int_const 42" - } - ], - "id": 1425, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "1220:9:11", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 1424, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1224:5:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 1427, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1220:13:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1193:40:11" - }, - { - "expression": { - "id": 1433, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1429, - "name": "stringBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1423, - "src": "1244:11:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1431, - "indexExpression": { - "hexValue": "30", - "id": 1430, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1256:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1244:14:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 1432, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1261:3:11", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", - "typeString": "literal_string \"0\"" - }, - "value": "0" - }, - "src": "1244:20:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1434, - "nodeType": "ExpressionStatement", - "src": "1244:20:11" - }, - { - "expression": { - "id": 1439, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1435, - "name": "stringBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1423, - "src": "1274:11:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1437, - "indexExpression": { - "hexValue": "31", - "id": 1436, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1286:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1274:14:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "78", - "id": 1438, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1291:3:11", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83", - "typeString": "literal_string \"x\"" - }, - "value": "x" - }, - "src": "1274:20:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1440, - "nodeType": "ExpressionStatement", - "src": "1274:20:11" - }, - { - "body": { - "id": 1488, - "nodeType": "Block", - "src": "1334:169:11", - "statements": [ - { - "expression": { - "id": 1467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1450, - "name": "stringBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1423, - "src": "1348:11:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1456, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 1451, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1360:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1454, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1452, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "1364:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "hexValue": "32", - "id": 1453, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1368:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "1364:5:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1360:9:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1348:22:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1457, - "name": "characters", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1419, - "src": "1373:10:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1466, - "indexExpression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 1464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 1460, - "name": "addressBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1412, - "src": "1390:12:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1462, - "indexExpression": { - "id": 1461, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "1403:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1390:15:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": ">>", - "rightExpression": { - "hexValue": "34", - "id": 1463, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1409:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "src": "1390:20:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 1459, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1384:5:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 1458, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "1384:5:11", - "typeDescriptions": {} - } - }, - "id": 1465, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1384:27:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1373:39:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "1348:64:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1468, - "nodeType": "ExpressionStatement", - "src": "1348:64:11" - }, - { - "expression": { - "id": 1486, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1469, - "name": "stringBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1423, - "src": "1426:11:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1475, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1474, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "33", - "id": 1470, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1438:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1473, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1471, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "1442:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "hexValue": "32", - "id": 1472, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1446:1:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "1442:5:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1438:9:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1426:22:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1476, - "name": "characters", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1419, - "src": "1451:10:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1485, - "indexExpression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 1483, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 1479, - "name": "addressBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1412, - "src": "1468:12:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1481, - "indexExpression": { - "id": 1480, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "1481:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1468:15:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "&", - "rightExpression": { - "hexValue": "30783066", - "id": 1482, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1486:4:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_15_by_1", - "typeString": "int_const 15" - }, - "value": "0x0f" - }, - "src": "1468:22:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 1478, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1462:5:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 1477, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "1462:5:11", - "typeDescriptions": {} - } - }, - "id": 1484, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1462:29:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1451:41:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "1426:66:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1487, - "nodeType": "ExpressionStatement", - "src": "1426:66:11" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1446, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1444, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "1321:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "hexValue": "3230", - "id": 1445, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1325:2:11", - "typeDescriptions": { - "typeIdentifier": "t_rational_20_by_1", - "typeString": "int_const 20" - }, - "value": "20" - }, - "src": "1321:6:11", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1489, - "initializationExpression": { - "assignments": [ - 1442 - ], - "declarations": [ - { - "constant": false, - "id": 1442, - "mutability": "mutable", - "name": "i", - "nameLocation": "1318:1:11", - "nodeType": "VariableDeclaration", - "scope": 1489, - "src": "1310:9:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1441, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1310:7:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1443, - "nodeType": "VariableDeclarationStatement", - "src": "1310:9:11" - }, - "loopExpression": { - "expression": { - "id": 1448, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": true, - "src": "1329:3:11", - "subExpression": { - "id": 1447, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "1331:1:11", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1449, - "nodeType": "ExpressionStatement", - "src": "1329:3:11" - }, - "nodeType": "ForStatement", - "src": "1305:198:11" - }, - { - "expression": { - "arguments": [ - { - "id": 1492, - "name": "stringBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1423, - "src": "1527:11:11", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1491, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1520:6:11", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 1490, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1520:6:11", - "typeDescriptions": {} - } - }, - "id": 1493, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1520:19:11", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1410, - "id": 1494, - "nodeType": "Return", - "src": "1513:26:11" - } - ] - }, - "id": 1496, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "toString", - "nameLocation": "1000:8:11", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1407, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1406, - "mutability": "mutable", - "name": "address_", - "nameLocation": "1017:8:11", - "nodeType": "VariableDeclaration", - "scope": 1496, - "src": "1009:16:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1405, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1009:7:11", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1008:18:11" - }, - "returnParameters": { - "id": 1410, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1409, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1496, - "src": "1050:13:11", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1408, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1050:6:11", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1049:15:11" - }, - "scope": 1497, - "src": "991:555:11", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 1498, - "src": "961:587:11", - "usedErrors": [], - "usedEvents": [] - } - ], - "src": "33:1516:11" - }, - "id": 11 - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol": { - "ast": { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol", - "exportedSymbols": { - "GasEstimationType": [ - 1506 - ], - "GasInfo": [ - 1526 - ] - }, - "id": 1527, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1499, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "33:23:12" - }, - { - "canonicalName": "GasEstimationType", - "documentation": { - "id": 1500, - "nodeType": "StructuredDocumentation", - "src": "58:114:12", - "text": " @title GasEstimationType\n @notice This enum represents the gas estimation types for different chains." - }, - "id": 1506, - "members": [ - { - "id": 1501, - "name": "Default", - "nameLocation": "202:7:12", - "nodeType": "EnumValue", - "src": "202:7:12" - }, - { - "id": 1502, - "name": "OptimismEcotone", - "nameLocation": "215:15:12", - "nodeType": "EnumValue", - "src": "215:15:12" - }, - { - "id": 1503, - "name": "OptimismBedrock", - "nameLocation": "236:15:12", - "nodeType": "EnumValue", - "src": "236:15:12" - }, - { - "id": 1504, - "name": "Arbitrum", - "nameLocation": "257:8:12", - "nodeType": "EnumValue", - "src": "257:8:12" - }, - { - "id": 1505, - "name": "Scroll", - "nameLocation": "271:6:12", - "nodeType": "EnumValue", - "src": "271:6:12" - } - ], - "name": "GasEstimationType", - "nameLocation": "178:17:12", - "nodeType": "EnumDefinition", - "src": "173:106:12" - }, - { - "canonicalName": "GasInfo", - "documentation": { - "id": 1507, - "nodeType": "StructuredDocumentation", - "src": "281:197:12", - "text": " @title GasInfo\n @notice This struct represents the gas pricing information for a specific chain.\n @dev Smaller uint types are used for efficient struct packing to save storage costs." - }, - "id": 1526, - "members": [ - { - "constant": false, - "id": 1510, - "mutability": "mutable", - "name": "gasEstimationType", - "nameLocation": "572:17:12", - "nodeType": "VariableDeclaration", - "scope": 1526, - "src": "565:24:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1509, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "565:6:12", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1513, - "mutability": "mutable", - "name": "l1FeeScalar", - "nameLocation": "700:11:12", - "nodeType": "VariableDeclaration", - "scope": 1526, - "src": "693:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 1512, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "693:6:12", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1516, - "mutability": "mutable", - "name": "axelarBaseFee", - "nameLocation": "839:13:12", - "nodeType": "VariableDeclaration", - "scope": 1526, - "src": "831:21:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint128", - "typeString": "uint128" - }, - "typeName": { - "id": 1515, - "name": "uint128", - "nodeType": "ElementaryTypeName", - "src": "831:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint128", - "typeString": "uint128" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1519, - "mutability": "mutable", - "name": "relativeGasPrice", - "nameLocation": "1017:16:12", - "nodeType": "VariableDeclaration", - "scope": 1526, - "src": "1009:24:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint128", - "typeString": "uint128" - }, - "typeName": { - "id": 1518, - "name": "uint128", - "nodeType": "ElementaryTypeName", - "src": "1009:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint128", - "typeString": "uint128" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1522, - "mutability": "mutable", - "name": "relativeBlobBaseFee", - "nameLocation": "1248:19:12", - "nodeType": "VariableDeclaration", - "scope": 1526, - "src": "1240:27:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint128", - "typeString": "uint128" - }, - "typeName": { - "id": 1521, - "name": "uint128", - "nodeType": "ElementaryTypeName", - "src": "1240:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint128", - "typeString": "uint128" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1525, - "mutability": "mutable", - "name": "expressFee", - "nameLocation": "1367:10:12", - "nodeType": "VariableDeclaration", - "scope": 1526, - "src": "1359:18:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint128", - "typeString": "uint128" - }, - "typeName": { - "id": 1524, - "name": "uint128", - "nodeType": "ElementaryTypeName", - "src": "1359:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint128", - "typeString": "uint128" - } - }, - "visibility": "internal" - } - ], - "name": "GasInfo", - "nameLocation": "486:7:12", - "nodeType": "StructDefinition", - "scope": 1527, - "src": "479:901:12", - "visibility": "public" - } - ], - "src": "33:1348:12" - }, - "id": 12 - }, - "src/__tests__/contracts/AgoricProxy.sol": { - "ast": { - "absolutePath": "src/__tests__/contracts/AgoricProxy.sol", - "exportedSymbols": { - "AddressToString": [ - 1497 - ], - "AgoricProxy": [ - 1973 - ], - "AgoricResponse": [ - 1551 - ], - "AxelarExecutable": [ - 137 - ], - "CallParams": [ - 1556 - ], - "CallResult": [ - 1544 - ], - "IAxelarGasService": [ - 655 - ], - "IERC20": [ - 1080 - ], - "Ownable": [ - 2109 - ], - "StringToAddress": [ - 1404 - ], - "Wallet": [ - 1745 - ] - }, - "id": 1974, - "license": "Apache-2.0", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1528, - "literals": [ - "solidity", - "^", - "0.8", - ".20" - ], - "nodeType": "PragmaDirective", - "src": "39:24:13" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", - "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", - "id": 1530, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1974, - "sourceUnit": 138, - "src": "65:115:13", - "symbolAliases": [ - { - "foreign": { - "id": 1529, - "name": "AxelarExecutable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 137, - "src": "73:16:13", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", - "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", - "id": 1532, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1974, - "sourceUnit": 656, - "src": "181:117:13", - "symbolAliases": [ - { - "foreign": { - "id": 1531, - "name": "IAxelarGasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "189:17:13", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol", - "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol", - "id": 1534, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1974, - "sourceUnit": 1081, - "src": "299:95:13", - "symbolAliases": [ - { - "foreign": { - "id": 1533, - "name": "IERC20", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1080, - "src": "307:6:13", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", - "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", - "id": 1537, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1974, - "sourceUnit": 1498, - "src": "395:122:13", - "symbolAliases": [ - { - "foreign": { - "id": 1535, - "name": "StringToAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1404, - "src": "403:15:13", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - }, - { - "foreign": { - "id": 1536, - "name": "AddressToString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1497, - "src": "420:15:13", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "src/__tests__/contracts/Ownable.sol", - "file": "./Ownable.sol", - "id": 1539, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1974, - "sourceUnit": 2110, - "src": "518:38:13", - "symbolAliases": [ - { - "foreign": { - "id": 1538, - "name": "Ownable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2109, - "src": "526:7:13", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "canonicalName": "CallResult", - "id": 1544, - "members": [ - { - "constant": false, - "id": 1541, - "mutability": "mutable", - "name": "success", - "nameLocation": "587:7:13", - "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "582:12:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1540, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "582:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1543, - "mutability": "mutable", - "name": "result", - "nameLocation": "606:6:13", - "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "600:12:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1542, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "600:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "name": "CallResult", - "nameLocation": "565:10:13", - "nodeType": "StructDefinition", - "scope": 1974, - "src": "558:57:13", - "visibility": "public" - }, - { - "canonicalName": "AgoricResponse", - "id": 1551, - "members": [ - { - "constant": false, - "id": 1546, - "mutability": "mutable", - "name": "isContractCallResult", - "nameLocation": "728:20:13", - "nodeType": "VariableDeclaration", - "scope": 1551, - "src": "723:25:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1545, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "723:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1550, - "mutability": "mutable", - "name": "data", - "nameLocation": "767:4:13", - "nodeType": "VariableDeclaration", - "scope": 1551, - "src": "754:17:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", - "typeString": "struct CallResult[]" - }, - "typeName": { - "baseType": { - "id": 1548, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1547, - "name": "CallResult", - "nameLocations": [ - "754:10:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1544, - "src": "754:10:13" - }, - "referencedDeclaration": 1544, - "src": "754:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", - "typeString": "struct CallResult" - } - }, - "id": 1549, - "nodeType": "ArrayTypeName", - "src": "754:12:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", - "typeString": "struct CallResult[]" - } - }, - "visibility": "internal" - } - ], - "name": "AgoricResponse", - "nameLocation": "624:14:13", - "nodeType": "StructDefinition", - "scope": 1974, - "src": "617:157:13", - "visibility": "public" - }, - { - "canonicalName": "CallParams", - "id": 1556, - "members": [ - { - "constant": false, - "id": 1553, - "mutability": "mutable", - "name": "target", - "nameLocation": "808:6:13", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "800:14:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1552, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "800:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1555, - "mutability": "mutable", - "name": "data", - "nameLocation": "826:4:13", - "nodeType": "VariableDeclaration", - "scope": 1556, - "src": "820:10:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1554, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "820:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "name": "CallParams", - "nameLocation": "783:10:13", - "nodeType": "StructDefinition", - "scope": 1974, - "src": "776:57:13", - "visibility": "public" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1557, - "name": "AxelarExecutable", - "nameLocations": [ - "854:16:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 137, - "src": "854:16:13" - }, - "id": 1558, - "nodeType": "InheritanceSpecifier", - "src": "854:16:13" - }, - { - "baseName": { - "id": 1559, - "name": "Ownable", - "nameLocations": [ - "872:7:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2109, - "src": "872:7:13" - }, - "id": 1560, - "nodeType": "InheritanceSpecifier", - "src": "872:7:13" - } - ], - "canonicalName": "Wallet", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 1745, - "linearizedBaseContracts": [ - 1745, - 2109, - 137, - 178 - ], - "name": "Wallet", - "nameLocation": "844:6:13", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "functionSelector": "6a22d8cc", - "id": 1563, - "mutability": "mutable", - "name": "gasService", - "nameLocation": "911:10:13", - "nodeType": "VariableDeclaration", - "scope": 1745, - "src": "886:35:13", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - }, - "typeName": { - "id": 1562, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1561, - "name": "IAxelarGasService", - "nameLocations": [ - "886:17:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 655, - "src": "886:17:13" - }, - "referencedDeclaration": 655, - "src": "886:17:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "visibility": "public" - }, - { - "anonymous": false, - "eventSelector": "1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2", - "id": 1571, - "name": "MulticallExecuted", - "nameLocation": "934:17:13", - "nodeType": "EventDefinition", - "parameters": { - "id": 1570, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1565, - "indexed": true, - "mutability": "mutable", - "name": "executor", - "nameLocation": "968:8:13", - "nodeType": "VariableDeclaration", - "scope": 1571, - "src": "952:24:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1564, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "952:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1569, - "indexed": false, - "mutability": "mutable", - "name": "results", - "nameLocation": "991:7:13", - "nodeType": "VariableDeclaration", - "scope": 1571, - "src": "978:20:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult[]" - }, - "typeName": { - "baseType": { - "id": 1567, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1566, - "name": "CallResult", - "nameLocations": [ - "978:10:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1544, - "src": "978:10:13" - }, - "referencedDeclaration": 1544, - "src": "978:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", - "typeString": "struct CallResult" - } - }, - "id": 1568, - "nodeType": "ArrayTypeName", - "src": "978:12:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", - "typeString": "struct CallResult[]" - } - }, - "visibility": "internal" - } - ], - "src": "951:48:13" - }, - "src": "928:72:13" - }, - { - "anonymous": false, - "eventSelector": "88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874", - "id": 1577, - "name": "Received", - "nameLocation": "1011:8:13", - "nodeType": "EventDefinition", - "parameters": { - "id": 1576, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1573, - "indexed": true, - "mutability": "mutable", - "name": "sender", - "nameLocation": "1036:6:13", - "nodeType": "VariableDeclaration", - "scope": 1577, - "src": "1020:22:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1572, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1020:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1575, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1052:6:13", - "nodeType": "VariableDeclaration", - "scope": 1577, - "src": "1044:14:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1574, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1044:7:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1019:40:13" - }, - "src": "1005:55:13" - }, - { - "body": { - "id": 1598, - "nodeType": "Block", - "src": "1213:61:13", - "statements": [ - { - "expression": { - "id": 1596, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1592, - "name": "gasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1563, - "src": "1223:10:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1594, - "name": "gasReceiver_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1581, - "src": "1254:12:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1593, - "name": "IAxelarGasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "1236:17:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IAxelarGasService_$655_$", - "typeString": "type(contract IAxelarGasService)" - } - }, - "id": 1595, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1236:31:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "src": "1223:44:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "id": 1597, - "nodeType": "ExpressionStatement", - "src": "1223:44:13" - } - ] - }, - "id": 1599, - "implemented": true, - "kind": "constructor", - "modifiers": [ - { - "arguments": [ - { - "id": 1586, - "name": "gateway_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1579, - "src": "1187:8:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1587, - "kind": "baseConstructorSpecifier", - "modifierName": { - "id": 1585, - "name": "AxelarExecutable", - "nameLocations": [ - "1170:16:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 137, - "src": "1170:16:13" - }, - "nodeType": "ModifierInvocation", - "src": "1170:26:13" - }, - { - "arguments": [ - { - "id": 1589, - "name": "owner_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1583, - "src": "1205:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "id": 1590, - "kind": "baseConstructorSpecifier", - "modifierName": { - "id": 1588, - "name": "Ownable", - "nameLocations": [ - "1197:7:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2109, - "src": "1197:7:13" - }, - "nodeType": "ModifierInvocation", - "src": "1197:15:13" - } - ], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1584, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1579, - "mutability": "mutable", - "name": "gateway_", - "nameLocation": "1095:8:13", - "nodeType": "VariableDeclaration", - "scope": 1599, - "src": "1087:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1578, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1087:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1581, - "mutability": "mutable", - "name": "gasReceiver_", - "nameLocation": "1121:12:13", - "nodeType": "VariableDeclaration", - "scope": 1599, - "src": "1113:20:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1580, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1113:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1583, - "mutability": "mutable", - "name": "owner_", - "nameLocation": "1157:6:13", - "nodeType": "VariableDeclaration", - "scope": 1599, - "src": "1143:20:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1582, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1143:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1077:92:13" - }, - "returnParameters": { - "id": 1591, - "nodeType": "ParameterList", - "parameters": [], - "src": "1213:0:13" - }, - "scope": 1745, - "src": "1066:208:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1684, - "nodeType": "Block", - "src": "1377:518:13", - "statements": [ - { - "assignments": [ - 1612 - ], - "declarations": [ - { - "constant": false, - "id": 1612, - "mutability": "mutable", - "name": "calls", - "nameLocation": "1407:5:13", - "nodeType": "VariableDeclaration", - "scope": 1684, - "src": "1387:25:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallParams[]" - }, - "typeName": { - "baseType": { - "id": 1610, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1609, - "name": "CallParams", - "nameLocations": [ - "1387:10:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1556, - "src": "1387:10:13" - }, - "referencedDeclaration": 1556, - "src": "1387:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallParams_$1556_storage_ptr", - "typeString": "struct CallParams" - } - }, - "id": 1611, - "nodeType": "ArrayTypeName", - "src": "1387:12:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_storage_$dyn_storage_ptr", - "typeString": "struct CallParams[]" - } - }, - "visibility": "internal" - } - ], - "id": 1620, - "initialValue": { - "arguments": [ - { - "id": 1615, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1601, - "src": "1426:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "components": [ - { - "baseExpression": { - "id": 1616, - "name": "CallParams", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1556, - "src": "1436:10:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_CallParams_$1556_storage_ptr_$", - "typeString": "type(struct CallParams storage pointer)" - } - }, - "id": 1617, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1436:12:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr_$", - "typeString": "type(struct CallParams memory[] memory)" - } - } - ], - "id": 1618, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1435:14:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr_$", - "typeString": "type(struct CallParams memory[] memory)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_type$_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr_$", - "typeString": "type(struct CallParams memory[] memory)" - } - ], - "expression": { - "id": 1613, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "1415:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1614, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1419:6:13", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "1415:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1619, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1415:35:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallParams memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1387:63:13" - }, - { - "assignments": [ - 1625 - ], - "declarations": [ - { - "constant": false, - "id": 1625, - "mutability": "mutable", - "name": "results", - "nameLocation": "1481:7:13", - "nodeType": "VariableDeclaration", - "scope": 1684, - "src": "1461:27:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult[]" - }, - "typeName": { - "baseType": { - "id": 1623, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1622, - "name": "CallResult", - "nameLocations": [ - "1461:10:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1544, - "src": "1461:10:13" - }, - "referencedDeclaration": 1544, - "src": "1461:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", - "typeString": "struct CallResult" - } - }, - "id": 1624, - "nodeType": "ArrayTypeName", - "src": "1461:12:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", - "typeString": "struct CallResult[]" - } - }, - "visibility": "internal" - } - ], - "id": 1633, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 1630, - "name": "calls", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1612, - "src": "1508:5:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallParams memory[] memory" - } - }, - "id": 1631, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1514:6:13", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1508:12:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1629, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "1491:16:13", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct CallResult memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 1627, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1626, - "name": "CallResult", - "nameLocations": [ - "1495:10:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1544, - "src": "1495:10:13" - }, - "referencedDeclaration": 1544, - "src": "1495:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", - "typeString": "struct CallResult" - } - }, - "id": 1628, - "nodeType": "ArrayTypeName", - "src": "1495:12:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", - "typeString": "struct CallResult[]" - } - } - }, - "id": 1632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1491:30:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1461:60:13" - }, - { - "body": { - "id": 1674, - "nodeType": "Block", - "src": "1575:236:13", - "statements": [ - { - "assignments": [ - 1646, - 1648 - ], - "declarations": [ - { - "constant": false, - "id": 1646, - "mutability": "mutable", - "name": "success", - "nameLocation": "1595:7:13", - "nodeType": "VariableDeclaration", - "scope": 1674, - "src": "1590:12:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1645, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1590:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1648, - "mutability": "mutable", - "name": "result", - "nameLocation": "1617:6:13", - "nodeType": "VariableDeclaration", - "scope": 1674, - "src": "1604:19:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1647, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1604:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1659, - "initialValue": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 1654, - "name": "calls", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1612, - "src": "1665:5:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallParams memory[] memory" - } - }, - "id": 1656, - "indexExpression": { - "id": 1655, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "1671:1:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1665:8:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallParams_$1556_memory_ptr", - "typeString": "struct CallParams memory" - } - }, - "id": 1657, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1674:4:13", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 1555, - "src": "1665:13:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "expression": { - "baseExpression": { - "id": 1649, - "name": "calls", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1612, - "src": "1627:5:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallParams memory[] memory" - } - }, - "id": 1651, - "indexExpression": { - "id": 1650, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "1633:1:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1627:8:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallParams_$1556_memory_ptr", - "typeString": "struct CallParams memory" - } - }, - "id": 1652, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1636:6:13", - "memberName": "target", - "nodeType": "MemberAccess", - "referencedDeclaration": 1553, - "src": "1627:15:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1653, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1643:4:13", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "1627:20:13", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1658, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1627:65:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1589:103:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1661, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1646, - "src": "1714:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "436f6e74726163742063616c6c206661696c6564", - "id": 1662, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1723:22:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e", - "typeString": "literal_string \"Contract call failed\"" - }, - "value": "Contract call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e", - "typeString": "literal_string \"Contract call failed\"" - } - ], - "id": 1660, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "1706:7:13", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1663, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1706:40:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1664, - "nodeType": "ExpressionStatement", - "src": "1706:40:13" - }, - { - "expression": { - "id": 1672, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1665, - "name": "results", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1625, - "src": "1760:7:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - }, - "id": 1667, - "indexExpression": { - "id": 1666, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "1768:1:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1760:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", - "typeString": "struct CallResult memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1669, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1646, - "src": "1784:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 1670, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1648, - "src": "1793:6:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1668, - "name": "CallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1544, - "src": "1773:10:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_CallResult_$1544_storage_ptr_$", - "typeString": "type(struct CallResult storage pointer)" - } - }, - "id": 1671, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1773:27:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", - "typeString": "struct CallResult memory" - } - }, - "src": "1760:40:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", - "typeString": "struct CallResult memory" - } - }, - "id": 1673, - "nodeType": "ExpressionStatement", - "src": "1760:40:13" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1641, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1638, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "1552:1:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1639, - "name": "calls", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1612, - "src": "1556:5:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallParams memory[] memory" - } - }, - "id": 1640, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1562:6:13", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1556:12:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1552:16:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1675, - "initializationExpression": { - "assignments": [ - 1635 - ], - "declarations": [ - { - "constant": false, - "id": 1635, - "mutability": "mutable", - "name": "i", - "nameLocation": "1545:1:13", - "nodeType": "VariableDeclaration", - "scope": 1675, - "src": "1537:9:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1634, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1537:7:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1637, - "initialValue": { - "hexValue": "30", - "id": 1636, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1549:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1537:13:13" - }, - "loopExpression": { - "expression": { - "id": 1643, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "1570:3:13", - "subExpression": { - "id": 1642, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "1570:1:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1644, - "nodeType": "ExpressionStatement", - "src": "1570:3:13" - }, - "nodeType": "ForStatement", - "src": "1532:279:13" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1677, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "1844:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1678, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1848:6:13", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1844:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1679, - "name": "results", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1625, - "src": "1856:7:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - ], - "id": 1676, - "name": "MulticallExecuted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "1826:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$returns$__$", - "typeString": "function (address,struct CallResult memory[] memory)" - } - }, - "id": 1680, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1826:38:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1681, - "nodeType": "EmitStatement", - "src": "1821:43:13" - }, - { - "expression": { - "id": 1682, - "name": "results", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1625, - "src": "1881:7:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - }, - "functionReturnParameters": 1607, - "id": 1683, - "nodeType": "Return", - "src": "1874:14:13" - } - ] - }, - "id": 1685, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_multicall", - "nameLocation": "1289:10:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1602, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1601, - "mutability": "mutable", - "name": "payload", - "nameLocation": "1324:7:13", - "nodeType": "VariableDeclaration", - "scope": 1685, - "src": "1309:22:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1600, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1309:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1299:38:13" - }, - "returnParameters": { - "id": 1607, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1606, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1685, - "src": "1356:19:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult[]" - }, - "typeName": { - "baseType": { - "id": 1604, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1603, - "name": "CallResult", - "nameLocations": [ - "1356:10:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1544, - "src": "1356:10:13" - }, - "referencedDeclaration": 1544, - "src": "1356:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", - "typeString": "struct CallResult" - } - }, - "id": 1605, - "nodeType": "ArrayTypeName", - "src": "1356:12:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", - "typeString": "struct CallResult[]" - } - }, - "visibility": "internal" - } - ], - "src": "1355:21:13" - }, - "scope": 1745, - "src": "1280:615:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "baseFunctions": [ - 122 - ], - "body": { - "id": 1702, - "nodeType": "Block", - "src": "2080:36:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1699, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1691, - "src": "2101:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1698, - "name": "_multicall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1685, - "src": "2090:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_calldata_ptr_$returns$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (bytes calldata) returns (struct CallResult memory[] memory)" - } - }, - "id": 1700, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2090:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - }, - "id": 1701, - "nodeType": "ExpressionStatement", - "src": "2090:19:13" - } - ] - }, - "id": 1703, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 1695, - "name": "sourceAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1689, - "src": "2065:13:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "id": 1696, - "kind": "modifierInvocation", - "modifierName": { - "id": 1694, - "name": "onlyOwner", - "nameLocations": [ - "2055:9:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2016, - "src": "2055:9:13" - }, - "nodeType": "ModifierInvocation", - "src": "2055:24:13" - } - ], - "name": "_execute", - "nameLocation": "1910:8:13", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1693, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2046:8:13" - }, - "parameters": { - "id": 1692, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1687, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1703, - "src": "1928:15:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1686, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1928:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1689, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "1985:13:13", - "nodeType": "VariableDeclaration", - "scope": 1703, - "src": "1969:29:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1688, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1969:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1691, - "mutability": "mutable", - "name": "payload", - "nameLocation": "2023:7:13", - "nodeType": "VariableDeclaration", - "scope": 1703, - "src": "2008:22:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1690, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2008:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1918:118:13" - }, - "returnParameters": { - "id": 1697, - "nodeType": "ParameterList", - "parameters": [], - "src": "2080:0:13" - }, - "scope": 1745, - "src": "1901:215:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "baseFunctions": [ - 136 - ], - "body": { - "id": 1721, - "nodeType": "Block", - "src": "2358:36:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1718, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1709, - "src": "2379:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 1717, - "name": "_multicall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1685, - "src": "2368:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_calldata_ptr_$returns$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (bytes calldata) returns (struct CallResult memory[] memory)" - } - }, - "id": 1719, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2368:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - }, - "id": 1720, - "nodeType": "ExpressionStatement", - "src": "2368:19:13" - } - ] - }, - "id": 1722, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_executeWithToken", - "nameLocation": "2131:17:13", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1715, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2349:8:13" - }, - "parameters": { - "id": 1714, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1705, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1722, - "src": "2158:15:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1704, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2158:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1707, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1722, - "src": "2199:15:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1706, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2199:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1709, - "mutability": "mutable", - "name": "payload", - "nameLocation": "2257:7:13", - "nodeType": "VariableDeclaration", - "scope": 1722, - "src": "2242:22:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1708, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2242:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1711, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1722, - "src": "2274:15:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1710, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2274:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1713, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1722, - "src": "2315:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1712, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2315:7:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2148:191:13" - }, - "returnParameters": { - "id": 1716, - "nodeType": "ParameterList", - "parameters": [], - "src": "2358:0:13" - }, - "scope": 1745, - "src": "2122:272:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1732, - "nodeType": "Block", - "src": "2427:53:13", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1726, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2451:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1727, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2455:6:13", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2451:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1728, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2463:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1729, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2467:5:13", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "2463:9:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1725, - "name": "Received", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1577, - "src": "2442:8:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 1730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2442:31:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1731, - "nodeType": "EmitStatement", - "src": "2437:36:13" - } - ] - }, - "id": 1733, - "implemented": true, - "kind": "receive", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1723, - "nodeType": "ParameterList", - "parameters": [], - "src": "2407:2:13" - }, - "returnParameters": { - "id": 1724, - "nodeType": "ParameterList", - "parameters": [], - "src": "2427:0:13" - }, - "scope": 1745, - "src": "2400:80:13", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 1743, - "nodeType": "Block", - "src": "2514:53:13", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1737, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2538:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1738, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2542:6:13", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2538:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1739, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2550:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1740, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2554:5:13", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "2550:9:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1736, - "name": "Received", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1577, - "src": "2529:8:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 1741, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2529:31:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1742, - "nodeType": "EmitStatement", - "src": "2524:36:13" - } - ] - }, - "id": 1744, - "implemented": true, - "kind": "fallback", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1734, - "nodeType": "ParameterList", - "parameters": [], - "src": "2494:2:13" - }, - "returnParameters": { - "id": 1735, - "nodeType": "ParameterList", - "parameters": [], - "src": "2514:0:13" - }, - "scope": 1745, - "src": "2486:81:13", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1974, - "src": "835:1734:13", - "usedErrors": [ - 143, - 145, - 1983, - 1988 - ], - "usedEvents": [ - 1571, - 1577, - 1994 - ] - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1746, - "name": "AxelarExecutable", - "nameLocations": [ - "2595:16:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 137, - "src": "2595:16:13" - }, - "id": 1747, - "nodeType": "InheritanceSpecifier", - "src": "2595:16:13" - } - ], - "canonicalName": "AgoricProxy", - "contractDependencies": [ - 1745 - ], - "contractKind": "contract", - "fullyImplemented": true, - "id": 1973, - "linearizedBaseContracts": [ - 1973, - 137, - 178 - ], - "name": "AgoricProxy", - "nameLocation": "2580:11:13", - "nodeType": "ContractDefinition", - "nodes": [ - { - "global": false, - "id": 1750, - "libraryName": { - "id": 1748, - "name": "StringToAddress", - "nameLocations": [ - "2624:15:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1404, - "src": "2624:15:13" - }, - "nodeType": "UsingForDirective", - "src": "2618:33:13", - "typeName": { - "id": 1749, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2644:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - } - }, - { - "global": false, - "id": 1753, - "libraryName": { - "id": 1751, - "name": "AddressToString", - "nameLocations": [ - "2662:15:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1497, - "src": "2662:15:13" - }, - "nodeType": "UsingForDirective", - "src": "2656:34:13", - "typeName": { - "id": 1752, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2682:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - { - "constant": false, - "id": 1755, - "mutability": "mutable", - "name": "_gateway", - "nameLocation": "2704:8:13", - "nodeType": "VariableDeclaration", - "scope": 1973, - "src": "2696:16:13", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1754, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2696:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "functionSelector": "6a22d8cc", - "id": 1758, - "mutability": "immutable", - "name": "gasService", - "nameLocation": "2753:10:13", - "nodeType": "VariableDeclaration", - "scope": 1973, - "src": "2718:45:13", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - }, - "typeName": { - "id": 1757, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1756, - "name": "IAxelarGasService", - "nameLocations": [ - "2718:17:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 655, - "src": "2718:17:13" - }, - "referencedDeclaration": 655, - "src": "2718:17:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "1c93b03a", - "id": 1760, - "mutability": "mutable", - "name": "chainName", - "nameLocation": "2783:9:13", - "nodeType": "VariableDeclaration", - "scope": 1973, - "src": "2769:23:13", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 1759, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2769:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "public" - }, - { - "anonymous": false, - "eventSelector": "9281645ccd9d592d9f6456fd9b95f6d2e0d36ebcc2f387399d5ac2b7c7ad7e6e", - "id": 1770, - "name": "SmartWalletCreated", - "nameLocation": "2805:18:13", - "nodeType": "EventDefinition", - "parameters": { - "id": 1769, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1762, - "indexed": true, - "mutability": "mutable", - "name": "wallet", - "nameLocation": "2849:6:13", - "nodeType": "VariableDeclaration", - "scope": 1770, - "src": "2833:22:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1761, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2833:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1764, - "indexed": false, - "mutability": "mutable", - "name": "owner", - "nameLocation": "2872:5:13", - "nodeType": "VariableDeclaration", - "scope": 1770, - "src": "2865:12:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1763, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2865:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1766, - "indexed": false, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "2894:11:13", - "nodeType": "VariableDeclaration", - "scope": 1770, - "src": "2887:18:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1765, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2887:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1768, - "indexed": false, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "2922:13:13", - "nodeType": "VariableDeclaration", - "scope": 1770, - "src": "2915:20:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1767, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2915:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2823:118:13" - }, - "src": "2799:143:13" - }, - { - "anonymous": false, - "eventSelector": "ea1a07f81079879fea1a2eabafefd6f25bc76921237faf7fce963aeaa53c7ea1", - "id": 1778, - "name": "CrossChainCallSent", - "nameLocation": "2953:18:13", - "nodeType": "EventDefinition", - "parameters": { - "id": 1777, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1772, - "indexed": false, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "2988:16:13", - "nodeType": "VariableDeclaration", - "scope": 1778, - "src": "2981:23:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1771, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2981:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1774, - "indexed": false, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "3021:18:13", - "nodeType": "VariableDeclaration", - "scope": 1778, - "src": "3014:25:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1773, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3014:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1776, - "indexed": false, - "mutability": "mutable", - "name": "payload", - "nameLocation": "3055:7:13", - "nodeType": "VariableDeclaration", - "scope": 1778, - "src": "3049:13:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1775, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3049:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2971:97:13" - }, - "src": "2947:122:13" - }, - { - "anonymous": false, - "eventSelector": "88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874", - "id": 1784, - "name": "Received", - "nameLocation": "3080:8:13", - "nodeType": "EventDefinition", - "parameters": { - "id": 1783, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1780, - "indexed": true, - "mutability": "mutable", - "name": "sender", - "nameLocation": "3105:6:13", - "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "3089:22:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1779, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3089:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1782, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3121:6:13", - "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "3113:14:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1781, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3113:7:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3088:40:13" - }, - "src": "3074:55:13" - }, - { - "body": { - "id": 1810, - "nodeType": "Block", - "src": "3270:122:13", - "statements": [ - { - "expression": { - "id": 1800, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1796, - "name": "gasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1758, - "src": "3280:10:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 1798, - "name": "gasReceiver_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1788, - "src": "3311:12:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1797, - "name": "IAxelarGasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "3293:17:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IAxelarGasService_$655_$", - "typeString": "type(contract IAxelarGasService)" - } - }, - "id": 1799, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3293:31:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "src": "3280:44:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "id": 1801, - "nodeType": "ExpressionStatement", - "src": "3280:44:13" - }, - { - "expression": { - "id": 1804, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1802, - "name": "_gateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1755, - "src": "3334:8:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1803, - "name": "gateway_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1786, - "src": "3345:8:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3334:19:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1805, - "nodeType": "ExpressionStatement", - "src": "3334:19:13" - }, - { - "expression": { - "id": 1808, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1806, - "name": "chainName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1760, - "src": "3363:9:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1807, - "name": "chainName_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1790, - "src": "3375:10:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "3363:22:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1809, - "nodeType": "ExpressionStatement", - "src": "3363:22:13" - } - ] - }, - "id": 1811, - "implemented": true, - "kind": "constructor", - "modifiers": [ - { - "arguments": [ - { - "id": 1793, - "name": "gateway_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1786, - "src": "3260:8:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 1794, - "kind": "baseConstructorSpecifier", - "modifierName": { - "id": 1792, - "name": "AxelarExecutable", - "nameLocations": [ - "3243:16:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 137, - "src": "3243:16:13" - }, - "nodeType": "ModifierInvocation", - "src": "3243:26:13" - } - ], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1791, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1786, - "mutability": "mutable", - "name": "gateway_", - "nameLocation": "3164:8:13", - "nodeType": "VariableDeclaration", - "scope": 1811, - "src": "3156:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1785, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3156:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1788, - "mutability": "mutable", - "name": "gasReceiver_", - "nameLocation": "3190:12:13", - "nodeType": "VariableDeclaration", - "scope": 1811, - "src": "3182:20:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1787, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3182:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1790, - "mutability": "mutable", - "name": "chainName_", - "nameLocation": "3226:10:13", - "nodeType": "VariableDeclaration", - "scope": 1811, - "src": "3212:24:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1789, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3212:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3146:96:13" - }, - "returnParameters": { - "id": 1795, - "nodeType": "ParameterList", - "parameters": [], - "src": "3270:0:13" - }, - "scope": 1973, - "src": "3135:257:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1836, - "nodeType": "Block", - "src": "3471:142:13", - "statements": [ - { - "assignments": [ - 1819 - ], - "declarations": [ - { - "constant": false, - "id": 1819, - "mutability": "mutable", - "name": "newWallet", - "nameLocation": "3489:9:13", - "nodeType": "VariableDeclaration", - "scope": 1836, - "src": "3481:17:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1818, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3481:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1833, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "id": 1825, - "name": "_gateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1755, - "src": "3533:8:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 1828, - "name": "gasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1758, - "src": "3551:10:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - ], - "id": 1827, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3543:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1826, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3543:7:13", - "typeDescriptions": {} - } - }, - "id": 1829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3543:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1830, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1813, - "src": "3564:5:13", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "3522:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$_t_address_$_t_address_$_t_string_memory_ptr_$returns$_t_contract$_Wallet_$1745_$", - "typeString": "function (address,address,string memory) returns (contract Wallet)" - }, - "typeName": { - "id": 1823, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1822, - "name": "Wallet", - "nameLocations": [ - "3526:6:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1745, - "src": "3526:6:13" - }, - "referencedDeclaration": 1745, - "src": "3526:6:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Wallet_$1745", - "typeString": "contract Wallet" - } - } - }, - "id": 1831, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3522:48:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_Wallet_$1745", - "typeString": "contract Wallet" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Wallet_$1745", - "typeString": "contract Wallet" - } - ], - "id": 1821, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3501:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1820, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3501:7:13", - "typeDescriptions": {} - } - }, - "id": 1832, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3501:79:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3481:99:13" - }, - { - "expression": { - "id": 1834, - "name": "newWallet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1819, - "src": "3597:9:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1817, - "id": 1835, - "nodeType": "Return", - "src": "3590:16:13" - } - ] - }, - "functionSelector": "5e8846f6", - "id": 1837, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "createSmartWallet", - "nameLocation": "3407:17:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1814, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1813, - "mutability": "mutable", - "name": "owner", - "nameLocation": "3439:5:13", - "nodeType": "VariableDeclaration", - "scope": 1837, - "src": "3425:19:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1812, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3425:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3424:21:13" - }, - "returnParameters": { - "id": 1817, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1816, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1837, - "src": "3462:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1815, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3462:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3461:9:13" - }, - "scope": 1973, - "src": "3398:215:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "baseFunctions": [ - 122 - ], - "body": { - "id": 1907, - "nodeType": "Block", - "src": "3773:569:13", - "statements": [ - { - "assignments": [ - 1848 - ], - "declarations": [ - { - "constant": false, - "id": 1848, - "mutability": "mutable", - "name": "smartWalletAddress", - "nameLocation": "3791:18:13", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "3783:26:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1847, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3783:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1852, - "initialValue": { - "arguments": [ - { - "id": 1850, - "name": "sourceAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1841, - "src": "3830:13:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1849, - "name": "createSmartWallet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1837, - "src": "3812:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) returns (address)" - } - }, - "id": 1851, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3812:32:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3783:61:13" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1854, - "name": "smartWalletAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1848, - "src": "3891:18:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1855, - "name": "sourceAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1841, - "src": "3923:13:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1856, - "name": "sourceChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1839, - "src": "3950:11:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1857, - "name": "sourceAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1841, - "src": "3975:13:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 1853, - "name": "SmartWalletCreated", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1770, - "src": "3859:18:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory,string memory)" - } - }, - "id": 1858, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3859:139:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1859, - "nodeType": "EmitStatement", - "src": "3854:144:13" - }, - { - "assignments": [ - 1864 - ], - "declarations": [ - { - "constant": false, - "id": 1864, - "mutability": "mutable", - "name": "results", - "nameLocation": "4028:7:13", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "4008:27:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult[]" - }, - "typeName": { - "baseType": { - "id": 1862, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1861, - "name": "CallResult", - "nameLocations": [ - "4008:10:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1544, - "src": "4008:10:13" - }, - "referencedDeclaration": 1544, - "src": "4008:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", - "typeString": "struct CallResult" - } - }, - "id": 1863, - "nodeType": "ArrayTypeName", - "src": "4008:12:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", - "typeString": "struct CallResult[]" - } - }, - "visibility": "internal" - } - ], - "id": 1871, - "initialValue": { - "arguments": [ - { - "hexValue": "31", - "id": 1869, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4055:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - } - ], - "id": 1868, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "4038:16:13", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct CallResult memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 1866, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1865, - "name": "CallResult", - "nameLocations": [ - "4042:10:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1544, - "src": "4042:10:13" - }, - "referencedDeclaration": 1544, - "src": "4042:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_storage_ptr", - "typeString": "struct CallResult" - } - }, - "id": 1867, - "nodeType": "ArrayTypeName", - "src": "4042:12:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_storage_$dyn_storage_ptr", - "typeString": "struct CallResult[]" - } - } - }, - "id": 1870, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4038:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4008:49:13" - }, - { - "expression": { - "id": 1882, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1872, - "name": "results", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1864, - "src": "4068:7:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - }, - "id": 1874, - "indexExpression": { - "hexValue": "30", - "id": 1873, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4076:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "4068:10:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", - "typeString": "struct CallResult memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "hexValue": "74727565", - "id": 1876, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4092:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "arguments": [ - { - "id": 1879, - "name": "smartWalletAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1848, - "src": "4109:18:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1877, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "4098:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1878, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4102:6:13", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "4098:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1880, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4098:30:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1875, - "name": "CallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1544, - "src": "4081:10:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_CallResult_$1544_storage_ptr_$", - "typeString": "type(struct CallResult storage pointer)" - } - }, - "id": 1881, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4081:48:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", - "typeString": "struct CallResult memory" - } - }, - "src": "4068:61:13", - "typeDescriptions": { - "typeIdentifier": "t_struct$_CallResult_$1544_memory_ptr", - "typeString": "struct CallResult memory" - } - }, - "id": 1883, - "nodeType": "ExpressionStatement", - "src": "4068:61:13" - }, - { - "assignments": [ - 1885 - ], - "declarations": [ - { - "constant": false, - "id": 1885, - "mutability": "mutable", - "name": "msgPayload", - "nameLocation": "4153:10:13", - "nodeType": "VariableDeclaration", - "scope": 1907, - "src": "4140:23:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1884, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4140:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1900, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30783030303030303030", - "id": 1890, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4203:10:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00000000" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1889, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4196:6:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes4_$", - "typeString": "type(bytes4)" - }, - "typeName": { - "id": 1888, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "4196:6:13", - "typeDescriptions": {} - } - }, - "id": 1891, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4196:18:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "arguments": [ - { - "arguments": [ - { - "hexValue": "66616c7365", - "id": 1895, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4254:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "id": 1896, - "name": "results", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1864, - "src": "4261:7:13", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr", - "typeString": "struct CallResult memory[] memory" - } - ], - "id": 1894, - "name": "AgoricResponse", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1551, - "src": "4239:14:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_AgoricResponse_$1551_storage_ptr_$", - "typeString": "type(struct AgoricResponse storage pointer)" - } - }, - "id": 1897, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4239:30:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AgoricResponse_$1551_memory_ptr", - "typeString": "struct AgoricResponse memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_AgoricResponse_$1551_memory_ptr", - "typeString": "struct AgoricResponse memory" - } - ], - "expression": { - "id": 1892, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "4228:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1893, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4232:6:13", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "4228:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1898, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4228:42:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1886, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "4166:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1887, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4170:12:13", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "4166:16:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1899, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4166:114:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4140:140:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1902, - "name": "sourceChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1839, - "src": "4296:11:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1903, - "name": "sourceAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1841, - "src": "4309:13:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1904, - "name": "msgPayload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1885, - "src": "4324:10:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1901, - "name": "_send", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1950, - "src": "4290:5:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_calldata_ptr_$_t_string_calldata_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (string calldata,string calldata,bytes memory)" - } - }, - "id": 1905, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4290:45:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1906, - "nodeType": "ExpressionStatement", - "src": "4290:45:13" - } - ] - }, - "id": 1908, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_execute", - "nameLocation": "3628:8:13", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1845, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3764:8:13" - }, - "parameters": { - "id": 1844, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1839, - "mutability": "mutable", - "name": "sourceChain", - "nameLocation": "3662:11:13", - "nodeType": "VariableDeclaration", - "scope": 1908, - "src": "3646:27:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1838, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3646:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1841, - "mutability": "mutable", - "name": "sourceAddress", - "nameLocation": "3699:13:13", - "nodeType": "VariableDeclaration", - "scope": 1908, - "src": "3683:29:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1840, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3683:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1843, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1908, - "src": "3722:14:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1842, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3722:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3636:118:13" - }, - "returnParameters": { - "id": 1846, - "nodeType": "ParameterList", - "parameters": [], - "src": "3773:0:13" - }, - "scope": 1973, - "src": "3619:723:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1949, - "nodeType": "Block", - "src": "4494:385:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1924, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "4589:4:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AgoricProxy_$1973", - "typeString": "contract AgoricProxy" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_AgoricProxy_$1973", - "typeString": "contract AgoricProxy" - } - ], - "id": 1923, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4581:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1922, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4581:7:13", - "typeDescriptions": {} - } - }, - "id": 1925, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4581:13:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1926, - "name": "destinationChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1910, - "src": "4608:16:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1927, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1912, - "src": "4638:18:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1928, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1914, - "src": "4670:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "arguments": [ - { - "id": 1931, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "4699:4:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AgoricProxy_$1973", - "typeString": "contract AgoricProxy" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_AgoricProxy_$1973", - "typeString": "contract AgoricProxy" - } - ], - "id": 1930, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4691:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1929, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4691:7:13", - "typeDescriptions": {} - } - }, - "id": 1932, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4691:13:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1917, - "name": "gasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1758, - "src": "4504:10:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "id": 1919, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4515:27:13", - "memberName": "payNativeGasForContractCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 473, - "src": "4504:38:13", - "typeDescriptions": { - "typeIdentifier": "t_function_external_payable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (address,string memory,string memory,bytes memory,address) payable external" - } - }, - "id": 1921, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "hexValue": "31303030303030303030303030303030", - "id": 1920, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4550:16:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_1000000000000000_by_1", - "typeString": "int_const 1000000000000000" - }, - "value": "1000000000000000" - } - ], - "src": "4504:63:13", - "typeDescriptions": { - "typeIdentifier": "t_function_external_payable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$value", - "typeString": "function (address,string memory,string memory,bytes memory,address) payable external" - } - }, - "id": 1933, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4504:210:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1934, - "nodeType": "ExpressionStatement", - "src": "4504:210:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1938, - "name": "destinationChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1910, - "src": "4746:16:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1939, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1912, - "src": "4764:18:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1940, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1914, - "src": "4784:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1935, - "name": "gateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10, - "src": "4725:7:13", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - } - }, - "id": 1937, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4733:12:13", - "memberName": "callContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 835, - "src": "4725:20:13", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory,bytes memory) external" - } - }, - "id": 1941, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4725:67:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1942, - "nodeType": "ExpressionStatement", - "src": "4725:67:13" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1944, - "name": "destinationChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1910, - "src": "4826:16:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1945, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1912, - "src": "4844:18:13", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 1946, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1914, - "src": "4864:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1943, - "name": "CrossChainCallSent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1778, - "src": "4807:18:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory,bytes memory)" - } - }, - "id": 1947, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4807:65:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1948, - "nodeType": "EmitStatement", - "src": "4802:70:13" - } - ] - }, - "id": 1950, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_send", - "nameLocation": "4357:5:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1915, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1910, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "4388:16:13", - "nodeType": "VariableDeclaration", - "scope": 1950, - "src": "4372:32:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1909, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4372:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1912, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "4430:18:13", - "nodeType": "VariableDeclaration", - "scope": 1950, - "src": "4414:34:13", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1911, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4414:6:13", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1914, - "mutability": "mutable", - "name": "payload", - "nameLocation": "4471:7:13", - "nodeType": "VariableDeclaration", - "scope": 1950, - "src": "4458:20:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1913, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4458:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4362:122:13" - }, - "returnParameters": { - "id": 1916, - "nodeType": "ParameterList", - "parameters": [], - "src": "4494:0:13" - }, - "scope": 1973, - "src": "4348:531:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1960, - "nodeType": "Block", - "src": "4912:53:13", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1954, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "4936:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1955, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4940:6:13", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4936:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1956, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "4948:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1957, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4952:5:13", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "4948:9:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1953, - "name": "Received", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1784, - "src": "4927:8:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 1958, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4927:31:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1959, - "nodeType": "EmitStatement", - "src": "4922:36:13" - } - ] - }, - "id": 1961, - "implemented": true, - "kind": "receive", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1951, - "nodeType": "ParameterList", - "parameters": [], - "src": "4892:2:13" - }, - "returnParameters": { - "id": 1952, - "nodeType": "ParameterList", - "parameters": [], - "src": "4912:0:13" - }, - "scope": 1973, - "src": "4885:80:13", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 1971, - "nodeType": "Block", - "src": "4999:53:13", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 1965, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5023:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1966, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5027:6:13", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5023:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 1967, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "5035:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1968, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5039:5:13", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "5035:9:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1964, - "name": "Received", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1784, - "src": "5014:8:13", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 1969, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5014:31:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1970, - "nodeType": "EmitStatement", - "src": "5009:36:13" - } - ] - }, - "id": 1972, - "implemented": true, - "kind": "fallback", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1962, - "nodeType": "ParameterList", - "parameters": [], - "src": "4979:2:13" - }, - "returnParameters": { - "id": 1963, - "nodeType": "ParameterList", - "parameters": [], - "src": "4999:0:13" - }, - "scope": 1973, - "src": "4971:81:13", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1974, - "src": "2571:2483:13", - "usedErrors": [ - 143, - 145 - ], - "usedEvents": [ - 1770, - 1778, - 1784 - ] - } - ], - "src": "39:5016:13" - }, - "id": 13 - }, - "src/__tests__/contracts/Ownable.sol": { - "ast": { - "absolutePath": "src/__tests__/contracts/Ownable.sol", - "exportedSymbols": { - "Ownable": [ - 2109 - ] - }, - "id": 2110, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1975, - "literals": [ - "solidity", - "^", - "0.8", - ".20" - ], - "nodeType": "PragmaDirective", - "src": "102:24:14" - }, - { - "abstract": true, - "baseContracts": [], - "canonicalName": "Ownable", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1976, - "nodeType": "StructuredDocumentation", - "src": "128:487:14", - "text": " @dev Contract module which provides a basic access control mechanism, where\n there is an account (an owner) that can be granted exclusive access to\n specific functions.\n The initial owner is set to the address provided by the deployer. This can\n later be changed with {transferOwnership}.\n This module is used through inheritance. It will make available the modifier\n `onlyOwner`, which can be applied to your functions to restrict their use to\n the owner." - }, - "fullyImplemented": true, - "id": 2109, - "linearizedBaseContracts": [ - 2109 - ], - "name": "Ownable", - "nameLocation": "634:7:14", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 1978, - "mutability": "mutable", - "name": "_owner", - "nameLocation": "663:6:14", - "nodeType": "VariableDeclaration", - "scope": 2109, - "src": "648:21:14", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 1977, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "648:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "private" - }, - { - "documentation": { - "id": 1979, - "nodeType": "StructuredDocumentation", - "src": "676:85:14", - "text": " @dev The caller account is not authorized to perform an operation." - }, - "errorSelector": "de6a3cbf", - "id": 1983, - "name": "OwnableUnauthorizedAccount", - "nameLocation": "772:26:14", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1982, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1981, - "mutability": "mutable", - "name": "account", - "nameLocation": "806:7:14", - "nodeType": "VariableDeclaration", - "scope": 1983, - "src": "799:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1980, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "799:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "798:16:14" - }, - "src": "766:49:14" - }, - { - "documentation": { - "id": 1984, - "nodeType": "StructuredDocumentation", - "src": "821:82:14", - "text": " @dev The owner is not a valid owner account. (eg. `address(0)`)" - }, - "errorSelector": "0defb781", - "id": 1988, - "name": "OwnableInvalidOwner", - "nameLocation": "914:19:14", - "nodeType": "ErrorDefinition", - "parameters": { - "id": 1987, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1986, - "mutability": "mutable", - "name": "owner", - "nameLocation": "941:5:14", - "nodeType": "VariableDeclaration", - "scope": 1988, - "src": "934:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1985, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "934:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "933:14:14" - }, - "src": "908:40:14" - }, - { - "anonymous": false, - "eventSelector": "389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d", - "id": 1994, - "name": "OwnershipTransferred", - "nameLocation": "960:20:14", - "nodeType": "EventDefinition", - "parameters": { - "id": 1993, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1990, - "indexed": true, - "mutability": "mutable", - "name": "previousOwner", - "nameLocation": "1005:13:14", - "nodeType": "VariableDeclaration", - "scope": 1994, - "src": "990:28:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1989, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "990:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1992, - "indexed": true, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "1043:8:14", - "nodeType": "VariableDeclaration", - "scope": 1994, - "src": "1028:23:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1991, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1028:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "980:77:14" - }, - "src": "954:104:14" - }, - { - "body": { - "id": 2004, - "nodeType": "Block", - "src": "1224:162:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2001, - "name": "initialOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1997, - "src": "1366:12:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2000, - "name": "_transferOwnership", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2108, - "src": "1347:18:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 2002, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1347:32:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2003, - "nodeType": "ExpressionStatement", - "src": "1347:32:14" - } - ] - }, - "documentation": { - "id": 1995, - "nodeType": "StructuredDocumentation", - "src": "1064:115:14", - "text": " @dev Initializes the contract setting the address provided by the deployer as the initial owner." - }, - "id": 2005, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1998, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1997, - "mutability": "mutable", - "name": "initialOwner", - "nameLocation": "1210:12:14", - "nodeType": "VariableDeclaration", - "scope": 2005, - "src": "1196:26:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1996, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1196:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1195:28:14" - }, - "returnParameters": { - "id": 1999, - "nodeType": "ParameterList", - "parameters": [], - "src": "1224:0:14" - }, - "scope": 2109, - "src": "1184:202:14", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2015, - "nodeType": "Block", - "src": "1526:56:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2011, - "name": "incomingAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2008, - "src": "1548:15:14", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 2010, - "name": "_checkOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2052, - "src": "1536:11:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_string_calldata_ptr_$returns$__$", - "typeString": "function (string calldata) view" - } - }, - "id": 2012, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1536:28:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2013, - "nodeType": "ExpressionStatement", - "src": "1536:28:14" - }, - { - "id": 2014, - "nodeType": "PlaceholderStatement", - "src": "1574:1:14" - } - ] - }, - "documentation": { - "id": 2006, - "nodeType": "StructuredDocumentation", - "src": "1392:77:14", - "text": " @dev Throws if called by any account other than the owner." - }, - "id": 2016, - "name": "onlyOwner", - "nameLocation": "1483:9:14", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 2009, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2008, - "mutability": "mutable", - "name": "incomingAddress", - "nameLocation": "1509:15:14", - "nodeType": "VariableDeclaration", - "scope": 2016, - "src": "1493:31:14", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2007, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1493:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1492:33:14" - }, - "src": "1474:108:14", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2024, - "nodeType": "Block", - "src": "1719:30:14", - "statements": [ - { - "expression": { - "id": 2022, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1978, - "src": "1736:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "functionReturnParameters": 2021, - "id": 2023, - "nodeType": "Return", - "src": "1729:13:14" - } - ] - }, - "documentation": { - "id": 2017, - "nodeType": "StructuredDocumentation", - "src": "1588:65:14", - "text": " @dev Returns the address of the current owner." - }, - "functionSelector": "8da5cb5b", - "id": 2025, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "owner", - "nameLocation": "1667:5:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2018, - "nodeType": "ParameterList", - "parameters": [], - "src": "1672:2:14" - }, - "returnParameters": { - "id": 2021, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2020, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2025, - "src": "1704:13:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2019, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1704:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1703:15:14" - }, - "scope": 2109, - "src": "1658:91:14", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 2051, - "nodeType": "Block", - "src": "1912:159:14", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 2044, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2034, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2025, - "src": "1942:5:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_string_memory_ptr_$", - "typeString": "function () view returns (string memory)" - } - }, - "id": 2035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1942:7:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2033, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1936:5:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 2032, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1936:5:14", - "typeDescriptions": {} - } - }, - "id": 2036, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1936:14:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2031, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "1926:9:14", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 2037, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1926:25:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 2041, - "name": "incomingAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2028, - "src": "1971:15:14", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 2040, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1965:5:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 2039, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1965:5:14", - "typeDescriptions": {} - } - }, - "id": 2042, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1965:22:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2038, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "1955:9:14", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 2043, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1955:33:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "1926:62:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2050, - "nodeType": "IfStatement", - "src": "1922:143:14", - "trueBody": { - "id": 2049, - "nodeType": "Block", - "src": "1990:75:14", - "statements": [ - { - "errorCall": { - "arguments": [ - { - "id": 2046, - "name": "incomingAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2028, - "src": "2038:15:14", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 2045, - "name": "OwnableUnauthorizedAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1983, - "src": "2011:26:14", - "typeDescriptions": { - "typeIdentifier": "t_function_error_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 2047, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2011:43:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2048, - "nodeType": "RevertStatement", - "src": "2004:50:14" - } - ] - } - } - ] - }, - "documentation": { - "id": 2026, - "nodeType": "StructuredDocumentation", - "src": "1755:62:14", - "text": " @dev Throws if the sender is not the owner." - }, - "id": 2052, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_checkOwner", - "nameLocation": "1831:11:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2029, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2028, - "mutability": "mutable", - "name": "incomingAddress", - "nameLocation": "1868:15:14", - "nodeType": "VariableDeclaration", - "scope": 2052, - "src": "1852:31:14", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2027, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1852:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1842:47:14" - }, - "returnParameters": { - "id": 2030, - "nodeType": "ParameterList", - "parameters": [], - "src": "1912:0:14" - }, - "scope": 2109, - "src": "1822:249:14", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 2071, - "nodeType": "Block", - "src": "2516:159:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "hexValue": "307830303030303030303030303030303030303030303030303030303030303030303030303030303030", - "id": 2066, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2599:44:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a", - "typeString": "literal_string \"0x0000000000000000000000000000000000000000\"" - }, - "value": "0x0000000000000000000000000000000000000000" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a", - "typeString": "literal_string \"0x0000000000000000000000000000000000000000\"" - } - ], - "expression": { - "id": 2064, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2582:3:14", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2065, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "2586:12:14", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "2582:16:14", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 2067, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2582:62:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2063, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2558:6:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 2062, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2558:6:14", - "typeDescriptions": {} - } - }, - "id": 2068, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2558:100:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2061, - "name": "_transferOwnership", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2108, - "src": "2526:18:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 2069, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2526:142:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2070, - "nodeType": "ExpressionStatement", - "src": "2526:142:14" - } - ] - }, - "documentation": { - "id": 2053, - "nodeType": "StructuredDocumentation", - "src": "2077:324:14", - "text": " @dev Leaves the contract without owner. It will not be possible to call\n `onlyOwner` functions. Can only be called by the current owner.\n NOTE: Renouncing ownership will leave the contract without an owner,\n thereby disabling any functionality that is only available to the owner." - }, - "functionSelector": "4fdb7f44", - "id": 2072, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 2058, - "name": "currentOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2055, - "src": "2502:12:14", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "id": 2059, - "kind": "modifierInvocation", - "modifierName": { - "id": 2057, - "name": "onlyOwner", - "nameLocations": [ - "2492:9:14" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2016, - "src": "2492:9:14" - }, - "nodeType": "ModifierInvocation", - "src": "2492:23:14" - } - ], - "name": "renounceOwnership", - "nameLocation": "2415:17:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2056, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2055, - "mutability": "mutable", - "name": "currentOwner", - "nameLocation": "2458:12:14", - "nodeType": "VariableDeclaration", - "scope": 2072, - "src": "2442:28:14", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2054, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2442:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2432:44:14" - }, - "returnParameters": { - "id": 2060, - "nodeType": "ParameterList", - "parameters": [], - "src": "2516:0:14" - }, - "scope": 2109, - "src": "2406:269:14", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 2087, - "nodeType": "Block", - "src": "2960:154:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2084, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2077, - "src": "3098:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "id": 2083, - "name": "_transferOwnership", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2108, - "src": "3079:18:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 2085, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3079:28:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2086, - "nodeType": "ExpressionStatement", - "src": "3079:28:14" - } - ] - }, - "documentation": { - "id": 2073, - "nodeType": "StructuredDocumentation", - "src": "2681:138:14", - "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner." - }, - "functionSelector": "268ca07e", - "id": 2088, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 2080, - "name": "oldOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2075, - "src": "2950:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "id": 2081, - "kind": "modifierInvocation", - "modifierName": { - "id": 2079, - "name": "onlyOwner", - "nameLocations": [ - "2940:9:14" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2016, - "src": "2940:9:14" - }, - "nodeType": "ModifierInvocation", - "src": "2940:19:14" - } - ], - "name": "transferOwnership", - "nameLocation": "2833:17:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2078, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2075, - "mutability": "mutable", - "name": "oldOwner", - "nameLocation": "2876:8:14", - "nodeType": "VariableDeclaration", - "scope": 2088, - "src": "2860:24:14", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2074, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2860:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2077, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "2910:8:14", - "nodeType": "VariableDeclaration", - "scope": 2088, - "src": "2894:24:14", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2076, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2894:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2850:74:14" - }, - "returnParameters": { - "id": 2082, - "nodeType": "ParameterList", - "parameters": [], - "src": "2960:0:14" - }, - "scope": 2109, - "src": "2824:290:14", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 2107, - "nodeType": "Block", - "src": "3337:130:14", - "statements": [ - { - "assignments": [ - 2095 - ], - "declarations": [ - { - "constant": false, - "id": 2095, - "mutability": "mutable", - "name": "oldOwner", - "nameLocation": "3361:8:14", - "nodeType": "VariableDeclaration", - "scope": 2107, - "src": "3347:22:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2094, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3347:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 2097, - "initialValue": { - "id": 2096, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1978, - "src": "3372:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3347:31:14" - }, - { - "expression": { - "id": 2100, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2098, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1978, - "src": "3388:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2099, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2091, - "src": "3397:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "3388:17:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 2101, - "nodeType": "ExpressionStatement", - "src": "3388:17:14" - }, - { - "eventCall": { - "arguments": [ - { - "id": 2103, - "name": "oldOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2095, - "src": "3441:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 2104, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2091, - "src": "3451:8:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2102, - "name": "OwnershipTransferred", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1994, - "src": "3420:20:14", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 2105, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3420:40:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2106, - "nodeType": "EmitStatement", - "src": "3415:45:14" - } - ] - }, - "documentation": { - "id": 2089, - "nodeType": "StructuredDocumentation", - "src": "3120:143:14", - "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Internal function without access restriction." - }, - "id": 2108, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_transferOwnership", - "nameLocation": "3277:18:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2092, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2091, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "3310:8:14", - "nodeType": "VariableDeclaration", - "scope": 2108, - "src": "3296:22:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2090, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3296:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3295:24:14" - }, - "returnParameters": { - "id": 2093, - "nodeType": "ParameterList", - "parameters": [], - "src": "3337:0:14" - }, - "scope": 2109, - "src": "3268:199:14", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 2110, - "src": "616:2853:14", - "usedErrors": [ - 1983, - 1988 - ], - "usedEvents": [ - 1994 - ] - } - ], - "src": "102:3368:14" - }, - "id": 14 - }, - "src/__tests__/contracts/SendReceive.sol": { - "ast": { - "absolutePath": "src/__tests__/contracts/SendReceive.sol", - "exportedSymbols": { - "AddressToString": [ - 1497 - ], - "AxelarExecutable": [ - 137 - ], - "IAxelarGasService": [ - 655 - ], - "IAxelarGateway": [ - 991 - ], - "SendReceive": [ - 2351 - ], - "StringToAddress": [ - 1404 - ] - }, - "id": 2352, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2111, - "literals": [ - "solidity", - "^", - "0.8", - ".9" - ], - "nodeType": "PragmaDirective", - "src": "32:23:15" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", - "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol", - "id": 2113, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 2352, - "sourceUnit": 138, - "src": "57:115:15", - "symbolAliases": [ - { - "foreign": { - "id": 2112, - "name": "AxelarExecutable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 137, - "src": "65:16:15", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", - "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol", - "id": 2115, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 2352, - "sourceUnit": 992, - "src": "173:111:15", - "symbolAliases": [ - { - "foreign": { - "id": 2114, - "name": "IAxelarGateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 991, - "src": "181:14:15", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", - "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol", - "id": 2117, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 2352, - "sourceUnit": 656, - "src": "285:117:15", - "symbolAliases": [ - { - "foreign": { - "id": 2116, - "name": "IAxelarGasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "293:17:15", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "absolutePath": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", - "file": "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol", - "id": 2120, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 2352, - "sourceUnit": 1498, - "src": "403:122:15", - "symbolAliases": [ - { - "foreign": { - "id": 2118, - "name": "StringToAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1404, - "src": "411:15:15", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - }, - { - "foreign": { - "id": 2119, - "name": "AddressToString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1497, - "src": "428:15:15", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 2121, - "name": "AxelarExecutable", - "nameLocations": [ - "551:16:15" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 137, - "src": "551:16:15" - }, - "id": 2122, - "nodeType": "InheritanceSpecifier", - "src": "551:16:15" - } - ], - "canonicalName": "SendReceive", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 2351, - "linearizedBaseContracts": [ - 2351, - 137, - 178 - ], - "name": "SendReceive", - "nameLocation": "536:11:15", - "nodeType": "ContractDefinition", - "nodes": [ - { - "global": false, - "id": 2125, - "libraryName": { - "id": 2123, - "name": "StringToAddress", - "nameLocations": [ - "580:15:15" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1404, - "src": "580:15:15" - }, - "nodeType": "UsingForDirective", - "src": "574:33:15", - "typeName": { - "id": 2124, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "600:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - } - }, - { - "global": false, - "id": 2128, - "libraryName": { - "id": 2126, - "name": "AddressToString", - "nameLocations": [ - "618:15:15" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1497, - "src": "618:15:15" - }, - "nodeType": "UsingForDirective", - "src": "612:34:15", - "typeName": { - "id": 2127, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "638:7:15", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - { - "constant": false, - "functionSelector": "6a22d8cc", - "id": 2131, - "mutability": "immutable", - "name": "gasService", - "nameLocation": "687:10:15", - "nodeType": "VariableDeclaration", - "scope": 2351, - "src": "652:45:15", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - }, - "typeName": { - "id": 2130, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2129, - "name": "IAxelarGasService", - "nameLocations": [ - "652:17:15" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 655, - "src": "652:17:15" - }, - "referencedDeclaration": 655, - "src": "652:17:15", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "1c93b03a", - "id": 2133, - "mutability": "mutable", - "name": "chainName", - "nameLocation": "717:9:15", - "nodeType": "VariableDeclaration", - "scope": 2351, - "src": "703:23:15", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 2132, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "703:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "public" - }, - { - "canonicalName": "SendReceive.Message", - "id": 2138, - "members": [ - { - "constant": false, - "id": 2135, - "mutability": "mutable", - "name": "sender", - "nameLocation": "815:6:15", - "nodeType": "VariableDeclaration", - "scope": 2138, - "src": "808:13:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2134, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "808:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2137, - "mutability": "mutable", - "name": "message", - "nameLocation": "838:7:15", - "nodeType": "VariableDeclaration", - "scope": 2138, - "src": "831:14:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2136, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "831:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "name": "Message", - "nameLocation": "790:7:15", - "nodeType": "StructDefinition", - "scope": 2351, - "src": "783:69:15", - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "b2f6cbbe", - "id": 2141, - "mutability": "mutable", - "name": "storedMessage", - "nameLocation": "873:13:15", - "nodeType": "VariableDeclaration", - "scope": 2351, - "src": "858:28:15", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Message_$2138_storage", - "typeString": "struct SendReceive.Message" - }, - "typeName": { - "id": 2140, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2139, - "name": "Message", - "nameLocations": [ - "858:7:15" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2138, - "src": "858:7:15" - }, - "referencedDeclaration": 2138, - "src": "858:7:15", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Message_$2138_storage_ptr", - "typeString": "struct SendReceive.Message" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 2163, - "nodeType": "Block", - "src": "1062:93:15", - "statements": [ - { - "expression": { - "id": 2157, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2153, - "name": "gasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2131, - "src": "1072:10:15", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2155, - "name": "gasReceiver_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2145, - "src": "1103:12:15", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2154, - "name": "IAxelarGasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "1085:17:15", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IAxelarGasService_$655_$", - "typeString": "type(contract IAxelarGasService)" - } - }, - "id": 2156, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1085:31:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "src": "1072:44:15", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "id": 2158, - "nodeType": "ExpressionStatement", - "src": "1072:44:15" - }, - { - "expression": { - "id": 2161, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2159, - "name": "chainName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2133, - "src": "1126:9:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2160, - "name": "chainName_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2147, - "src": "1138:10:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1126:22:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 2162, - "nodeType": "ExpressionStatement", - "src": "1126:22:15" - } - ] - }, - "id": 2164, - "implemented": true, - "kind": "constructor", - "modifiers": [ - { - "arguments": [ - { - "id": 2150, - "name": "gateway_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2143, - "src": "1052:8:15", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 2151, - "kind": "baseConstructorSpecifier", - "modifierName": { - "id": 2149, - "name": "AxelarExecutable", - "nameLocations": [ - "1035:16:15" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 137, - "src": "1035:16:15" - }, - "nodeType": "ModifierInvocation", - "src": "1035:26:15" - } - ], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2148, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2143, - "mutability": "mutable", - "name": "gateway_", - "nameLocation": "956:8:15", - "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "948:16:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2142, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "948:7:15", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2145, - "mutability": "mutable", - "name": "gasReceiver_", - "nameLocation": "982:12:15", - "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "974:20:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2144, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "974:7:15", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2147, - "mutability": "mutable", - "name": "chainName_", - "nameLocation": "1018:10:15", - "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "1004:24:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2146, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1004:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "938:96:15" - }, - "returnParameters": { - "id": 2152, - "nodeType": "ParameterList", - "parameters": [], - "src": "1062:0:15" - }, - "scope": 2351, - "src": "927:228:15", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2215, - "nodeType": "Block", - "src": "1317:580:15", - "statements": [ - { - "assignments": [ - 2174 - ], - "declarations": [ - { - "constant": false, - "id": 2174, - "mutability": "mutable", - "name": "executeMsgPayload", - "nameLocation": "1375:17:15", - "nodeType": "VariableDeclaration", - "scope": 2215, - "src": "1362:30:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2173, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1362:5:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2183, - "initialValue": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "expression": { - "id": 2177, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "1419:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2178, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1423:6:15", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1419:10:15", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2179, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1430:8:15", - "memberName": "toString", - "nodeType": "MemberAccess", - "referencedDeclaration": 1496, - "src": "1419:19:15", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_string_memory_ptr_$attached_to$_t_address_$", - "typeString": "function (address) pure returns (string memory)" - } - }, - "id": 2180, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1419:21:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 2181, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1454:7:15", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - ], - "expression": { - "id": 2175, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "1395:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2176, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1399:6:15", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "1395:10:15", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 2182, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1395:76:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1362:109:15" - }, - { - "assignments": [ - 2185 - ], - "declarations": [ - { - "constant": false, - "id": 2185, - "mutability": "mutable", - "name": "payload", - "nameLocation": "1494:7:15", - "nodeType": "VariableDeclaration", - "scope": 2215, - "src": "1481:20:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2184, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1481:5:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2189, - "initialValue": { - "arguments": [ - { - "id": 2187, - "name": "executeMsgPayload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2174, - "src": "1529:17:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2186, - "name": "_encodePayloadToCosmWasm", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1504:24:15", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view returns (bytes memory)" - } - }, - "id": 2188, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1504:43:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1481:66:15" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2198, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "1662:4:15", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SendReceive_$2351", - "typeString": "contract SendReceive" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_SendReceive_$2351", - "typeString": "contract SendReceive" - } - ], - "id": 2197, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1654:7:15", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 2196, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1654:7:15", - "typeDescriptions": {} - } - }, - "id": 2199, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1654:13:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2200, - "name": "destinationChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "1681:16:15", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 2201, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2168, - "src": "1711:18:15", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 2202, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2185, - "src": "1743:7:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 2203, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "1764:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2204, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1768:6:15", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1764:10:15", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 2190, - "name": "gasService", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2131, - "src": "1584:10:15", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGasService_$655", - "typeString": "contract IAxelarGasService" - } - }, - "id": 2192, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1595:27:15", - "memberName": "payNativeGasForContractCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 473, - "src": "1584:38:15", - "typeDescriptions": { - "typeIdentifier": "t_function_external_payable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (address,string memory,string memory,bytes memory,address) payable external" - } - }, - "id": 2195, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "expression": { - "id": 2193, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "1630:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1634:5:15", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "1630:9:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "1584:56:15", - "typeDescriptions": { - "typeIdentifier": "t_function_external_payable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$value", - "typeString": "function (address,string memory,string memory,bytes memory,address) payable external" - } - }, - "id": 2205, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1584:200:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2206, - "nodeType": "ExpressionStatement", - "src": "1584:200:15" - }, - { - "expression": { - "arguments": [ - { - "id": 2210, - "name": "destinationChain", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "1844:16:15", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 2211, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2168, - "src": "1862:18:15", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - } - }, - { - "id": 2212, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2185, - "src": "1882:7:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2207, - "name": "gateway", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10, - "src": "1823:7:15", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IAxelarGateway_$991", - "typeString": "contract IAxelarGateway" - } - }, - "id": 2209, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1831:12:15", - "memberName": "callContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 835, - "src": "1823:20:15", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory,bytes memory) external" - } - }, - "id": 2213, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1823:67:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2214, - "nodeType": "ExpressionStatement", - "src": "1823:67:15" - } - ] - }, - "functionSelector": "5615264d", - "id": 2216, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "send", - "nameLocation": "1170:4:15", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2171, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2166, - "mutability": "mutable", - "name": "destinationChain", - "nameLocation": "1200:16:15", - "nodeType": "VariableDeclaration", - "scope": 2216, - "src": "1184:32:15", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2165, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1184:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2168, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "1242:18:15", - "nodeType": "VariableDeclaration", - "scope": 2216, - "src": "1226:34:15", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2167, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1226:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2170, - "mutability": "mutable", - "name": "message", - "nameLocation": "1286:7:15", - "nodeType": "VariableDeclaration", - "scope": 2216, - "src": "1270:23:15", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2169, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1270:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1174:125:15" - }, - "returnParameters": { - "id": 2172, - "nodeType": "ParameterList", - "parameters": [], - "src": "1317:0:15" - }, - "scope": 2351, - "src": "1161:736:15", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 2317, - "nodeType": "Block", - "src": "2020:1318:15", - "statements": [ - { - "assignments": [ - 2224 - ], - "declarations": [ - { - "constant": false, - "id": 2224, - "mutability": "mutable", - "name": "argValues", - "nameLocation": "2585:9:15", - "nodeType": "VariableDeclaration", - "scope": 2317, - "src": "2572:22:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2223, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2572:5:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2236, - "initialValue": { - "arguments": [ - { - "id": 2227, - "name": "chainName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2133, - "src": "2621:9:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "arguments": [ - { - "id": 2230, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "2652:4:15", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SendReceive_$2351", - "typeString": "contract SendReceive" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_SendReceive_$2351", - "typeString": "contract SendReceive" - } - ], - "id": 2229, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2644:7:15", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 2228, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2644:7:15", - "typeDescriptions": {} - } - }, - "id": 2231, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2644:13:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2232, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2658:8:15", - "memberName": "toString", - "nodeType": "MemberAccess", - "referencedDeclaration": 1496, - "src": "2644:22:15", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_address_$returns$_t_string_memory_ptr_$attached_to$_t_address_$", - "typeString": "function (address) pure returns (string memory)" - } - }, - "id": 2233, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2644:24:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 2234, - "name": "executeMsgPayload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2218, - "src": "2682:17:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2225, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2597:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2226, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "2601:6:15", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "2597:10:15", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 2235, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2597:112:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2572:137:15" - }, - { - "assignments": [ - 2241 - ], - "declarations": [ - { - "constant": false, - "id": 2241, - "mutability": "mutable", - "name": "argumentNameArray", - "nameLocation": "2736:17:15", - "nodeType": "VariableDeclaration", - "scope": 2317, - "src": "2720:33:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string[]" - }, - "typeName": { - "baseType": { - "id": 2239, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2720:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "id": 2240, - "nodeType": "ArrayTypeName", - "src": "2720:8:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", - "typeString": "string[]" - } - }, - "visibility": "internal" - } - ], - "id": 2247, - "initialValue": { - "arguments": [ - { - "hexValue": "33", - "id": 2245, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2769:1:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - } - ], - "id": 2244, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "2756:12:15", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (string memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 2242, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2760:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "id": 2243, - "nodeType": "ArrayTypeName", - "src": "2760:8:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", - "typeString": "string[]" - } - } - }, - "id": 2246, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2756:15:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2720:51:15" - }, - { - "expression": { - "id": 2252, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2248, - "name": "argumentNameArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2241, - "src": "2781:17:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - "id": 2250, - "indexExpression": { - "hexValue": "30", - "id": 2249, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2799:1:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2781:20:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "736f757263655f636861696e", - "id": 2251, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2804:14:15", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3eb27069c1800aadf42cf16b56d322a6a9fb24020b93c7ece4fc75a33c662d97", - "typeString": "literal_string \"source_chain\"" - }, - "value": "source_chain" - }, - "src": "2781:37:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "id": 2253, - "nodeType": "ExpressionStatement", - "src": "2781:37:15" - }, - { - "expression": { - "id": 2258, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2254, - "name": "argumentNameArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2241, - "src": "2828:17:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - "id": 2256, - "indexExpression": { - "hexValue": "31", - "id": 2255, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2846:1:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2828:20:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "736f757263655f61646472657373", - "id": 2257, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2851:16:15", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c73b7533a6c14d92e0c3861ff16817b915051f003431047adf19e3b48ce3a2a2", - "typeString": "literal_string \"source_address\"" - }, - "value": "source_address" - }, - "src": "2828:39:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "id": 2259, - "nodeType": "ExpressionStatement", - "src": "2828:39:15" - }, - { - "expression": { - "id": 2264, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2260, - "name": "argumentNameArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2241, - "src": "2877:17:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - "id": 2262, - "indexExpression": { - "hexValue": "32", - "id": 2261, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2895:1:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2877:20:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "7061796c6f6164", - "id": 2263, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2900:9:15", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ebc84cbd75ba5516bf45e7024a9e12bc3c5c880f73e3a5beca7ebba52b2867a7", - "typeString": "literal_string \"payload\"" - }, - "value": "payload" - }, - "src": "2877:32:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "id": 2265, - "nodeType": "ExpressionStatement", - "src": "2877:32:15" - }, - { - "assignments": [ - 2270 - ], - "declarations": [ - { - "constant": false, - "id": 2270, - "mutability": "mutable", - "name": "abiTypeArray", - "nameLocation": "2936:12:15", - "nodeType": "VariableDeclaration", - "scope": 2317, - "src": "2920:28:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string[]" - }, - "typeName": { - "baseType": { - "id": 2268, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2920:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "id": 2269, - "nodeType": "ArrayTypeName", - "src": "2920:8:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", - "typeString": "string[]" - } - }, - "visibility": "internal" - } - ], - "id": 2276, - "initialValue": { - "arguments": [ - { - "hexValue": "33", - "id": 2274, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2964:1:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - } - ], - "id": 2273, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "2951:12:15", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (string memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 2271, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2955:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "id": 2272, - "nodeType": "ArrayTypeName", - "src": "2955:8:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", - "typeString": "string[]" - } - } - }, - "id": 2275, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2951:15:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2920:46:15" - }, - { - "expression": { - "id": 2281, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2277, - "name": "abiTypeArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "2976:12:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - "id": 2279, - "indexExpression": { - "hexValue": "30", - "id": 2278, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2989:1:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2976:15:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "737472696e67", - "id": 2280, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2994:8:15", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_97fc46276c172633607a331542609db1e3da793fca183d594ed5a61803a10792", - "typeString": "literal_string \"string\"" - }, - "value": "string" - }, - "src": "2976:26:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "id": 2282, - "nodeType": "ExpressionStatement", - "src": "2976:26:15" - }, - { - "expression": { - "id": 2287, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2283, - "name": "abiTypeArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "3012:12:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - "id": 2285, - "indexExpression": { - "hexValue": "31", - "id": 2284, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3025:1:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3012:15:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "737472696e67", - "id": 2286, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3030:8:15", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_97fc46276c172633607a331542609db1e3da793fca183d594ed5a61803a10792", - "typeString": "literal_string \"string\"" - }, - "value": "string" - }, - "src": "3012:26:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "id": 2288, - "nodeType": "ExpressionStatement", - "src": "3012:26:15" - }, - { - "expression": { - "id": 2293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2289, - "name": "abiTypeArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "3048:12:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - "id": 2291, - "indexExpression": { - "hexValue": "32", - "id": 2290, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3061:1:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3048:15:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "6279746573", - "id": 2292, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3066:7:15", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b963e9b45d014edd60cff22ec9ad383335bbc3f827be2aee8e291972b0fadcf2", - "typeString": "literal_string \"bytes\"" - }, - "value": "bytes" - }, - "src": "3048:25:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "id": 2294, - "nodeType": "ExpressionStatement", - "src": "3048:25:15" - }, - { - "assignments": [ - 2296 - ], - "declarations": [ - { - "constant": false, - "id": 2296, - "mutability": "mutable", - "name": "gmpPayload", - "nameLocation": "3097:10:15", - "nodeType": "VariableDeclaration", - "scope": 2317, - "src": "3084:23:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2295, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3084:5:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2297, - "nodeType": "VariableDeclarationStatement", - "src": "3084:23:15" - }, - { - "expression": { - "id": 2306, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2298, - "name": "gmpPayload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2296, - "src": "3117:10:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "hexValue": "726563656976655f6d6573736167655f65766d", - "id": 2301, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3154:21:15", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f", - "typeString": "literal_string \"receive_message_evm\"" - }, - "value": "receive_message_evm" - }, - { - "id": 2302, - "name": "argumentNameArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2241, - "src": "3189:17:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - { - "id": 2303, - "name": "abiTypeArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "3220:12:15", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - } - }, - { - "id": 2304, - "name": "argValues", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2224, - "src": "3246:9:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f", - "typeString": "literal_string \"receive_message_evm\"" - }, - { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - }, - { - "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", - "typeString": "string memory[] memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2299, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "3130:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2300, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "3134:6:15", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "3130:10:15", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 2305, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3130:135:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "3117:148:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2307, - "nodeType": "ExpressionStatement", - "src": "3117:148:15" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30783030303030303031", - "id": 2312, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3307:10:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "0x00000001" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - } - ], - "id": 2311, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3300:6:15", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes4_$", - "typeString": "type(bytes4)" - }, - "typeName": { - "id": 2310, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "3300:6:15", - "typeDescriptions": {} - } - }, - "id": 2313, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3300:18:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "id": 2314, - "name": "gmpPayload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2296, - "src": "3320:10:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2308, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "3283:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2309, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "3287:12:15", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "3283:16:15", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 2315, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3283:48:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2222, - "id": 2316, - "nodeType": "Return", - "src": "3276:55:15" - } - ] - }, - "id": 2318, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_encodePayloadToCosmWasm", - "nameLocation": "1912:24:15", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2219, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2218, - "mutability": "mutable", - "name": "executeMsgPayload", - "nameLocation": "1959:17:15", - "nodeType": "VariableDeclaration", - "scope": 2318, - "src": "1946:30:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2217, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1946:5:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1936:46:15" - }, - "returnParameters": { - "id": 2222, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2221, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2318, - "src": "2006:12:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2220, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2006:5:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2005:14:15" - }, - "scope": 2351, - "src": "1903:1435:15", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "baseFunctions": [ - 122 - ], - "body": { - "id": 2349, - "nodeType": "Block", - "src": "3502:186:15", - "statements": [ - { - "assignments": [ - 2329, - 2331 - ], - "declarations": [ - { - "constant": false, - "id": 2329, - "mutability": "mutable", - "name": "sender", - "nameLocation": "3527:6:15", - "nodeType": "VariableDeclaration", - "scope": 2349, - "src": "3513:20:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2328, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3513:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2331, - "mutability": "mutable", - "name": "message", - "nameLocation": "3549:7:15", - "nodeType": "VariableDeclaration", - "scope": 2349, - "src": "3535:21:15", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2330, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3535:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 2341, - "initialValue": { - "arguments": [ - { - "id": 2334, - "name": "payload", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "3584:7:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "components": [ - { - "id": 2336, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3606:6:15", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 2335, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3606:6:15", - "typeDescriptions": {} - } - }, - { - "id": 2338, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3614:6:15", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 2337, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3614:6:15", - "typeDescriptions": {} - } - } - ], - "id": 2339, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3605:16:15", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_type$_t_string_storage_ptr_$_$_t_type$_t_string_storage_ptr_$_$", - "typeString": "tuple(type(string storage pointer),type(string storage pointer))" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_tuple$_t_type$_t_string_storage_ptr_$_$_t_type$_t_string_storage_ptr_$_$", - "typeString": "tuple(type(string storage pointer),type(string storage pointer))" - } - ], - "expression": { - "id": 2332, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "3560:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2333, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "3564:6:15", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "3560:10:15", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 2340, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3560:71:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_string_memory_ptr_$_t_string_memory_ptr_$", - "typeString": "tuple(string memory,string memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3512:119:15" - }, - { - "expression": { - "id": 2347, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2342, - "name": "storedMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2141, - "src": "3641:13:15", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Message_$2138_storage", - "typeString": "struct SendReceive.Message storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2344, - "name": "sender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2329, - "src": "3665:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 2345, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2331, - "src": "3673:7:15", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2343, - "name": "Message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2138, - "src": "3657:7:15", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Message_$2138_storage_ptr_$", - "typeString": "type(struct SendReceive.Message storage pointer)" - } - }, - "id": 2346, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3657:24:15", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Message_$2138_memory_ptr", - "typeString": "struct SendReceive.Message memory" - } - }, - "src": "3641:40:15", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Message_$2138_storage", - "typeString": "struct SendReceive.Message storage ref" - } - }, - "id": 2348, - "nodeType": "ExpressionStatement", - "src": "3641:40:15" - } - ] - }, - "id": 2350, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_execute", - "nameLocation": "3353:8:15", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 2326, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3493:8:15" - }, - "parameters": { - "id": 2325, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2320, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2350, - "src": "3371:15:15", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2319, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3371:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2322, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2350, - "src": "3412:15:15", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2321, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3412:6:15", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2324, - "mutability": "mutable", - "name": "payload", - "nameLocation": "3470:7:15", - "nodeType": "VariableDeclaration", - "scope": 2350, - "src": "3455:22:15", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2323, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3455:5:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3361:122:15" - }, - "returnParameters": { - "id": 2327, - "nodeType": "ParameterList", - "parameters": [], - "src": "3502:0:15" - }, - "scope": 2351, - "src": "3344:344:15", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 2352, - "src": "527:3163:15", - "usedErrors": [ - 143, - 145 - ], - "usedEvents": [] - } - ], - "src": "32:3659:15" - }, - "id": 15 - } - }, - "contracts": { - "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol": { - "AxelarExecutable": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "gateway_", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "InvalidAddress", - "type": "error" - }, - { - "inputs": [], - "name": "NotApprovedByGateway", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - } - ], - "name": "execute", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "tokenSymbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "executeWithToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "gateway", - "outputs": [ - { - "internalType": "contract IAxelarGateway", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": { - "@_32": { - "entryPoint": null, - "id": 32, - "parameterSlots": 1, - "returnSlots": 0 - }, - "abi_decode_tuple_t_address_fromMemory": { - "entryPoint": 103, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - } - }, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:306:16", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:16", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "95:209:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "141:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "150:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "153:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "143:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "143:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "143:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "116:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "125:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "112:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "112:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "137:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "108:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "108:32:16" - }, - "nodeType": "YulIf", - "src": "105:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "166:29:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "185:9:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "179:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "179:16:16" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "170:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "258:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "267:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "270:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "260:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "260:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "260:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "217:5:16" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "228:5:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "243:3:16", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "248:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "239:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "239:11:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "252:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "235:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "235:19:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "224:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "224:31:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "214:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "214:42:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "207:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "207:50:16" - }, - "nodeType": "YulIf", - "src": "204:70:16" - }, - { - "nodeType": "YulAssignment", - "src": "283:15:16", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "293:5:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "283:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "61:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "72:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "84:6:16", - "type": "" - } - ], - "src": "14:290:16" - } - ] - }, - "contents": "{\n { }\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n value0 := value\n }\n}", - "id": 16, - "language": "Yul", - "name": "#utility.yul" - } - ], - "linkReferences": {}, - "object": "60a060405234801561001057600080fd5b506040516106d73803806106d783398101604081905261002f91610067565b6001600160a01b0381166100565760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0316608052610097565b60006020828403121561007957600080fd5b81516001600160a01b038116811461009057600080fd5b9392505050565b6080516106186100bf60003960008181604b01528181610115015261023701526106186000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063116191b6146100465780631a98b2e01461009657806349160658146100ab575b600080fd5b61006d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6100a96100a4366004610342565b6100be565b005b6100a96100b936600461041c565b6101e0565b600085856040516100d09291906104c0565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed99061015a908e908e908e908e908e9089908d908d908d90600401610519565b6020604051808303816000875af1158015610179573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019d9190610578565b6101d3576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600082826040516101f29291906104c0565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c390610276908b908b908b908b908b9089906004016105a1565b6020604051808303816000875af1158015610295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b99190610578565b6102ef576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050565b60008083601f84011261030b57600080fd5b50813567ffffffffffffffff81111561032357600080fd5b60208301915083602082850101111561033b57600080fd5b9250929050565b60008060008060008060008060008060c08b8d03121561036157600080fd5b8a35995060208b013567ffffffffffffffff8082111561038057600080fd5b61038c8e838f016102f9565b909b50995060408d01359150808211156103a557600080fd5b6103b18e838f016102f9565b909950975060608d01359150808211156103ca57600080fd5b6103d68e838f016102f9565b909750955060808d01359150808211156103ef57600080fd5b506103fc8d828e016102f9565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060008060006080888a03121561043757600080fd5b87359650602088013567ffffffffffffffff8082111561045657600080fd5b6104628b838c016102f9565b909850965060408a013591508082111561047b57600080fd5b6104878b838c016102f9565b909650945060608a01359150808211156104a057600080fd5b506104ad8a828b016102f9565b989b979a50959850939692959293505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600061053360c083018a8c6104d0565b828103604084015261054681898b6104d0565b905086606084015282810360808401526105618186886104d0565b9150508260a08301529a9950505050505050505050565b60006020828403121561058a57600080fd5b8151801515811461059a57600080fd5b9392505050565b8681526080602082015260006105bb6080830187896104d0565b82810360408401526105ce8186886104d0565b91505082606083015297965050505050505056fea2646970667358221220164018621781157703a2fa3b00cc12ddd6039c9b69d9dfa7353c10a02757f48164736f6c63430008140033", - "opcodes": "PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x6D7 CODESIZE SUB DUP1 PUSH2 0x6D7 DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH2 0x2F SWAP2 PUSH2 0x67 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH2 0x56 JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x80 MSTORE PUSH2 0x97 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x79 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH2 0x618 PUSH2 0xBF PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0x4B ADD MSTORE DUP2 DUP2 PUSH2 0x115 ADD MSTORE PUSH2 0x237 ADD MSTORE PUSH2 0x618 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x116191B6 EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x96 JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0xAB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6D PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA9 PUSH2 0xA4 CALLDATASIZE PUSH1 0x4 PUSH2 0x342 JUMP JUMPDEST PUSH2 0xBE JUMP JUMPDEST STOP JUMPDEST PUSH2 0xA9 PUSH2 0xB9 CALLDATASIZE PUSH1 0x4 PUSH2 0x41C JUMP JUMPDEST PUSH2 0x1E0 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0xD0 SWAP3 SWAP2 SWAP1 PUSH2 0x4C0 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x15A SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x519 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x179 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x19D SWAP2 SWAP1 PUSH2 0x578 JUMP JUMPDEST PUSH2 0x1D3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1F2 SWAP3 SWAP2 SWAP1 PUSH2 0x4C0 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x276 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x5A1 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x295 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x578 JUMP JUMPDEST PUSH2 0x2EF JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x30B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x323 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x33B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0x361 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x380 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x38C DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3B1 DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3CA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3D6 DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3FC DUP14 DUP3 DUP15 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0x437 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x456 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x462 DUP12 DUP4 DUP13 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x47B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x487 DUP12 DUP4 DUP13 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x4A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x4AD DUP11 DUP3 DUP12 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x533 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0x4D0 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x546 DUP2 DUP10 DUP12 PUSH2 0x4D0 JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x561 DUP2 DUP7 DUP9 PUSH2 0x4D0 JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x58A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x59A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x5BB PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0x4D0 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x5CE DUP2 DUP7 DUP9 PUSH2 0x4D0 JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 AND BLOCKHASH XOR PUSH3 0x178115 PUSH24 0x3A2FA3B00CC12DDD6039C9B69D9DFA7353C10A02757F481 PUSH5 0x736F6C6343 STOP ADDMOD EQ STOP CALLER ", - "sourceMap": "199:1726:0:-:0;;;298:143;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;342:22:0;;338:51;;373:16;;-1:-1:-1;;;373:16:0;;;;;;;;;;;338:51;-1:-1:-1;;;;;400:34:0;;;199:1726;;14:290:16;84:6;137:2;125:9;116:7;112:23;108:32;105:52;;;153:1;150;143:12;105:52;179:16;;-1:-1:-1;;;;;224:31:16;;214:42;;204:70;;270:1;267;260:12;204:70;293:5;14:290;-1:-1:-1;;;14:290:16:o;:::-;199:1726:0;;;;;;;;;;;;;;;;;;;;;;" - }, - "deployedBytecode": { - "functionDebugData": { - "@_executeWithToken_136": { - "entryPoint": null, - "id": 136, - "parameterSlots": 9, - "returnSlots": 0 - }, - "@_execute_122": { - "entryPoint": null, - "id": 122, - "parameterSlots": 6, - "returnSlots": 0 - }, - "@executeWithToken_112": { - "entryPoint": 190, - "id": 112, - "parameterSlots": 10, - "returnSlots": 0 - }, - "@execute_68": { - "entryPoint": 480, - "id": 68, - "parameterSlots": 7, - "returnSlots": 0 - }, - "@gateway_10": { - "entryPoint": null, - "id": 10, - "parameterSlots": 0, - "returnSlots": 0 - }, - "abi_decode_string_calldata": { - "entryPoint": 761, - "id": null, - "parameterSlots": 2, - "returnSlots": 2 - }, - "abi_decode_tuple_t_bool_fromMemory": { - "entryPoint": 1400, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr": { - "entryPoint": 1052, - "id": null, - "parameterSlots": 2, - "returnSlots": 7 - }, - "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256": { - "entryPoint": 834, - "id": null, - "parameterSlots": 2, - "returnSlots": 10 - }, - "abi_encode_string_calldata": { - "entryPoint": 1232, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": 1216, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed": { - "entryPoint": 1441, - "id": null, - "parameterSlots": 7, - "returnSlots": 1 - }, - "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed": { - "entryPoint": 1305, - "id": null, - "parameterSlots": 10, - "returnSlots": 1 - }, - "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - } - }, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:5466:16", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:16", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "137:125:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "147:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "159:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "170:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "155:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "155:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "147:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "189:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "204:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "212:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "200:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "200:55:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "182:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "182:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "182:74:16" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "106:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "117:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "128:4:16", - "type": "" - } - ], - "src": "14:248:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "340:275:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "389:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "398:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "401:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "391:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "391:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "391:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "368:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "376:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "364:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "364:17:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "383:3:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "360:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "360:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "353:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "353:35:16" - }, - "nodeType": "YulIf", - "src": "350:55:16" - }, - { - "nodeType": "YulAssignment", - "src": "414:30:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "437:6:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "424:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "424:20:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "414:6:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "487:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "496:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "499:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "489:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "489:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "489:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "459:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "467:18:16", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "456:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "456:30:16" - }, - "nodeType": "YulIf", - "src": "453:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "512:29:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "528:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "536:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "524:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "524:17:16" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "512:8:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "593:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "602:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "605:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "595:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "595:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "595:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "564:6:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "572:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "560:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "560:19:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "581:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "556:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "556:30:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "588:3:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "553:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "553:39:16" - }, - "nodeType": "YulIf", - "src": "550:59:16" - } - ] - }, - "name": "abi_decode_string_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "303:6:16", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "311:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "319:8:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "329:6:16", - "type": "" - } - ], - "src": "267:348:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "854:1203:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "901:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "910:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "913:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "903:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "903:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "903:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "875:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "884:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "871:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "871:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "896:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "867:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "867:33:16" - }, - "nodeType": "YulIf", - "src": "864:53:16" - }, - { - "nodeType": "YulAssignment", - "src": "926:33:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "949:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "936:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "936:23:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "926:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "968:46:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "999:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1010:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "995:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "995:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "982:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "982:32:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "972:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1023:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1033:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1027:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1078:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1087:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1090:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1080:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1080:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1080:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1066:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1074:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1063:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1063:14:16" - }, - "nodeType": "YulIf", - "src": "1060:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1103:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1160:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1171:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1156:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1156:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1180:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1129:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1129:59:16" - }, - "variables": [ - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "1107:8:16", - "type": "" - }, - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "1117:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1197:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "1207:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1197:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1224:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "1234:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1224:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1251:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1284:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1295:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1280:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1280:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1267:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1267:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "1255:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1328:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1337:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1340:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1330:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1330:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1330:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "1314:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1324:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1311:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1311:16:16" - }, - "nodeType": "YulIf", - "src": "1308:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1353:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1410:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "1421:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1406:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1406:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1432:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1379:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1379:61:16" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "1357:8:16", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "1367:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1449:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "1459:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "1449:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1476:18:16", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "1486:8:16" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "1476:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1503:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1536:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1547:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1532:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1532:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1519:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1519:32:16" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "1507:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1580:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1589:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1592:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1582:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1582:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1582:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "1566:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1576:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1563:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1563:16:16" - }, - "nodeType": "YulIf", - "src": "1560:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1605:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1662:9:16" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "1673:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1658:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1658:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1684:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1631:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1631:61:16" - }, - "variables": [ - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "1609:8:16", - "type": "" - }, - { - "name": "value6_1", - "nodeType": "YulTypedName", - "src": "1619:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1701:18:16", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "1711:8:16" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "1701:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1728:18:16", - "value": { - "name": "value6_1", - "nodeType": "YulIdentifier", - "src": "1738:8:16" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "1728:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1755:49:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1788:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1799:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1784:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1784:19:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1771:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1771:33:16" - }, - "variables": [ - { - "name": "offset_3", - "nodeType": "YulTypedName", - "src": "1759:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1833:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1842:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1845:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1835:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1835:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1835:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "1819:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1829:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1816:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1816:16:16" - }, - "nodeType": "YulIf", - "src": "1813:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1858:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1915:9:16" - }, - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "1926:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1911:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1911:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1937:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1884:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1884:61:16" - }, - "variables": [ - { - "name": "value7_1", - "nodeType": "YulTypedName", - "src": "1862:8:16", - "type": "" - }, - { - "name": "value8_1", - "nodeType": "YulTypedName", - "src": "1872:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1954:18:16", - "value": { - "name": "value7_1", - "nodeType": "YulIdentifier", - "src": "1964:8:16" - }, - "variableNames": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "1954:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1981:18:16", - "value": { - "name": "value8_1", - "nodeType": "YulIdentifier", - "src": "1991:8:16" - }, - "variableNames": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "1981:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2008:43:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2035:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2046:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2031:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2031:19:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2018:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2018:33:16" - }, - "variableNames": [ - { - "name": "value9", - "nodeType": "YulIdentifier", - "src": "2008:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "748:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "759:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "771:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "779:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "787:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "795:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "803:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "811:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "819:6:16", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "827:6:16", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "835:6:16", - "type": "" - }, - { - "name": "value9", - "nodeType": "YulTypedName", - "src": "843:6:16", - "type": "" - } - ], - "src": "620:1437:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2242:898:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2289:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2298:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2301:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2291:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2291:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2291:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2263:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2272:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2259:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2259:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2284:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2255:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2255:33:16" - }, - "nodeType": "YulIf", - "src": "2252:53:16" - }, - { - "nodeType": "YulAssignment", - "src": "2314:33:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2337:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2324:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2324:23:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2314:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2356:46:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2387:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2398:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2383:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2383:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2370:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2370:32:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2360:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2411:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2421:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2415:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2466:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2475:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2478:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2468:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2468:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2468:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2454:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2462:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2451:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2451:14:16" - }, - "nodeType": "YulIf", - "src": "2448:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2491:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2548:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2559:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2544:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2544:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2568:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "2517:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "2517:59:16" - }, - "variables": [ - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "2495:8:16", - "type": "" - }, - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "2505:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2585:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "2595:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2585:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2612:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "2622:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "2612:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2639:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2672:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2683:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2668:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2668:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2655:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2655:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "2643:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2716:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2725:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2728:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2718:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2718:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2718:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "2702:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2712:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2699:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2699:16:16" - }, - "nodeType": "YulIf", - "src": "2696:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2741:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2798:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "2809:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2794:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2794:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2820:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "2767:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "2767:61:16" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "2745:8:16", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "2755:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2837:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "2847:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "2837:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2864:18:16", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "2874:8:16" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "2864:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2891:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2924:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2935:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2920:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2920:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2907:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2907:32:16" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "2895:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2968:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2977:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2980:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2970:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2970:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2970:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "2954:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2964:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2951:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2951:16:16" - }, - "nodeType": "YulIf", - "src": "2948:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2993:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3050:9:16" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3061:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3046:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3046:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3072:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "3019:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "3019:61:16" - }, - "variables": [ - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "2997:8:16", - "type": "" - }, - { - "name": "value6_1", - "nodeType": "YulTypedName", - "src": "3007:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3089:18:16", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "3099:8:16" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "3089:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3116:18:16", - "value": { - "name": "value6_1", - "nodeType": "YulIdentifier", - "src": "3126:8:16" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "3116:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2160:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2171:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2183:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2191:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "2199:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "2207:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "2215:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "2223:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "2231:6:16", - "type": "" - } - ], - "src": "2062:1078:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3292:124:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3315:3:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3320:6:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3328:6:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "3302:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3302:33:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3302:33:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3344:26:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3358:3:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3363:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3354:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3354:16:16" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3348:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3386:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3390:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3379:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3379:13:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3379:13:16" - }, - { - "nodeType": "YulAssignment", - "src": "3401:9:16", - "value": { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3408:2:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3401:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "3260:3:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3265:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3273:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "3284:3:16", - "type": "" - } - ], - "src": "3145:271:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3488:259:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3505:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3510:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3498:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3498:19:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3498:19:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3543:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3548:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3539:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3539:14:16" - }, - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "3555:5:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3562:6:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "3526:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3526:43:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3526:43:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3593:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3598:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3589:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3589:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3607:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3585:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3585:27:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3614:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3578:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3578:38:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3578:38:16" - }, - { - "nodeType": "YulAssignment", - "src": "3625:116:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3640:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3653:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3661:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3649:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3649:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3666:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3645:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3645:88:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3636:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3636:98:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3736:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3632:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3632:109:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3625:3:16" - } - ] - } - ] - }, - "name": "abi_encode_string_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "3457:5:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3464:6:16", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "3472:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "3480:3:16", - "type": "" - } - ], - "src": "3421:326:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4083:513:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4100:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4111:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4093:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4093:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4093:25:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4138:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4149:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4134:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4134:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4154:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4127:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4127:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4127:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4167:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "4208:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "4216:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4228:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4239:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4224:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4224:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "4181:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "4181:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "4171:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4264:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4275:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4260:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4260:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "4284:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4292:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4280:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4280:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4253:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4253:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4253:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4312:64:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "4353:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "4361:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "4369:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "4326:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "4326:50:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "4316:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4396:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4407:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4392:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4392:18:16" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "4412:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4385:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4385:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4385:34:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4439:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4450:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4435:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4435:19:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "4460:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4468:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4456:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4456:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4428:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4428:51:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4428:51:16" - }, - { - "nodeType": "YulAssignment", - "src": "4488:58:16", - "value": { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "4523:6:16" - }, - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "4531:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "4539:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "4496:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "4496:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4488:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4566:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4577:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4562:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4562:19:16" - }, - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "4583:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4555:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4555:35:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4555:35:16" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3988:9:16", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "3999:6:16", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "4007:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "4015:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "4023:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "4031:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "4039:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "4047:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "4055:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4063:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4074:4:16", - "type": "" - } - ], - "src": "3752:844:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4679:199:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4725:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4734:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4737:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4727:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4727:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4727:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4700:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4709:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4696:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4696:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4721:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4692:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4692:32:16" - }, - "nodeType": "YulIf", - "src": "4689:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4750:29:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4769:9:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4763:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "4763:16:16" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4754:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4832:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4841:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4844:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4834:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4834:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4834:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4801:5:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4822:5:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "4815:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4815:13:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "4808:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4808:21:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "4798:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4798:32:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "4791:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4791:40:16" - }, - "nodeType": "YulIf", - "src": "4788:60:16" - }, - { - "nodeType": "YulAssignment", - "src": "4857:15:16", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4867:5:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4857:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bool_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4645:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4656:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4668:6:16", - "type": "" - } - ], - "src": "4601:277:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5128:336:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5145:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5156:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5138:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5138:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5138:25:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5183:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5194:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5179:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5179:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5199:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5172:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5172:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5172:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5212:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5253:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "5261:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5273:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5284:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5269:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5269:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "5226:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "5226:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "5216:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5309:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5320:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5305:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5305:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "5329:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5337:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5325:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5325:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5298:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5298:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5298:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "5357:58:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "5392:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "5400:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "5408:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "5365:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "5365:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5357:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5435:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5446:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5431:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5431:18:16" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "5451:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5424:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5424:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5424:34:16" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5057:9:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "5068:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "5076:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "5084:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "5092:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "5100:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5108:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5119:4:16", - "type": "" - } - ], - "src": "4883:581:16" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_string_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7, value8, value9\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n let offset_3 := calldataload(add(headStart, 128))\n if gt(offset_3, _1) { revert(0, 0) }\n let value7_1, value8_1 := abi_decode_string_calldata(add(headStart, offset_3), dataEnd)\n value7 := value7_1\n value8 := value8_1\n value9 := calldataload(add(headStart, 160))\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 192)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value6, value7, tail_2)\n mstore(add(headStart, 160), value8)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 128)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 128))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n }\n}", - "id": 16, - "language": "Yul", - "name": "#utility.yul" - } - ], - "immutableReferences": { - "10": [ - { - "length": 32, - "start": 75 - }, - { - "length": 32, - "start": 277 - }, - { - "length": 32, - "start": 567 - } - ] - }, - "linkReferences": {}, - "object": "608060405234801561001057600080fd5b50600436106100415760003560e01c8063116191b6146100465780631a98b2e01461009657806349160658146100ab575b600080fd5b61006d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6100a96100a4366004610342565b6100be565b005b6100a96100b936600461041c565b6101e0565b600085856040516100d09291906104c0565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed99061015a908e908e908e908e908e9089908d908d908d90600401610519565b6020604051808303816000875af1158015610179573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019d9190610578565b6101d3576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600082826040516101f29291906104c0565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c390610276908b908b908b908b908b9089906004016105a1565b6020604051808303816000875af1158015610295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b99190610578565b6102ef576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050565b60008083601f84011261030b57600080fd5b50813567ffffffffffffffff81111561032357600080fd5b60208301915083602082850101111561033b57600080fd5b9250929050565b60008060008060008060008060008060c08b8d03121561036157600080fd5b8a35995060208b013567ffffffffffffffff8082111561038057600080fd5b61038c8e838f016102f9565b909b50995060408d01359150808211156103a557600080fd5b6103b18e838f016102f9565b909950975060608d01359150808211156103ca57600080fd5b6103d68e838f016102f9565b909750955060808d01359150808211156103ef57600080fd5b506103fc8d828e016102f9565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060008060006080888a03121561043757600080fd5b87359650602088013567ffffffffffffffff8082111561045657600080fd5b6104628b838c016102f9565b909850965060408a013591508082111561047b57600080fd5b6104878b838c016102f9565b909650945060608a01359150808211156104a057600080fd5b506104ad8a828b016102f9565b989b979a50959850939692959293505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600061053360c083018a8c6104d0565b828103604084015261054681898b6104d0565b905086606084015282810360808401526105618186886104d0565b9150508260a08301529a9950505050505050505050565b60006020828403121561058a57600080fd5b8151801515811461059a57600080fd5b9392505050565b8681526080602082015260006105bb6080830187896104d0565b82810360408401526105ce8186886104d0565b91505082606083015297965050505050505056fea2646970667358221220164018621781157703a2fa3b00cc12ddd6039c9b69d9dfa7353c10a02757f48164736f6c63430008140033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x116191B6 EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x96 JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0xAB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6D PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA9 PUSH2 0xA4 CALLDATASIZE PUSH1 0x4 PUSH2 0x342 JUMP JUMPDEST PUSH2 0xBE JUMP JUMPDEST STOP JUMPDEST PUSH2 0xA9 PUSH2 0xB9 CALLDATASIZE PUSH1 0x4 PUSH2 0x41C JUMP JUMPDEST PUSH2 0x1E0 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0xD0 SWAP3 SWAP2 SWAP1 PUSH2 0x4C0 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x15A SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x519 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x179 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x19D SWAP2 SWAP1 PUSH2 0x578 JUMP JUMPDEST PUSH2 0x1D3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1F2 SWAP3 SWAP2 SWAP1 PUSH2 0x4C0 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x276 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x5A1 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x295 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2B9 SWAP2 SWAP1 PUSH2 0x578 JUMP JUMPDEST PUSH2 0x2EF JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x30B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x323 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x33B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0x361 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x380 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x38C DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3B1 DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3CA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3D6 DUP15 DUP4 DUP16 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3FC DUP14 DUP3 DUP15 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0x437 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x456 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x462 DUP12 DUP4 DUP13 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x47B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x487 DUP12 DUP4 DUP13 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x4A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x4AD DUP11 DUP3 DUP12 ADD PUSH2 0x2F9 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x533 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0x4D0 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x546 DUP2 DUP10 DUP12 PUSH2 0x4D0 JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x561 DUP2 DUP7 DUP9 PUSH2 0x4D0 JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x58A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x59A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x5BB PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0x4D0 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x5CE DUP2 DUP7 DUP9 PUSH2 0x4D0 JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 AND BLOCKHASH XOR PUSH3 0x178115 PUSH24 0x3A2FA3B00CC12DDD6039C9B69D9DFA7353C10A02757F481 PUSH5 0x736F6C6343 STOP ADDMOD EQ STOP CALLER ", - "sourceMap": "199:1726:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;252:39;;;;;;;;212:42:16;200:55;;;182:74;;170:2;155:18;252:39:0;;;;;;;872:667;;;;;;:::i;:::-;;:::i;:::-;;447:419;;;;;;:::i;:::-;;:::i;872:667::-;1119:19;1151:7;;1141:18;;;;;;;:::i;:::-;;;;;;;;;1188:218;;;1141:18;-1:-1:-1;1188:35:0;:7;:35;;;;:218;;1241:9;;1268:11;;;;1297:13;;;;1141:18;;1357:11;;;;1386:6;;1188:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1170:276;;1424:22;;;;;;;;;;;;;;1170:276;1109:430;872:667;;;;;;;;;;:::o;447:419::-;624:19;656:7;;646:18;;;;;;;:::i;:::-;;;;;;;;;680:80;;;646:18;-1:-1:-1;680:28:0;:7;:28;;;;:80;;709:9;;720:11;;;;733:13;;;;646:18;;680:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;675:128;;781:22;;;;;;;;;;;;;;675:128;614:252;447:419;;;;;;;:::o;267:348:16:-;319:8;329:6;383:3;376:4;368:6;364:17;360:27;350:55;;401:1;398;391:12;350:55;-1:-1:-1;424:20:16;;467:18;456:30;;453:50;;;499:1;496;489:12;453:50;536:4;528:6;524:17;512:29;;588:3;581:4;572:6;564;560:19;556:30;553:39;550:59;;;605:1;602;595:12;550:59;267:348;;;;;:::o;620:1437::-;771:6;779;787;795;803;811;819;827;835;843;896:3;884:9;875:7;871:23;867:33;864:53;;;913:1;910;903:12;864:53;949:9;936:23;926:33;;1010:2;999:9;995:18;982:32;1033:18;1074:2;1066:6;1063:14;1060:34;;;1090:1;1087;1080:12;1060:34;1129:59;1180:7;1171:6;1160:9;1156:22;1129:59;:::i;:::-;1207:8;;-1:-1:-1;1103:85:16;-1:-1:-1;1295:2:16;1280:18;;1267:32;;-1:-1:-1;1311:16:16;;;1308:36;;;1340:1;1337;1330:12;1308:36;1379:61;1432:7;1421:8;1410:9;1406:24;1379:61;:::i;:::-;1459:8;;-1:-1:-1;1353:87:16;-1:-1:-1;1547:2:16;1532:18;;1519:32;;-1:-1:-1;1563:16:16;;;1560:36;;;1592:1;1589;1582:12;1560:36;1631:61;1684:7;1673:8;1662:9;1658:24;1631:61;:::i;:::-;1711:8;;-1:-1:-1;1605:87:16;-1:-1:-1;1799:3:16;1784:19;;1771:33;;-1:-1:-1;1816:16:16;;;1813:36;;;1845:1;1842;1835:12;1813:36;;1884:61;1937:7;1926:8;1915:9;1911:24;1884:61;:::i;:::-;1858:87;;1964:8;1954:18;;;1991:8;1981:18;;;2046:3;2035:9;2031:19;2018:33;2008:43;;620:1437;;;;;;;;;;;;;:::o;2062:1078::-;2183:6;2191;2199;2207;2215;2223;2231;2284:3;2272:9;2263:7;2259:23;2255:33;2252:53;;;2301:1;2298;2291:12;2252:53;2337:9;2324:23;2314:33;;2398:2;2387:9;2383:18;2370:32;2421:18;2462:2;2454:6;2451:14;2448:34;;;2478:1;2475;2468:12;2448:34;2517:59;2568:7;2559:6;2548:9;2544:22;2517:59;:::i;:::-;2595:8;;-1:-1:-1;2491:85:16;-1:-1:-1;2683:2:16;2668:18;;2655:32;;-1:-1:-1;2699:16:16;;;2696:36;;;2728:1;2725;2718:12;2696:36;2767:61;2820:7;2809:8;2798:9;2794:24;2767:61;:::i;:::-;2847:8;;-1:-1:-1;2741:87:16;-1:-1:-1;2935:2:16;2920:18;;2907:32;;-1:-1:-1;2951:16:16;;;2948:36;;;2980:1;2977;2970:12;2948:36;;3019:61;3072:7;3061:8;3050:9;3046:24;3019:61;:::i;:::-;2062:1078;;;;-1:-1:-1;2062:1078:16;;-1:-1:-1;2062:1078:16;;;;2993:87;;-1:-1:-1;;;2062:1078:16:o;3145:271::-;3328:6;3320;3315:3;3302:33;3284:3;3354:16;;3379:13;;;3354:16;3145:271;-1:-1:-1;3145:271:16:o;3421:326::-;3510:6;3505:3;3498:19;3562:6;3555:5;3548:4;3543:3;3539:14;3526:43;;3614:1;3607:4;3598:6;3593:3;3589:16;3585:27;3578:38;3480:3;3736:4;3666:66;3661:2;3653:6;3649:15;3645:88;3640:3;3636:98;3632:109;3625:116;;3421:326;;;;:::o;3752:844::-;4111:6;4100:9;4093:25;4154:3;4149:2;4138:9;4134:18;4127:31;4074:4;4181:63;4239:3;4228:9;4224:19;4216:6;4208;4181:63;:::i;:::-;4292:9;4284:6;4280:22;4275:2;4264:9;4260:18;4253:50;4326;4369:6;4361;4353;4326:50;:::i;:::-;4312:64;;4412:6;4407:2;4396:9;4392:18;4385:34;4468:9;4460:6;4456:22;4450:3;4439:9;4435:19;4428:51;4496:50;4539:6;4531;4523;4496:50;:::i;:::-;4488:58;;;4583:6;4577:3;4566:9;4562:19;4555:35;3752:844;;;;;;;;;;;;:::o;4601:277::-;4668:6;4721:2;4709:9;4700:7;4696:23;4692:32;4689:52;;;4737:1;4734;4727:12;4689:52;4769:9;4763:16;4822:5;4815:13;4808:21;4801:5;4798:32;4788:60;;4844:1;4841;4834:12;4788:60;4867:5;4601:277;-1:-1:-1;;;4601:277:16:o;4883:581::-;5156:6;5145:9;5138:25;5199:3;5194:2;5183:9;5179:18;5172:31;5119:4;5226:63;5284:3;5273:9;5269:19;5261:6;5253;5226:63;:::i;:::-;5337:9;5329:6;5325:22;5320:2;5309:9;5305:18;5298:50;5365;5408:6;5400;5392;5365:50;:::i;:::-;5357:58;;;5451:6;5446:2;5435:9;5431:18;5424:34;4883:581;;;;;;;;;:::o" - }, - "methodIdentifiers": { - "execute(bytes32,string,string,bytes)": "49160658", - "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", - "gateway()": "116191b6" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"gateway_\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":\"AxelarExecutable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":{\"keccak256\":\"0x2a88d046f9cdc664afc7b788d6c5b534d361b46fb45ab7abf721a58dd813359b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ac48adfa686aa78e2474bcb72f49791b631bd5dd15e0991ccd91b9660caacdb\",\"dweb:/ipfs/QmQ7uFDHagPUDq93T4vaeANzLE8J8Ch3jcdTAdNT7kkfEW\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol": { - "IAxelarExecutable": { - "abi": [ - { - "inputs": [], - "name": "InvalidAddress", - "type": "error" - }, - { - "inputs": [], - "name": "NotApprovedByGateway", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - } - ], - "name": "execute", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "tokenSymbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "executeWithToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "gateway", - "outputs": [ - { - "internalType": "contract IAxelarGateway", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "execute(bytes32,string,string,bytes)": "49160658", - "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", - "gateway()": "116191b6" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":\"IAxelarExecutable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol": { - "IAxelarGasService": { - "abi": [ - { - "inputs": [ - { - "internalType": "uint256", - "name": "required", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "provided", - "type": "uint256" - } - ], - "name": "InsufficientGasPayment", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidAddress", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidAmounts", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidCodeHash", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidGasUpdates", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidImplementation", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidOwner", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidOwnerAddress", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidParams", - "type": "error" - }, - { - "inputs": [], - "name": "NotCollector", - "type": "error" - }, - { - "inputs": [], - "name": "NotOwner", - "type": "error" - }, - { - "inputs": [], - "name": "NotProxy", - "type": "error" - }, - { - "inputs": [], - "name": "SetupFailed", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "enum GasEstimationType", - "name": "gasEstimationType", - "type": "uint8" - } - ], - "name": "UnsupportedEstimationType", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "indexed": true, - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "ExpressGasAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "indexed": true, - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "GasAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "chain", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint64", - "name": "gasEstimationType", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "l1FeeScalar", - "type": "uint64" - }, - { - "internalType": "uint128", - "name": "axelarBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeGasPrice", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeBlobBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "expressFee", - "type": "uint128" - } - ], - "indexed": false, - "internalType": "struct GasInfo", - "name": "info", - "type": "tuple" - } - ], - "name": "GasInfoUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sourceAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "GasPaidForContractCall", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sourceAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "GasPaidForContractCallWithToken", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sourceAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "GasPaidForExpressCall", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sourceAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "GasPaidForExpressCallWithToken", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "indexed": true, - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "NativeExpressGasAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "indexed": true, - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "NativeGasAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sourceAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "NativeGasPaidForContractCall", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sourceAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "NativeGasPaidForContractCallWithToken", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sourceAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "NativeGasPaidForExpressCall", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sourceAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "NativeGasPaidForExpressCallWithToken", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferStarted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "indexed": true, - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address payable", - "name": "receiver", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "token", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Refunded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "newImplementation", - "type": "address" - } - ], - "name": "Upgraded", - "type": "event" - }, - { - "inputs": [], - "name": "acceptOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "addExpressGas", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "addGas", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "addNativeExpressGas", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "addNativeGas", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address payable", - "name": "receiver", - "type": "address" - }, - { - "internalType": "address[]", - "name": "tokens", - "type": "address[]" - }, - { - "internalType": "uint256[]", - "name": "amounts", - "type": "uint256[]" - } - ], - "name": "collectFees", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "contractId", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "executionGasLimit", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "params", - "type": "bytes" - } - ], - "name": "estimateGasFee", - "outputs": [ - { - "internalType": "uint256", - "name": "gasEstimate", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "gasCollector", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "chain", - "type": "string" - } - ], - "name": "getGasInfo", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "gasEstimationType", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "l1FeeScalar", - "type": "uint64" - }, - { - "internalType": "uint128", - "name": "axelarBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeGasPrice", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeBlobBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "expressFee", - "type": "uint128" - } - ], - "internalType": "struct GasInfo", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "implementation", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "executionGasLimit", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "estimateOnChain", - "type": "bool" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "params", - "type": "bytes" - } - ], - "name": "payGas", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "payGasForContractCall", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "payGasForContractCallWithToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "payGasForExpressCall", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "gasToken", - "type": "address" - }, - { - "internalType": "uint256", - "name": "gasFeeAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "payGasForExpressCallWithToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "payNativeGasForContractCall", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "payNativeGasForContractCallWithToken", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "payNativeGasForExpressCall", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "refundAddress", - "type": "address" - } - ], - "name": "payNativeGasForExpressCallWithToken", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "pendingOwner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "proposeOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "logIndex", - "type": "uint256" - }, - { - "internalType": "address payable", - "name": "receiver", - "type": "address" - }, - { - "internalType": "address", - "name": "token", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "refund", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "setup", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string[]", - "name": "chains", - "type": "string[]" - }, - { - "components": [ - { - "internalType": "uint64", - "name": "gasEstimationType", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "l1FeeScalar", - "type": "uint64" - }, - { - "internalType": "uint128", - "name": "axelarBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeGasPrice", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeBlobBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "expressFee", - "type": "uint128" - } - ], - "internalType": "struct GasInfo[]", - "name": "gasUpdates", - "type": "tuple[]" - } - ], - "name": "updateGasInfo", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newImplementation", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "newImplementationCodeHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "params", - "type": "bytes" - } - ], - "name": "upgrade", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "acceptOwnership()": "79ba5097", - "addExpressGas(bytes32,uint256,address,uint256,address)": "2edd2aa8", - "addGas(bytes32,uint256,address,uint256,address)": "ab1999ba", - "addNativeExpressGas(bytes32,uint256,address)": "4d238489", - "addNativeGas(bytes32,uint256,address)": "cd433ada", - "collectFees(address,address[],uint256[])": "1055eaaf", - "contractId()": "8291286c", - "estimateGasFee(string,string,bytes,uint256,bytes)": "135eaa70", - "gasCollector()": "892b5007", - "getGasInfo(string)": "86389f02", - "implementation()": "5c60da1b", - "owner()": "8da5cb5b", - "payGas(address,string,string,bytes,uint256,bool,address,bytes)": "edf936f2", - "payGasForContractCall(address,string,string,bytes,address,uint256,address)": "fd09e3bd", - "payGasForContractCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)": "edb6b3a5", - "payGasForExpressCall(address,string,string,bytes,address,uint256,address)": "ba9ddc8d", - "payGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)": "17a49f7c", - "payNativeGasForContractCall(address,string,string,bytes,address)": "0c93e3bb", - "payNativeGasForContractCallWithToken(address,string,string,bytes,string,uint256,address)": "c62c2002", - "payNativeGasForExpressCall(address,string,string,bytes,address)": "f61ed218", - "payNativeGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address)": "2e9b7470", - "pendingOwner()": "e30c3978", - "proposeOwnership(address)": "710bf322", - "refund(bytes32,uint256,address,address,uint256)": "36504721", - "setup(bytes)": "9ded06df", - "transferOwnership(address)": "f2fde38b", - "updateGasInfo(string[],(uint64,uint64,uint128,uint128,uint128,uint128)[])": "d3b81f0c", - "upgrade(address,bytes32,bytes)": "a3499c73" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"required\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"provided\",\"type\":\"uint256\"}],\"name\":\"InsufficientGasPayment\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAmounts\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidCodeHash\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidGasUpdates\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidImplementation\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwnerAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidParams\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotCollector\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotProxy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SetupFailed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"enum GasEstimationType\",\"name\":\"gasEstimationType\",\"type\":\"uint8\"}],\"name\":\"UnsupportedEstimationType\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"ExpressGasAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"indexed\":false,\"internalType\":\"struct GasInfo\",\"name\":\"info\",\"type\":\"tuple\"}],\"name\":\"GasInfoUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasPaidForContractCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasPaidForContractCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasPaidForExpressCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"GasPaidForExpressCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeExpressGasAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasPaidForContractCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasPaidForContractCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasPaidForExpressCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sourceAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"NativeGasPaidForExpressCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address payable\",\"name\":\"receiver\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Refunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"addExpressGas\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"addGas\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"addNativeExpressGas\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"addNativeGas\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"receiver\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"tokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"}],\"name\":\"collectFees\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"executionGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"estimateGasFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"gasEstimate\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasCollector\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"}],\"name\":\"getGasInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"internalType\":\"struct GasInfo\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"executionGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"estimateOnChain\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"payGas\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payGasForContractCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payGasForContractCallWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payGasForExpressCall\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"gasToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"gasFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payGasForExpressCallWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payNativeGasForContractCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payNativeGasForContractCallWithToken\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payNativeGasForExpressCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"refundAddress\",\"type\":\"address\"}],\"name\":\"payNativeGasForExpressCallWithToken\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"proposeOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"logIndex\",\"type\":\"uint256\"},{\"internalType\":\"address payable\",\"name\":\"receiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"refund\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"chains\",\"type\":\"string[]\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"internalType\":\"struct GasInfo[]\",\"name\":\"gasUpdates\",\"type\":\"tuple[]\"}],\"name\":\"updateGasInfo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"newImplementationCodeHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This interface inherits IUpgradable\",\"events\":{\"GasInfoUpdated(string,(uint64,uint64,uint128,uint128,uint128,uint128))\":{\"params\":{\"chain\":\"The name of the chain\",\"info\":\"The gas info for the chain\"}}},\"kind\":\"dev\",\"methods\":{\"acceptOwnership()\":{\"details\":\"Can only be called by the pending owner\"},\"addExpressGas(bytes32,uint256,address,uint256,address)\":{\"details\":\"This function can be called on the source chain after calling the gateway to express execute a remote contract.\",\"params\":{\"gasFeeAmount\":\"The amount of tokens to add as gas\",\"gasToken\":\"The ERC20 token address used to add gas\",\"logIndex\":\"The log index for the cross-chain call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"addGas(bytes32,uint256,address,uint256,address)\":{\"details\":\"This function can be called on the source chain after calling the gateway to execute a remote contract.\",\"params\":{\"gasFeeAmount\":\"The amount of tokens to add as gas\",\"gasToken\":\"The ERC20 token address used to add gas\",\"logIndex\":\"The log index for the cross-chain call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"addNativeExpressGas(bytes32,uint256,address)\":{\"details\":\"This function can be called on the source chain after calling the gateway to express execute a remote contract.\",\"params\":{\"logIndex\":\"The log index for the cross-chain call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"addNativeGas(bytes32,uint256,address)\":{\"details\":\"This function can be called on the source chain after calling the gateway to execute a remote contract.\",\"params\":{\"logIndex\":\"The log index for the cross-chain call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"collectFees(address,address[],uint256[])\":{\"details\":\"Use address(0) as the token address for native currency.\",\"params\":{\"amounts\":\"Array of amounts to be collected for each respective token address\",\"receiver\":\"The address to receive the collected fees\",\"tokens\":\"Array of token addresses to be collected\"}},\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}},\"estimateGasFee(string,string,bytes,uint256,bytes)\":{\"params\":{\"destinationAddress\":\"Destination contract address being called\",\"destinationChain\":\"Axelar registered name of the destination chain\",\"executionGasLimit\":\"The gas limit to be used for the destination contract execution, e.g. pass in 200k if your app consumes needs upto 200k for this contract call\",\"params\":\"Additional parameters for the gas estimation\"},\"returns\":{\"gasEstimate\":\"The cross-chain gas estimate, in terms of source chain's native gas token that should be forwarded to the gas service.\"}},\"gasCollector()\":{\"returns\":{\"_0\":\"address of the gas collector\"}},\"getGasInfo(string)\":{\"params\":{\"chain\":\"The name of the chain\"},\"returns\":{\"_0\":\"gasInfo The gas info for the chain\"}},\"owner()\":{\"returns\":{\"_0\":\"address The address of the current owner\"}},\"payGas(address,string,string,bytes,uint256,bool,address,bytes)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.If estimateOnChain is true, the function will estimate the gas cost and revert if the payment is insufficient.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"estimateOnChain\":\"Flag to enable on-chain gas estimation\",\"executionGasLimit\":\"The gas limit for the contract call\",\"params\":\"Additional parameters for gas payment. This can be left empty for normal contract call payments.\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payGasForContractCall(address,string,string,bytes,address,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"gasFeeAmount\":\"The amount of tokens to pay for gas\",\"gasToken\":\"The address of the ERC20 token used to pay for gas\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payGasForContractCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"amount\":\"The amount of tokens to be sent with the call\",\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call with tokens will be made\",\"gasFeeAmount\":\"The amount of tokens to pay for gas\",\"gasToken\":\"The address of the ERC20 token used to pay for gas\",\"payload\":\"Data payload for the contract call with tokens\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\",\"symbol\":\"The symbol of the token to be sent with the call\"}},\"payGasForExpressCall(address,string,string,bytes,address,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to express execute a remote contract.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"gasFeeAmount\":\"The amount of tokens to pay for gas\",\"gasToken\":\"The address of the ERC20 token used to pay for gas\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to express execute a remote contract.\",\"params\":{\"amount\":\"The amount of tokens to be sent with the call\",\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call with tokens will be made\",\"gasFeeAmount\":\"The amount of tokens to pay for gas\",\"gasToken\":\"The address of the ERC20 token used to pay for gas\",\"payload\":\"Data payload for the contract call with tokens\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\",\"symbol\":\"The symbol of the token to be sent with the call\"}},\"payNativeGasForContractCall(address,string,string,bytes,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payNativeGasForContractCallWithToken(address,string,string,bytes,string,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"amount\":\"The amount of tokens to be sent with the call\",\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call with tokens will be made\",\"payload\":\"Data payload for the contract call with tokens\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\",\"symbol\":\"The symbol of the token to be sent with the call\"}},\"payNativeGasForExpressCall(address,string,string,bytes,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call will be made\",\"payload\":\"Data payload for the contract call\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\"}},\"payNativeGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address)\":{\"details\":\"This function is called on the source chain before calling the gateway to execute a remote contract.\",\"params\":{\"amount\":\"The amount of tokens to be sent with the call\",\"destinationAddress\":\"The target address on the destination chain\",\"destinationChain\":\"The target chain where the contract call with tokens will be made\",\"payload\":\"Data payload for the contract call with tokens\",\"refundAddress\":\"The address where refunds, if any, should be sent\",\"sender\":\"The address making the payment\",\"symbol\":\"The symbol of the token to be sent with the call\"}},\"pendingOwner()\":{\"returns\":{\"_0\":\"address The address of the pending owner\"}},\"proposeOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}},\"refund(bytes32,uint256,address,address,uint256)\":{\"details\":\"Only callable by the gasCollector.Use address(0) as the token address to refund native currency.\",\"params\":{\"amount\":\"The amount to refund\",\"logIndex\":\"The log index for the cross-chain call\",\"receiver\":\"The address to receive the refund\",\"token\":\"The token address to be refunded\",\"txHash\":\"The transaction hash of the cross-chain call\"}},\"transferOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}},\"updateGasInfo(string[],(uint64,uint64,uint128,uint128,uint128,uint128)[])\":{\"details\":\"This function is called by the gas oracle to update the gas prices for a specific chains.\",\"params\":{\"chains\":\"Array of chain names\",\"gasUpdates\":\"Array of gas updates\"}}},\"title\":\"IAxelarGasService Interface\",\"version\":1},\"userdoc\":{\"events\":{\"GasInfoUpdated(string,(uint64,uint64,uint128,uint128,uint128,uint128))\":{\"notice\":\"Event emitted when the gas price for a specific chain is updated.\"}},\"kind\":\"user\",\"methods\":{\"acceptOwnership()\":{\"notice\":\"Transfers ownership to the pending owner.\"},\"addExpressGas(bytes32,uint256,address,uint256,address)\":{\"notice\":\"Add additional gas payment using ERC20 tokens after initiating an express cross-chain call.\"},\"addGas(bytes32,uint256,address,uint256,address)\":{\"notice\":\"Add additional gas payment using ERC20 tokens after initiating a cross-chain call.\"},\"addNativeExpressGas(bytes32,uint256,address)\":{\"notice\":\"Add additional gas payment using native currency after initiating an express cross-chain call.\"},\"addNativeGas(bytes32,uint256,address)\":{\"notice\":\"Add additional gas payment using native currency after initiating a cross-chain call.\"},\"collectFees(address,address[],uint256[])\":{\"notice\":\"Allows the gasCollector to collect accumulated fees from the contract.\"},\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"},\"estimateGasFee(string,string,bytes,uint256,bytes)\":{\"notice\":\"Estimates the gas fee for a cross-chain contract call.\"},\"gasCollector()\":{\"notice\":\"Returns the address of the designated gas collector.\"},\"getGasInfo(string)\":{\"notice\":\"Returns the gas price for a specific chain.\"},\"owner()\":{\"notice\":\"Returns the current owner of the contract.\"},\"payGas(address,string,string,bytes,uint256,bool,address,bytes)\":{\"notice\":\"Pay for gas for any type of contract execution on a destination chain.\"},\"payGasForContractCall(address,string,string,bytes,address,uint256,address)\":{\"notice\":\"Pay for gas using ERC20 tokens for a contract call on a destination chain.\"},\"payGasForContractCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)\":{\"notice\":\"Pay for gas using ERC20 tokens for a contract call with tokens on a destination chain.\"},\"payGasForExpressCall(address,string,string,bytes,address,uint256,address)\":{\"notice\":\"Pay for gas using ERC20 tokens for an express contract call on a destination chain.\"},\"payGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address,uint256,address)\":{\"notice\":\"Pay for gas using ERC20 tokens for an express contract call with tokens on a destination chain.\"},\"payNativeGasForContractCall(address,string,string,bytes,address)\":{\"notice\":\"Pay for gas using native currency for a contract call on a destination chain.\"},\"payNativeGasForContractCallWithToken(address,string,string,bytes,string,uint256,address)\":{\"notice\":\"Pay for gas using native currency for a contract call with tokens on a destination chain.\"},\"payNativeGasForExpressCall(address,string,string,bytes,address)\":{\"notice\":\"Pay for gas using native currency for an express contract call on a destination chain.\"},\"payNativeGasForExpressCallWithToken(address,string,string,bytes,string,uint256,address)\":{\"notice\":\"Pay for gas using native currency for an express contract call with tokens on a destination chain.\"},\"pendingOwner()\":{\"notice\":\"Returns the address of the pending owner of the contract.\"},\"proposeOwnership(address)\":{\"notice\":\"Proposes to transfer the contract's ownership to a new address. The new owner needs to accept the ownership explicitly.\"},\"refund(bytes32,uint256,address,address,uint256)\":{\"notice\":\"Refunds gas payment to the receiver in relation to a specific cross-chain transaction.\"},\"transferOwnership(address)\":{\"notice\":\"Transfers ownership of the contract to a new address\"},\"updateGasInfo(string[],(uint64,uint64,uint128,uint128,uint128,uint128)[])\":{\"notice\":\"Updates the gas price for a specific chain.\"}},\"notice\":\"This is an interface for the AxelarGasService contract which manages gas payments and refunds for cross-chain communication on the Axelar network.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":\"IAxelarGasService\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":{\"keccak256\":\"0x7ad77d3af41f342e9032889a7b5aa224ab0c6dfaf9ce9350fe403d4a596c5eae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc2358f1f1138cd742a7cfdfc83420c488c19c3b3e39d703482e124e453953ee\",\"dweb:/ipfs/QmYki4j2yWrixJVs955DyS1ZmLD5zcxe8ss52w6DLBLRi4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol": { - "IAxelarGateway": { - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "BurnFailed", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "ExceedMintLimit", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidAmount", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidAuthModule", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidChainId", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidCodeHash", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidCommands", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidGovernance", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidMintLimiter", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidSetMintLimitsParams", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidTokenDeployer", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "MintFailed", - "type": "error" - }, - { - "inputs": [], - "name": "NotGovernance", - "type": "error" - }, - { - "inputs": [], - "name": "NotMintLimiter", - "type": "error" - }, - { - "inputs": [], - "name": "NotProxy", - "type": "error" - }, - { - "inputs": [], - "name": "NotSelf", - "type": "error" - }, - { - "inputs": [], - "name": "SetupFailed", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "TokenAlreadyExists", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "token", - "type": "address" - } - ], - "name": "TokenContractDoesNotExist", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "TokenDeployFailed", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "TokenDoesNotExist", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationContractAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "payload", - "type": "bytes" - } - ], - "name": "ContractCall", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "sourceTxHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "sourceEventIndex", - "type": "uint256" - } - ], - "name": "ContractCallApproved", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "sourceTxHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "sourceEventIndex", - "type": "uint256" - } - ], - "name": "ContractCallApprovedWithMint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - } - ], - "name": "ContractCallExecuted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationContractAddress", - "type": "string" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "indexed": false, - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "ContractCallWithToken", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - } - ], - "name": "Executed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousGovernance", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newGovernance", - "type": "address" - } - ], - "name": "GovernanceTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousGovernance", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newGovernance", - "type": "address" - } - ], - "name": "MintLimiterTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes", - "name": "newOperatorsData", - "type": "bytes" - } - ], - "name": "OperatorshipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "indexed": false, - "internalType": "address", - "name": "tokenAddresses", - "type": "address" - } - ], - "name": "TokenDeployed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "limit", - "type": "uint256" - } - ], - "name": "TokenMintLimitUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "TokenSent", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "implementation", - "type": "address" - } - ], - "name": "Upgraded", - "type": "event" - }, - { - "inputs": [], - "name": "allTokensFrozen", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "authModule", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "contractAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - } - ], - "name": "callContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "contractAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "callContractWithToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "contractId", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "input", - "type": "bytes" - } - ], - "name": "execute", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "governance", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "implementation", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - } - ], - "name": "isCommandExecuted", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "isContractCallAndMintApproved", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - } - ], - "name": "isContractCallApproved", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "mintLimiter", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "sendToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string[]", - "name": "symbols", - "type": "string[]" - }, - { - "internalType": "uint256[]", - "name": "limits", - "type": "uint256[]" - } - ], - "name": "setTokenMintLimits", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "setup", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "tokenAddresses", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "tokenDeployer", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "tokenFrozen", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "tokenMintAmount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "symbol", - "type": "string" - } - ], - "name": "tokenMintLimit", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newGovernance", - "type": "address" - } - ], - "name": "transferGovernance", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newGovernance", - "type": "address" - } - ], - "name": "transferMintLimiter", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newImplementation", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "newImplementationCodeHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "setupParams", - "type": "bytes" - } - ], - "name": "upgrade", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - } - ], - "name": "validateContractCall", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes32", - "name": "payloadHash", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "symbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "validateContractCallAndMint", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "allTokensFrozen()": "aa1e1f0a", - "authModule()": "64940c56", - "callContract(string,string,bytes)": "1c92115f", - "callContractWithToken(string,string,bytes,string,uint256)": "b5417084", - "contractId()": "8291286c", - "execute(bytes)": "09c5eabe", - "governance()": "5aa6e675", - "implementation()": "5c60da1b", - "isCommandExecuted(bytes32)": "d26ff210", - "isContractCallAndMintApproved(bytes32,string,string,address,bytes32,string,uint256)": "bc00c216", - "isContractCallApproved(bytes32,string,string,address,bytes32)": "f6a5f9f5", - "mintLimiter()": "c82fe87a", - "sendToken(string,string,string,uint256)": "26ef699d", - "setTokenMintLimits(string[],uint256[])": "67ace8eb", - "setup(bytes)": "9ded06df", - "tokenAddresses(string)": "935b13f6", - "tokenDeployer()": "2a2dae0a", - "tokenFrozen(string)": "7b1b769e", - "tokenMintAmount(string)": "cec7b359", - "tokenMintLimit(string)": "269eb65e", - "transferGovernance(address)": "d38bfff4", - "transferMintLimiter(address)": "41d8f26b", - "upgrade(address,bytes32,bytes)": "a3499c73", - "validateContractCall(bytes32,string,string,bytes32)": "5f6970c3", - "validateContractCallAndMint(bytes32,string,string,bytes32,string,uint256)": "1876eed9" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"BurnFailed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"ExceedMintLimit\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAmount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAuthModule\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidChainId\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidCodeHash\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidCommands\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidGovernance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidMintLimiter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidSetMintLimitsParams\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidTokenDeployer\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"MintFailed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotGovernance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotMintLimiter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotProxy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotSelf\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SetupFailed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"TokenAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenContractDoesNotExist\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"TokenDeployFailed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"TokenDoesNotExist\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationContractAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"ContractCall\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"sourceTxHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"sourceEventIndex\",\"type\":\"uint256\"}],\"name\":\"ContractCallApproved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"sourceTxHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"sourceEventIndex\",\"type\":\"uint256\"}],\"name\":\"ContractCallApprovedWithMint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"}],\"name\":\"ContractCallExecuted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationContractAddress\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"ContractCallWithToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"}],\"name\":\"Executed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousGovernance\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"GovernanceTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousGovernance\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"MintLimiterTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"newOperatorsData\",\"type\":\"bytes\"}],\"name\":\"OperatorshipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tokenAddresses\",\"type\":\"address\"}],\"name\":\"TokenDeployed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"limit\",\"type\":\"uint256\"}],\"name\":\"TokenMintLimitUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"TokenSent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"allTokensFrozen\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"authModule\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"contractAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"callContract\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"contractAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"callContractWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"input\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"governance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"}],\"name\":\"isCommandExecuted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"isContractCallAndMintApproved\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"}],\"name\":\"isContractCallApproved\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"mintLimiter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"sendToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"symbols\",\"type\":\"string[]\"},{\"internalType\":\"uint256[]\",\"name\":\"limits\",\"type\":\"uint256[]\"}],\"name\":\"setTokenMintLimits\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"tokenAddresses\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"tokenDeployer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"tokenFrozen\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"tokenMintAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"}],\"name\":\"tokenMintLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"transferGovernance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"transferMintLimiter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"newImplementationCodeHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"setupParams\",\"type\":\"bytes\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"}],\"name\":\"validateContractCall\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"payloadHash\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"validateContractCallAndMint\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}},\"governance()\":{\"returns\":{\"_0\":\"address of the governance\"}},\"mintLimiter()\":{\"returns\":{\"_0\":\"address of the mint limiter\"}},\"transferGovernance(address)\":{\"params\":{\"newGovernance\":\"The new governance address\"}},\"transferMintLimiter(address)\":{\"params\":{\"newGovernance\":\"The new mint limiter address\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"},\"governance()\":{\"notice\":\"Returns the governance address.\"},\"mintLimiter()\":{\"notice\":\"Returns the mint limiter address.\"},\"transferGovernance(address)\":{\"notice\":\"Transfer the governance role to another address.\"},\"transferMintLimiter(address)\":{\"notice\":\"Transfer the mint limiter role to another address.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":\"IAxelarGateway\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol": { - "IContractIdentifier": { - "abi": [ - { - "inputs": [], - "name": "contractId", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "contractId()": "8291286c" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":\"IContractIdentifier\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol": { - "IERC20": { - "abi": [ - { - "inputs": [], - "name": "InvalidAccount", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "recipient", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "address", - "name": "recipient", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "allowance(address,address)": "dd62ed3e", - "approve(address,uint256)": "095ea7b3", - "balanceOf(address)": "70a08231", - "totalSupply()": "18160ddd", - "transfer(address,uint256)": "a9059cbb", - "transferFrom(address,address,uint256)": "23b872dd" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 standard as defined in the EIP.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `sender` to `recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\":\"IERC20\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xb77ad755f4eade679279d5ca12b6926595e41e17387e143530f4fb57672d58d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b0d01d0810d12dba98839b084440ab9b52e04d94e9431a6ffadabb1651d0f100\",\"dweb:/ipfs/Qme9KLMtbmNvsAj2giGTzNFKAymkMJq88Ef445pLiawKWa\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol": { - "IGovernable": { - "abi": [ - { - "inputs": [], - "name": "InvalidGovernance", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidMintLimiter", - "type": "error" - }, - { - "inputs": [], - "name": "NotGovernance", - "type": "error" - }, - { - "inputs": [], - "name": "NotMintLimiter", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousGovernance", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newGovernance", - "type": "address" - } - ], - "name": "GovernanceTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousGovernance", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newGovernance", - "type": "address" - } - ], - "name": "MintLimiterTransferred", - "type": "event" - }, - { - "inputs": [], - "name": "governance", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "mintLimiter", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newGovernance", - "type": "address" - } - ], - "name": "transferGovernance", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newGovernance", - "type": "address" - } - ], - "name": "transferMintLimiter", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "governance()": "5aa6e675", - "mintLimiter()": "c82fe87a", - "transferGovernance(address)": "d38bfff4", - "transferMintLimiter(address)": "41d8f26b" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidGovernance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidMintLimiter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotGovernance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotMintLimiter\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousGovernance\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"GovernanceTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousGovernance\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"MintLimiterTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"governance\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"mintLimiter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"transferGovernance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newGovernance\",\"type\":\"address\"}],\"name\":\"transferMintLimiter\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"governance()\":{\"returns\":{\"_0\":\"address of the governance\"}},\"mintLimiter()\":{\"returns\":{\"_0\":\"address of the mint limiter\"}},\"transferGovernance(address)\":{\"params\":{\"newGovernance\":\"The new governance address\"}},\"transferMintLimiter(address)\":{\"params\":{\"newGovernance\":\"The new mint limiter address\"}}},\"title\":\"IGovernable Interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"governance()\":{\"notice\":\"Returns the governance address.\"},\"mintLimiter()\":{\"notice\":\"Returns the mint limiter address.\"},\"transferGovernance(address)\":{\"notice\":\"Transfer the governance role to another address.\"},\"transferMintLimiter(address)\":{\"notice\":\"Transfer the mint limiter role to another address.\"}},\"notice\":\"This is an interface used by the AxelarGateway contract to manage governance and mint limiter roles.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":\"IGovernable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol": { - "IImplementation": { - "abi": [ - { - "inputs": [], - "name": "NotProxy", - "type": "error" - }, - { - "inputs": [], - "name": "contractId", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "setup", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "contractId()": "8291286c", - "setup(bytes)": "9ded06df" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"NotProxy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":\"IImplementation\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol": { - "IInterchainGasEstimation": { - "abi": [ - { - "inputs": [ - { - "internalType": "enum GasEstimationType", - "name": "gasEstimationType", - "type": "uint8" - } - ], - "name": "UnsupportedEstimationType", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "chain", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint64", - "name": "gasEstimationType", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "l1FeeScalar", - "type": "uint64" - }, - { - "internalType": "uint128", - "name": "axelarBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeGasPrice", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeBlobBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "expressFee", - "type": "uint128" - } - ], - "indexed": false, - "internalType": "struct GasInfo", - "name": "info", - "type": "tuple" - } - ], - "name": "GasInfoUpdated", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "executionGasLimit", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "params", - "type": "bytes" - } - ], - "name": "estimateGasFee", - "outputs": [ - { - "internalType": "uint256", - "name": "gasEstimate", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "chain", - "type": "string" - } - ], - "name": "getGasInfo", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "gasEstimationType", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "l1FeeScalar", - "type": "uint64" - }, - { - "internalType": "uint128", - "name": "axelarBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeGasPrice", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "relativeBlobBaseFee", - "type": "uint128" - }, - { - "internalType": "uint128", - "name": "expressFee", - "type": "uint128" - } - ], - "internalType": "struct GasInfo", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "estimateGasFee(string,string,bytes,uint256,bytes)": "135eaa70", - "getGasInfo(string)": "86389f02" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"enum GasEstimationType\",\"name\":\"gasEstimationType\",\"type\":\"uint8\"}],\"name\":\"UnsupportedEstimationType\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"indexed\":false,\"internalType\":\"struct GasInfo\",\"name\":\"info\",\"type\":\"tuple\"}],\"name\":\"GasInfoUpdated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"executionGasLimit\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"estimateGasFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"gasEstimate\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"chain\",\"type\":\"string\"}],\"name\":\"getGasInfo\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"gasEstimationType\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"l1FeeScalar\",\"type\":\"uint64\"},{\"internalType\":\"uint128\",\"name\":\"axelarBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeGasPrice\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"relativeBlobBaseFee\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"expressFee\",\"type\":\"uint128\"}],\"internalType\":\"struct GasInfo\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"GasInfoUpdated(string,(uint64,uint64,uint128,uint128,uint128,uint128))\":{\"params\":{\"chain\":\"The name of the chain\",\"info\":\"The gas info for the chain\"}}},\"kind\":\"dev\",\"methods\":{\"estimateGasFee(string,string,bytes,uint256,bytes)\":{\"params\":{\"destinationAddress\":\"Destination contract address being called\",\"destinationChain\":\"Axelar registered name of the destination chain\",\"executionGasLimit\":\"The gas limit to be used for the destination contract execution, e.g. pass in 200k if your app consumes needs upto 200k for this contract call\",\"params\":\"Additional parameters for the gas estimation\"},\"returns\":{\"gasEstimate\":\"The cross-chain gas estimate, in terms of source chain's native gas token that should be forwarded to the gas service.\"}},\"getGasInfo(string)\":{\"params\":{\"chain\":\"The name of the chain\"},\"returns\":{\"_0\":\"gasInfo The gas info for the chain\"}}},\"title\":\"IInterchainGasEstimation Interface\",\"version\":1},\"userdoc\":{\"events\":{\"GasInfoUpdated(string,(uint64,uint64,uint128,uint128,uint128,uint128))\":{\"notice\":\"Event emitted when the gas price for a specific chain is updated.\"}},\"kind\":\"user\",\"methods\":{\"estimateGasFee(string,string,bytes,uint256,bytes)\":{\"notice\":\"Estimates the gas fee for a cross-chain contract call.\"},\"getGasInfo(string)\":{\"notice\":\"Returns the gas price for a specific chain.\"}},\"notice\":\"This is an interface for the InterchainGasEstimation contract which allows for estimating gas fees for cross-chain communication on the Axelar network.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":\"IInterchainGasEstimation\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol": { - "IOwnable": { - "abi": [ - { - "inputs": [], - "name": "InvalidOwner", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidOwnerAddress", - "type": "error" - }, - { - "inputs": [], - "name": "NotOwner", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferStarted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "inputs": [], - "name": "acceptOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pendingOwner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "proposeOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "acceptOwnership()": "79ba5097", - "owner()": "8da5cb5b", - "pendingOwner()": "e30c3978", - "proposeOwnership(address)": "710bf322", - "transferOwnership(address)": "f2fde38b" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwnerAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotOwner\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"proposeOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"acceptOwnership()\":{\"details\":\"Can only be called by the pending owner\"},\"owner()\":{\"returns\":{\"_0\":\"address The address of the current owner\"}},\"pendingOwner()\":{\"returns\":{\"_0\":\"address The address of the pending owner\"}},\"proposeOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}},\"transferOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}}},\"title\":\"IOwnable Interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"acceptOwnership()\":{\"notice\":\"Transfers ownership to the pending owner.\"},\"owner()\":{\"notice\":\"Returns the current owner of the contract.\"},\"pendingOwner()\":{\"notice\":\"Returns the address of the pending owner of the contract.\"},\"proposeOwnership(address)\":{\"notice\":\"Proposes to transfer the contract's ownership to a new address. The new owner needs to accept the ownership explicitly.\"},\"transferOwnership(address)\":{\"notice\":\"Transfers ownership of the contract to a new address\"}},\"notice\":\"IOwnable is an interface that abstracts the implementation of a contract with ownership control features. It's commonly used in upgradable contracts and includes the functionality to get current owner, transfer ownership, and propose and accept ownership.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":\"IOwnable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol": { - "IUpgradable": { - "abi": [ - { - "inputs": [], - "name": "InvalidCodeHash", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidImplementation", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidOwner", - "type": "error" - }, - { - "inputs": [], - "name": "InvalidOwnerAddress", - "type": "error" - }, - { - "inputs": [], - "name": "NotOwner", - "type": "error" - }, - { - "inputs": [], - "name": "NotProxy", - "type": "error" - }, - { - "inputs": [], - "name": "SetupFailed", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferStarted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "newImplementation", - "type": "address" - } - ], - "name": "Upgraded", - "type": "event" - }, - { - "inputs": [], - "name": "acceptOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "contractId", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "implementation", - "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": "pendingOwner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "proposeOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "setup", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newImplementation", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "newImplementationCodeHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "params", - "type": "bytes" - } - ], - "name": "upgrade", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "acceptOwnership()": "79ba5097", - "contractId()": "8291286c", - "implementation()": "5c60da1b", - "owner()": "8da5cb5b", - "pendingOwner()": "e30c3978", - "proposeOwnership(address)": "710bf322", - "setup(bytes)": "9ded06df", - "transferOwnership(address)": "f2fde38b", - "upgrade(address,bytes32,bytes)": "a3499c73" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidCodeHash\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidImplementation\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidOwnerAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotProxy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SetupFailed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"contractId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"implementation\",\"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\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"proposeOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setup\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"newImplementationCodeHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"params\",\"type\":\"bytes\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"acceptOwnership()\":{\"details\":\"Can only be called by the pending owner\"},\"contractId()\":{\"details\":\"Meant to be overridden in derived contracts.\",\"returns\":{\"_0\":\"bytes32 The contract ID\"}},\"owner()\":{\"returns\":{\"_0\":\"address The address of the current owner\"}},\"pendingOwner()\":{\"returns\":{\"_0\":\"address The address of the pending owner\"}},\"proposeOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}},\"transferOwnership(address)\":{\"params\":{\"newOwner\":\"The address to transfer ownership to\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"acceptOwnership()\":{\"notice\":\"Transfers ownership to the pending owner.\"},\"contractId()\":{\"notice\":\"Returns the contract ID. It can be used as a check during upgrades.\"},\"owner()\":{\"notice\":\"Returns the current owner of the contract.\"},\"pendingOwner()\":{\"notice\":\"Returns the address of the pending owner of the contract.\"},\"proposeOwnership(address)\":{\"notice\":\"Proposes to transfer the contract's ownership to a new address. The new owner needs to accept the ownership explicitly.\"},\"transferOwnership(address)\":{\"notice\":\"Transfers ownership of the contract to a new address\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":\"IUpgradable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]}},\"version\":1}" - } - }, - "@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol": { - "AddressToString": { - "abi": [], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220344d5d7d03867545e41e5e9b1425a90733df980809859cce545408175a7714ea64736f6c63430008140033", - "opcodes": "PUSH1 0x56 PUSH1 0x37 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x2A JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 CALLVALUE 0x4D 0x5D PUSH30 0x3867545E41E5E9B1425A90733DF980809859CCE545408175A7714EA6473 PUSH16 0x6C634300081400330000000000000000 ", - "sourceMap": "961:587:11:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;961:587:11;;;;;;;;;;;;;;;;;" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220344d5d7d03867545e41e5e9b1425a90733df980809859cce545408175a7714ea64736f6c63430008140033", - "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 CALLVALUE 0x4D 0x5D PUSH30 0x3867545E41E5E9B1425A90733DF980809859CCE545408175A7714EA6473 PUSH16 0x6C634300081400330000000000000000 ", - "sourceMap": "961:587:11:-:0;;;;;;;;" - }, - "methodIdentifiers": {} - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":\"AddressToString\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]}},\"version\":1}" - }, - "StringToAddress": { - "abi": [ - { - "inputs": [], - "name": "InvalidAddressString", - "type": "error" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212207a8b11ff93dc89f960738154eb30d9ae302ae63fa91a1b9fe38bbcfd8407a8ee64736f6c63430008140033", - "opcodes": "PUSH1 0x56 PUSH1 0x37 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x2A JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH27 0x8B11FF93DC89F960738154EB30D9AE302AE63FA91A1B9FE38BBCFD DUP5 SMOD 0xA8 0xEE PUSH5 0x736F6C6343 STOP ADDMOD EQ STOP CALLER ", - "sourceMap": "58:901:11:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:901:11;;;;;;;;;;;;;;;;;" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212207a8b11ff93dc89f960738154eb30d9ae302ae63fa91a1b9fe38bbcfd8407a8ee64736f6c63430008140033", - "opcodes": "PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH27 0x8B11FF93DC89F960738154EB30D9AE302AE63FA91A1B9FE38BBCFD DUP5 SMOD 0xA8 0xEE PUSH5 0x736F6C6343 STOP ADDMOD EQ STOP CALLER ", - "sourceMap": "58:901:11:-:0;;;;;;;;" - }, - "methodIdentifiers": {} - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidAddressString\",\"type\":\"error\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":\"StringToAddress\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]}},\"version\":1}" - } - }, - "src/__tests__/contracts/AgoricProxy.sol": { - "AgoricProxy": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "gateway_", - "type": "address" - }, - { - "internalType": "address", - "name": "gasReceiver_", - "type": "address" - }, - { - "internalType": "string", - "name": "chainName_", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "InvalidAddress", - "type": "error" - }, - { - "inputs": [], - "name": "NotApprovedByGateway", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "payload", - "type": "bytes" - } - ], - "name": "CrossChainCallSent", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Received", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "wallet", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "owner", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourceAddress", - "type": "string" - } - ], - "name": "SmartWalletCreated", - "type": "event" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "inputs": [], - "name": "chainName", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "owner", - "type": "string" - } - ], - "name": "createSmartWallet", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - } - ], - "name": "execute", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "tokenSymbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "executeWithToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "gasService", - "outputs": [ - { - "internalType": "contract IAxelarGasService", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "gateway", - "outputs": [ - { - "internalType": "contract IAxelarGateway", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" - } - ], - "evm": { - "bytecode": { - "functionDebugData": { - "@_1811": { - "entryPoint": null, - "id": 1811, - "parameterSlots": 3, - "returnSlots": 0 - }, - "@_32": { - "entryPoint": null, - "id": 32, - "parameterSlots": 1, - "returnSlots": 0 - }, - "abi_decode_address_fromMemory": { - "entryPoint": 160, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory": { - "entryPoint": 211, - "id": null, - "parameterSlots": 2, - "returnSlots": 3 - }, - "array_dataslot_string_storage": { - "entryPoint": null, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "clean_up_bytearray_end_slots_string_storage": { - "entryPoint": 521, - "id": null, - "parameterSlots": 3, - "returnSlots": 0 - }, - "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { - "entryPoint": 604, - "id": null, - "parameterSlots": 2, - "returnSlots": 0 - }, - "extract_byte_array_length": { - "entryPoint": 461, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "extract_used_part_and_set_length_of_short_byte_array": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "panic_error_0x41": { - "entryPoint": 189, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - } - }, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:4131:16", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:16", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "74:117:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "84:22:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "99:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "93:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "93:13:16" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "84:5:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "169:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "178:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "181:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "171:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "171:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "171:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "128:5:16" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "139:5:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "154:3:16", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "159:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "150:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "150:11:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "163:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "146:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "146:19:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "135:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "135:31:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "125:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "125:42:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "118:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "118:50:16" - }, - "nodeType": "YulIf", - "src": "115:70:16" - } - ] - }, - "name": "abi_decode_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "53:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "64:5:16", - "type": "" - } - ], - "src": "14:177:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "228:95:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "245:1:16", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "252:3:16", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "257:10:16", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "248:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "248:20:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "238:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "238:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "238:31:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "285:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "288:4:16", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "278:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "278:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "278:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "309:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "312:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "302:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "302:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "302:15:16" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "196:127:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "453:1087:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "499:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "508:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "511:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "501:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "501:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "501:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "474:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "483:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "470:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "470:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "495:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "466:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "466:32:16" - }, - "nodeType": "YulIf", - "src": "463:52:16" - }, - { - "nodeType": "YulAssignment", - "src": "524:50:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "564:9:16" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "534:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "534:40:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "524:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "583:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "593:2:16", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "587:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "604:59:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "648:9:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "659:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "644:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "644:18:16" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "614:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "614:49:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "604:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "672:39:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "696:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "707:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "692:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "692:18:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "686:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "686:25:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "676:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "720:28:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "738:2:16", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "742:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "734:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "734:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "746:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "730:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "730:18:16" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "724:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "775:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "784:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "787:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "777:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "777:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "777:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "763:6:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "771:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "760:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "760:14:16" - }, - "nodeType": "YulIf", - "src": "757:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "800:32:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "814:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "825:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "810:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "810:22:16" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "804:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "880:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "889:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "892:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "882:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "882:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "882:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "859:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "863:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "855:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "855:13:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "870:7:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "851:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "851:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "844:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "844:35:16" - }, - "nodeType": "YulIf", - "src": "841:55:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "905:19:16", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "921:2:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "915:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "915:9:16" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "909:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "947:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "949:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "949:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "949:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "939:2:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "943:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "936:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "936:10:16" - }, - "nodeType": "YulIf", - "src": "933:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "978:17:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "992:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "988:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "988:7:16" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "982:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1004:23:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1024:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1018:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "1018:9:16" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1008:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1036:71:16", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1058:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1082:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1086:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1078:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1078:13:16" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "1093:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1074:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1074:22:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1098:2:16", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1070:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1070:31:16" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "1103:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1066:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1066:40:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1054:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1054:53:16" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1040:10:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1166:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1168:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "1168:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1168:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1125:10:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1137:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1122:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1122:18:16" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1145:10:16" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1157:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1142:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1142:22:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1119:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1119:46:16" - }, - "nodeType": "YulIf", - "src": "1116:72:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1204:2:16", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1208:10:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1197:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1197:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1197:22:16" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1235:6:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1243:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1228:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1228:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1228:18:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1292:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1301:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1304:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1294:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1294:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1294:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1269:2:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1273:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1265:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1265:11:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1278:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1261:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1261:20:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1283:7:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1258:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1258:33:16" - }, - "nodeType": "YulIf", - "src": "1255:53:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1317:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1326:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "1321:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1382:83:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1411:6:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1419:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1407:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1407:14:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1423:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1403:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1403:23:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1442:2:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1446:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1438:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1438:10:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1450:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1434:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1434:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1428:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "1428:26:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1396:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1396:59:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1396:59:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1347:1:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1350:2:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1344:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1344:9:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "1354:19:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1356:15:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1365:1:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1368:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1361:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1361:10:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1356:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "1340:3:16", - "statements": [] - }, - "src": "1336:129:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1489:6:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1497:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1485:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1485:15:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1502:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1481:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1481:24:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1507:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1474:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1474:35:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1474:35:16" - }, - { - "nodeType": "YulAssignment", - "src": "1518:16:16", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1528:6:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1518:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "403:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "414:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "426:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "434:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "442:6:16", - "type": "" - } - ], - "src": "328:1212:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1600:325:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1610:22:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1624:1:16", - "type": "", - "value": "1" - }, - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "1627:4:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "1620:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1620:12:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1610:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1641:38:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "1671:4:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1677:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1667:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1667:12:16" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "1645:18:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1718:31:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1720:27:16", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1734:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1742:4:16", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1730:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1730:17:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1720:6:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "1698:18:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1691:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1691:26:16" - }, - "nodeType": "YulIf", - "src": "1688:61:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1808:111:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1829:1:16", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1836:3:16", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1841:10:16", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1832:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1832:20:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1822:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1822:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1822:31:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1873:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1876:4:16", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1866:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1866:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1866:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1901:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1904:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1894:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1894:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1894:15:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "1764:18:16" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1787:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1795:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1784:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1784:14:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "1761:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1761:38:16" - }, - "nodeType": "YulIf", - "src": "1758:161:16" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "1580:4:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1589:6:16", - "type": "" - } - ], - "src": "1545:380:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1986:65:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2003:1:16", - "type": "", - "value": "0" - }, - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "2006:3:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1996:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1996:14:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1996:14:16" - }, - { - "nodeType": "YulAssignment", - "src": "2019:26:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2037:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2040:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "2027:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "2027:18:16" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2019:4:16" - } - ] - } - ] - }, - "name": "array_dataslot_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "1969:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "1977:4:16", - "type": "" - } - ], - "src": "1930:121:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2137:464:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2170:425:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2184:11:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2194:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2188:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2215:2:16" - }, - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "2219:5:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2208:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2208:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2208:17:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2238:31:16", - "value": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2260:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2264:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "2250:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "2250:19:16" - }, - "variables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "2242:4:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2282:57:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2305:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2315:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "2322:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2334:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2318:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2318:19:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "2311:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2311:27:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2301:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2301:38:16" - }, - "variables": [ - { - "name": "deleteStart", - "nodeType": "YulTypedName", - "src": "2286:11:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2376:23:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2378:19:16", - "value": { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2393:4:16" - }, - "variableNames": [ - { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "2378:11:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "2358:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2370:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2355:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2355:20:16" - }, - "nodeType": "YulIf", - "src": "2352:47:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2412:41:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2426:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2436:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2443:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2448:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2439:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2439:12:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "2432:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2432:20:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2422:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2422:31:16" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "2416:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2466:24:16", - "value": { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "2479:11:16" - }, - "variables": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "2470:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2564:21:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2573:5:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2580:2:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "2566:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2566:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2566:17:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2514:5:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2521:2:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2511:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2511:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "2525:26:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2527:22:16", - "value": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2540:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2547:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2536:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2536:13:16" - }, - "variableNames": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2527:5:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "2507:3:16", - "statements": [] - }, - "src": "2503:82:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2153:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2158:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2150:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2150:11:16" - }, - "nodeType": "YulIf", - "src": "2147:448:16" - } - ] - }, - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "2109:5:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "2116:3:16", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "2121:10:16", - "type": "" - } - ], - "src": "2056:545:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2691:81:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2701:65:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2716:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2734:1:16", - "type": "", - "value": "3" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2737:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2730:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2730:11:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2747:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2743:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2743:6:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "2726:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2726:24:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2722:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2722:29:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2712:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2712:40:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2758:1:16", - "type": "", - "value": "1" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2761:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2754:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2754:11:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "2709:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2709:57:16" - }, - "variableNames": [ - { - "name": "used", - "nodeType": "YulIdentifier", - "src": "2701:4:16" - } - ] - } - ] - }, - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "2668:4:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "2674:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "used", - "nodeType": "YulTypedName", - "src": "2682:4:16", - "type": "" - } - ], - "src": "2606:166:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2873:1256:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2883:24:16", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "2903:3:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2897:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "2897:10:16" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "2887:6:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2950:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "2952:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "2952:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2952:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "2922:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2938:2:16", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2942:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2934:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2934:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2946:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2930:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2930:18:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2919:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2919:30:16" - }, - "nodeType": "YulIf", - "src": "2916:56:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3025:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3063:4:16" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "3057:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3057:11:16" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "3031:25:16" - }, - "nodeType": "YulFunctionCall", - "src": "3031:38:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3071:6:16" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulIdentifier", - "src": "2981:43:16" - }, - "nodeType": "YulFunctionCall", - "src": "2981:97:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2981:97:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3087:18:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3104:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "3091:9:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3114:23:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3133:4:16", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "3118:11:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3146:24:16", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "3159:11:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3146:9:16" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3216:656:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3230:35:16", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3249:6:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3261:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3257:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3257:7:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3245:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3245:20:16" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "3234:7:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3278:49:16", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3322:4:16" - } - ], - "functionName": { - "name": "array_dataslot_string_storage", - "nodeType": "YulIdentifier", - "src": "3292:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "3292:35:16" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "3282:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3340:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3349:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "3344:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3427:172:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3452:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3470:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3475:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3466:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3466:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3460:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3460:26:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "3445:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3445:42:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3445:42:16" - }, - { - "nodeType": "YulAssignment", - "src": "3504:24:16", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3518:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3526:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3514:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3514:14:16" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3504:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3545:40:16", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3562:9:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "3573:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3558:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3558:27:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3545:9:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3374:1:16" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "3377:7:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "3371:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3371:14:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "3386:28:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3388:24:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3397:1:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "3400:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3393:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3393:19:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3388:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "3367:3:16", - "statements": [] - }, - "src": "3363:236:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3647:166:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3665:43:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3692:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3697:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3688:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3688:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3682:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3682:26:16" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "3669:9:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3732:6:16" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "3744:9:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3771:1:16", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3774:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3767:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3767:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3783:3:16", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3763:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3763:24:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3793:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3789:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3789:6:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "3759:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3759:37:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3755:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3755:42:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3740:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3740:58:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "3725:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3725:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3725:74:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "3618:7:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3627:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "3615:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3615:19:16" - }, - "nodeType": "YulIf", - "src": "3612:201:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3833:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3847:1:16", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3850:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3843:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3843:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3859:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3839:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3839:22:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "3826:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3826:36:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3826:36:16" - } - ] - }, - "nodeType": "YulCase", - "src": "3209:663:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3214:1:16", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3889:234:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3903:14:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3916:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3907:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3952:67:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3970:35:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3989:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3994:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3985:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3985:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3979:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3979:26:16" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3970:5:16" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3933:6:16" - }, - "nodeType": "YulIf", - "src": "3930:89:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "4039:4:16" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4098:5:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "4105:6:16" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "4045:52:16" - }, - "nodeType": "YulFunctionCall", - "src": "4045:67:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "4032:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4032:81:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4032:81:16" - } - ] - }, - "nodeType": "YulCase", - "src": "3881:242:16", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3189:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3197:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3186:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3186:14:16" - }, - "nodeType": "YulSwitch", - "src": "3179:944:16" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "2858:4:16", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "2864:3:16", - "type": "" - } - ], - "src": "2777:1352:16" - } - ] - }, - "contents": "{\n { }\n function abi_decode_address_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := abi_decode_address_fromMemory(headStart)\n let _1 := 32\n value1 := abi_decode_address_fromMemory(add(headStart, _1))\n let offset := mload(add(headStart, 64))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := mload(_3)\n if gt(_4, _2) { panic_error_0x41() }\n let _5 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_4, 0x1f), _5), 63), _5))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _4)\n if gt(add(add(_3, _4), _1), dataEnd) { revert(0, 0) }\n let i := 0\n for { } lt(i, _4) { i := add(i, _1) }\n {\n mstore(add(add(memPtr, i), _1), mload(add(add(_3, i), _1)))\n }\n mstore(add(add(memPtr, _4), _1), 0)\n value2 := memPtr\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n}", - "id": 16, - "language": "Yul", - "name": "#utility.yul" - } - ], - "linkReferences": {}, - "object": "60c06040523480156200001157600080fd5b5060405162002bf938038062002bf98339810160408190526200003491620000d3565b826001600160a01b0381166200005d5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0390811660805282811660a052600080546001600160a01b03191691851691909117905560016200009682826200025c565b5050505062000328565b80516001600160a01b0381168114620000b857600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600060608486031215620000e957600080fd5b620000f484620000a0565b9250602062000105818601620000a0565b60408601519093506001600160401b03808211156200012357600080fd5b818701915087601f8301126200013857600080fd5b8151818111156200014d576200014d620000bd565b604051601f8201601f19908116603f01168101908382118183101715620001785762000178620000bd565b816040528281528a868487010111156200019157600080fd5b600093505b82841015620001b5578484018601518185018701529285019262000196565b60008684830101528096505050505050509250925092565b600181811c90821680620001e257607f821691505b6020821081036200020357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200025757600081815260208120601f850160051c81016020861015620002325750805b601f850160051c820191505b8181101562000253578281556001016200023e565b5050505b505050565b81516001600160401b03811115620002785762000278620000bd565b6200029081620002898454620001cd565b8462000209565b602080601f831160018114620002c85760008415620002af5750858301515b600019600386901b1c1916600185901b17855562000253565b600085815260208120601f198616915b82811015620002f957888601518255948401946001909101908401620002d8565b5085821015620003185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a05161288962000370600039600081816101f001528181610525015261079f01526000818160f80152818161026b0152818161042b015261085901526128896000f3fe608060405260043610620000735760003560e01c80634916065811620000495780634916065814620001925780635e8846f614620001b75780636a22d8cc14620001dc57620000b1565b8063116191b614620000e45780631a98b2e014620001445780631c93b03a146200016b57620000b1565b36620000b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587490602001620000a7565b348015620000f157600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156200015157600080fd5b50620001696200016336600462000971565b62000212565b005b3480156200017857600080fd5b50620001836200033c565b6040516200013b919062000aca565b3480156200019f57600080fd5b5062000169620001b136600462000ae6565b620003d2565b348015620001c457600080fd5b506200011a620001d636600462000bc3565b62000503565b348015620001e957600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b600085856040516200022692919062000c9c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed990620002b2908e908e908e908e908e9089908d908d908d9060040162000cf5565b6020604051808303816000875af1158015620002d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f8919062000d5a565b6200032f576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600180546200034b9062000d7e565b80601f0160208091040260200160405190810160405280929190818152602001828054620003799062000d7e565b8015620003ca5780601f106200039e57610100808354040283529160200191620003ca565b820191906000526020600020905b815481529060010190602001808311620003ac57829003601f168201915b505050505081565b60008282604051620003e692919062000c9c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906200046c908b908b908b908b908b90899060040162000dd3565b6020604051808303816000875af11580156200048c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004b2919062000d5a565b620004e9576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620004f987878787878762000590565b5050505050505050565b60008054604051829173ffffffffffffffffffffffffffffffffffffffff16907f0000000000000000000000000000000000000000000000000000000000000000908590620005529062000917565b620005609392919062000e18565b604051809103906000f0801580156200057d573d6000803e3d6000fd5b509392505050565b505050505050505050565b6000620005d385858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506200050392505050565b90508073ffffffffffffffffffffffffffffffffffffffff167f9281645ccd9d592d9f6456fd9b95f6d2e0d36ebcc2f387399d5ac2b7c7ad7e6e86868a8a8a8a604051620006279695949392919062000e5c565b60405180910390a2604080516001808252818301909252600091816020015b604080518082019091526000815260606020820152815260200190600190039081620006465790505060408051808201825260018152815173ffffffffffffffffffffffffffffffffffffffff861660208281019190915293945090928301910160405160208183030381529060405281525081600081518110620006cf57620006cf62000eab565b602002602001018190525060008060e01b6040518060400160405280600015158152602001848152506040516020016200070a919062000eda565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905262000748929160200162000f88565b60405160208183030381529060405290506200058589898989856040517f0c93e3bb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690630c93e3bb9066038d7ea4c6800090620007eb9030908a908a908a908a908a90869060040162000fd2565b6000604051808303818588803b1580156200080557600080fd5b505af11580156200081a573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506200089b91508890889088908890889060040162001048565b600060405180830381600087803b158015620008b657600080fd5b505af1158015620008cb573d6000803e3d6000fd5b505050507fea1a07f81079879fea1a2eabafefd6f25bc76921237faf7fce963aeaa53c7ea185858585856040516200090895949392919062001048565b60405180910390a15050505050565b6117be806200109683390190565b60008083601f8401126200093857600080fd5b50813567ffffffffffffffff8111156200095157600080fd5b6020830191508360208285010111156200096a57600080fd5b9250929050565b60008060008060008060008060008060c08b8d0312156200099157600080fd5b8a35995060208b013567ffffffffffffffff80821115620009b157600080fd5b620009bf8e838f0162000925565b909b50995060408d0135915080821115620009d957600080fd5b620009e78e838f0162000925565b909950975060608d013591508082111562000a0157600080fd5b62000a0f8e838f0162000925565b909750955060808d013591508082111562000a2957600080fd5b5062000a388d828e0162000925565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b8381101562000a7557818101518382015260200162000a5b565b50506000910152565b6000815180845262000a9881602086016020860162000a58565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600062000adf602083018462000a7e565b9392505050565b60008060008060008060006080888a03121562000b0257600080fd5b87359650602088013567ffffffffffffffff8082111562000b2257600080fd5b62000b308b838c0162000925565b909850965060408a013591508082111562000b4a57600080fd5b62000b588b838c0162000925565b909650945060608a013591508082111562000b7257600080fd5b5062000b818a828b0162000925565b989b979a50959850939692959293505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121562000bd657600080fd5b813567ffffffffffffffff8082111562000bef57600080fd5b818401915084601f83011262000c0457600080fd5b81358181111562000c195762000c1962000b94565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171562000c625762000c6262000b94565b8160405282815287602084870101111562000c7c57600080fd5b826020860160208301376000928101602001929092525095945050505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600062000d1160c083018a8c62000cac565b828103604084015262000d2681898b62000cac565b9050866060840152828103608084015262000d4381868862000cac565b9150508260a08301529a9950505050505050505050565b60006020828403121562000d6d57600080fd5b8151801515811462000adf57600080fd5b600181811c9082168062000d9357607f821691505b60208210810362000dcd577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600062000def60808301878962000cac565b828103604084015262000e0481868862000cac565b915050826060830152979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff80861683528085166020840152506060604083015262000e53606083018462000a7e565b95945050505050565b60608152600062000e7260608301888a62000cac565b828103602084015262000e8781878962000cac565b9050828103604084015262000e9e81858762000cac565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006020808352606083018451151582850152818501516040808187015282825180855260808801915060808160051b8901019450858401935060005b8181101562000f7a578886037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80018352845180511515875287015187870185905262000f668588018262000a7e565b965050938601939186019160010162000f17565b509398975050505050505050565b7fffffffff00000000000000000000000000000000000000000000000000000000831681526000825162000fc481600485016020870162000a58565b919091016004019392505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a060208401526200100560a08401898b62000cac565b83810360408501526200101a81888a62000cac565b9050838103606085015262001030818762000a7e565b92505080841660808401525098975050505050505050565b6060815260006200105e60608301878962000cac565b82810360208401526200107381868862000cac565b9050828103604084015262001089818562000a7e565b9897505050505050505056fe60a06040523480156200001157600080fd5b50604051620017be380380620017be8339810160408190526200003491620001fb565b80836001600160a01b0381166200005e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b031660805262000075816200009e565b5050600180546001600160a01b0319166001600160a01b03929092169190911790555062000454565b6000808054620000ae90620002db565b80601f0160208091040260200160405190810160405280929190818152602001828054620000dc90620002db565b80156200012d5780601f1062000101576101008083540402835291602001916200012d565b820191906000526020600020905b8154815290600101906020018083116200010f57829003601f168201915b5050505050905081600090816200014591906200036a565b508160405162000156919062000436565b6040518091039020816040516200016e919062000436565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b80516001600160a01b0381168114620001ba57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620001f2578181015183820152602001620001d8565b50506000910152565b6000806000606084860312156200021157600080fd5b6200021c84620001a2565b92506200022c60208501620001a2565b60408501519092506001600160401b03808211156200024a57600080fd5b818601915086601f8301126200025f57600080fd5b815181811115620002745762000274620001bf565b604051601f8201601f19908116603f011681019083821181831017156200029f576200029f620001bf565b81604052828152896020848701011115620002b957600080fd5b620002cc836020830160208801620001d5565b80955050505050509250925092565b600181811c90821680620002f057607f821691505b6020821081036200031157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200036557600081815260208120601f850160051c81016020861015620003405750805b601f850160051c820191505b8181101562000361578281556001016200034c565b5050505b505050565b81516001600160401b03811115620003865762000386620001bf565b6200039e81620003978454620002db565b8462000317565b602080601f831160018114620003d65760008415620003bd5750858301515b600019600386901b1c1916600185901b17855562000361565b600085815260208120601f198616915b828110156200040757888601518255948401946001909101908401620003e6565b5085821015620004265787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082516200044a818460208701620001d5565b9190910192915050565b6080516113416200047d6000396000818160f50152818161026901526103ef01526113416000f3fe6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033a2646970667358221220d76f009a2c0afdd386344cb8d04f1e72dbd4b3faf6896e63f6f1e3d3eb0c805964736f6c63430008140033", - "opcodes": "PUSH1 0xC0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x2BF9 CODESIZE SUB DUP1 PUSH3 0x2BF9 DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0xD3 JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5D JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 DUP2 AND PUSH1 0x80 MSTORE DUP3 DUP2 AND PUSH1 0xA0 MSTORE PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP2 DUP6 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE PUSH1 0x1 PUSH3 0x96 DUP3 DUP3 PUSH3 0x25C JUMP JUMPDEST POP POP POP POP PUSH3 0x328 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0xB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0xE9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xF4 DUP5 PUSH3 0xA0 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 PUSH3 0x105 DUP2 DUP7 ADD PUSH3 0xA0 JUMP JUMPDEST PUSH1 0x40 DUP7 ADD MLOAD SWAP1 SWAP4 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x123 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP8 ADD SWAP2 POP DUP8 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x138 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x14D JUMPI PUSH3 0x14D PUSH3 0xBD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x178 JUMPI PUSH3 0x178 PUSH3 0xBD JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP11 DUP7 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x191 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP4 POP JUMPDEST DUP3 DUP5 LT ISZERO PUSH3 0x1B5 JUMPI DUP5 DUP5 ADD DUP7 ADD MLOAD DUP2 DUP6 ADD DUP8 ADD MSTORE SWAP3 DUP6 ADD SWAP3 PUSH3 0x196 JUMP JUMPDEST PUSH1 0x0 DUP7 DUP5 DUP4 ADD ADD MSTORE DUP1 SWAP7 POP POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x1E2 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x203 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x257 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x232 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x253 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x23E JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x278 JUMPI PUSH3 0x278 PUSH3 0xBD JUMP JUMPDEST PUSH3 0x290 DUP2 PUSH3 0x289 DUP5 SLOAD PUSH3 0x1CD JUMP JUMPDEST DUP5 PUSH3 0x209 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x2C8 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x2AF JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x253 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x2F9 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x2D8 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x318 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH2 0x2889 PUSH3 0x370 PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x1F0 ADD MSTORE DUP2 DUP2 PUSH2 0x525 ADD MSTORE PUSH2 0x79F ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH1 0xF8 ADD MSTORE DUP2 DUP2 PUSH2 0x26B ADD MSTORE DUP2 DUP2 PUSH2 0x42B ADD MSTORE PUSH2 0x859 ADD MSTORE PUSH2 0x2889 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH3 0x73 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH3 0x49 JUMPI DUP1 PUSH4 0x49160658 EQ PUSH3 0x192 JUMPI DUP1 PUSH4 0x5E8846F6 EQ PUSH3 0x1B7 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH3 0x1DC JUMPI PUSH3 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH3 0xE4 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH3 0x144 JUMPI DUP1 PUSH4 0x1C93B03A EQ PUSH3 0x16B JUMPI PUSH3 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH3 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH3 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0xF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x151 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x169 PUSH3 0x163 CALLDATASIZE PUSH1 0x4 PUSH3 0x971 JUMP JUMPDEST PUSH3 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x178 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x183 PUSH3 0x33C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x13B SWAP2 SWAP1 PUSH3 0xACA JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x19F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x169 PUSH3 0x1B1 CALLDATASIZE PUSH1 0x4 PUSH3 0xAE6 JUMP JUMPDEST PUSH3 0x3D2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x1C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH3 0x1D6 CALLDATASIZE PUSH1 0x4 PUSH3 0xBC3 JUMP JUMPDEST PUSH3 0x503 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x1E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH3 0x226 SWAP3 SWAP2 SWAP1 PUSH3 0xC9C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH3 0x2B2 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH3 0xCF5 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH3 0x2D2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x2F8 SWAP2 SWAP1 PUSH3 0xD5A JUMP JUMPDEST PUSH3 0x32F JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP1 SLOAD PUSH3 0x34B SWAP1 PUSH3 0xD7E JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0x379 SWAP1 PUSH3 0xD7E JUMP JUMPDEST DUP1 ISZERO PUSH3 0x3CA JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x39E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x3CA JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x3AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH3 0x3E6 SWAP3 SWAP2 SWAP1 PUSH3 0xC9C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH3 0x46C SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH3 0xDD3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH3 0x48C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x4B2 SWAP2 SWAP1 PUSH3 0xD5A JUMP JUMPDEST PUSH3 0x4E9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x4F9 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH3 0x590 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH1 0x40 MLOAD DUP3 SWAP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 PUSH32 0x0 SWAP1 DUP6 SWAP1 PUSH3 0x552 SWAP1 PUSH3 0x917 JUMP JUMPDEST PUSH3 0x560 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xE18 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 PUSH1 0x0 CREATE DUP1 ISZERO DUP1 ISZERO PUSH3 0x57D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x5D3 DUP6 DUP6 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH3 0x503 SWAP3 POP POP POP JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x9281645CCD9D592D9F6456FD9B95F6D2E0D36EBCC2F387399D5AC2B7C7AD7E6E DUP7 DUP7 DUP11 DUP11 DUP11 DUP11 PUSH1 0x40 MLOAD PUSH3 0x627 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xE5C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 DUP1 DUP3 MSTORE DUP2 DUP4 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH3 0x646 JUMPI SWAP1 POP POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE PUSH1 0x1 DUP2 MSTORE DUP2 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP7 AND PUSH1 0x20 DUP3 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP4 SWAP5 POP SWAP1 SWAP3 DUP4 ADD SWAP2 ADD PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH3 0x6CF JUMPI PUSH3 0x6CF PUSH3 0xEAB JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x0 DUP1 PUSH1 0xE0 SHL PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP5 DUP2 MSTORE POP PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0x70A SWAP2 SWAP1 PUSH3 0xEDA JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH3 0x748 SWAP3 SWAP2 PUSH1 0x20 ADD PUSH3 0xF88 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH3 0x585 DUP10 DUP10 DUP10 DUP10 DUP6 PUSH1 0x40 MLOAD PUSH32 0xC93E3BB00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0xC93E3BB SWAP1 PUSH7 0x38D7EA4C68000 SWAP1 PUSH3 0x7EB SWAP1 ADDRESS SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH3 0xFD2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x805 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x81A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH32 0x1C92115F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP4 POP PUSH4 0x1C92115F SWAP3 POP PUSH3 0x89B SWAP2 POP DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH3 0x1048 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x8B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x8CB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0xEA1A07F81079879FEA1A2EABAFEFD6F25BC76921237FAF7FCE963AEAA53C7EA1 DUP6 DUP6 DUP6 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH3 0x908 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0x1048 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP JUMP JUMPDEST PUSH2 0x17BE DUP1 PUSH3 0x1096 DUP4 CODECOPY ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH3 0x938 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH3 0x951 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH3 0x96A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH3 0x991 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0x9B1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x9BF DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0x9D9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x9E7 DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xA01 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xA0F DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0xA38 DUP14 DUP3 DUP15 ADD PUSH3 0x925 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xA75 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0xA5B JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH3 0xA98 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH3 0xA58 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH3 0xADF PUSH1 0x20 DUP4 ADD DUP5 PUSH3 0xA7E JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH3 0xB02 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0xB22 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xB30 DUP12 DUP4 DUP13 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xB4A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xB58 DUP12 DUP4 DUP13 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xB72 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0xB81 DUP11 DUP3 DUP12 ADD PUSH3 0x925 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xBD6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0xBEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP5 ADD SWAP2 POP DUP5 PUSH1 0x1F DUP4 ADD SLT PUSH3 0xC04 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH3 0xC19 JUMPI PUSH3 0xC19 PUSH3 0xB94 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0xC62 JUMPI PUSH3 0xC62 PUSH3 0xB94 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP8 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0xC7C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 SWAP3 DUP2 ADD PUSH1 0x20 ADD SWAP3 SWAP1 SWAP3 MSTORE POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH3 0xD11 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xD26 DUP2 DUP10 DUP12 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH3 0xD43 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xD6D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH3 0xADF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0xD93 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0xDCD JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH3 0xDEF PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xE04 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP7 AND DUP4 MSTORE DUP1 DUP6 AND PUSH1 0x20 DUP5 ADD MSTORE POP PUSH1 0x60 PUSH1 0x40 DUP4 ADD MSTORE PUSH3 0xE53 PUSH1 0x60 DUP4 ADD DUP5 PUSH3 0xA7E JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH3 0xE72 PUSH1 0x60 DUP4 ADD DUP9 DUP11 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0xE87 DUP2 DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xE9E DUP2 DUP6 DUP8 PUSH3 0xCAC JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 MSTORE PUSH1 0x60 DUP4 ADD DUP5 MLOAD ISZERO ISZERO DUP3 DUP6 ADD MSTORE DUP2 DUP6 ADD MLOAD PUSH1 0x40 DUP1 DUP2 DUP8 ADD MSTORE DUP3 DUP3 MLOAD DUP1 DUP6 MSTORE PUSH1 0x80 DUP9 ADD SWAP2 POP PUSH1 0x80 DUP2 PUSH1 0x5 SHL DUP10 ADD ADD SWAP5 POP DUP6 DUP5 ADD SWAP4 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0xF7A JUMPI DUP9 DUP7 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 ADD DUP4 MSTORE DUP5 MLOAD DUP1 MLOAD ISZERO ISZERO DUP8 MSTORE DUP8 ADD MLOAD DUP8 DUP8 ADD DUP6 SWAP1 MSTORE PUSH3 0xF66 DUP6 DUP9 ADD DUP3 PUSH3 0xA7E JUMP JUMPDEST SWAP7 POP POP SWAP4 DUP7 ADD SWAP4 SWAP2 DUP7 ADD SWAP2 PUSH1 0x1 ADD PUSH3 0xF17 JUMP JUMPDEST POP SWAP4 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 AND DUP2 MSTORE PUSH1 0x0 DUP3 MLOAD PUSH3 0xFC4 DUP2 PUSH1 0x4 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH3 0xA58 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD PUSH1 0x4 ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP11 AND DUP4 MSTORE PUSH1 0xA0 PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0x1005 PUSH1 0xA0 DUP5 ADD DUP10 DUP12 PUSH3 0xCAC JUMP JUMPDEST DUP4 DUP2 SUB PUSH1 0x40 DUP6 ADD MSTORE PUSH3 0x101A DUP2 DUP9 DUP11 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP4 DUP2 SUB PUSH1 0x60 DUP6 ADD MSTORE PUSH3 0x1030 DUP2 DUP8 PUSH3 0xA7E JUMP JUMPDEST SWAP3 POP POP DUP1 DUP5 AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH3 0x105E PUSH1 0x60 DUP4 ADD DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0x1073 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0x1089 DUP2 DUP6 PUSH3 0xA7E JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x17BE CODESIZE SUB DUP1 PUSH3 0x17BE DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0x1FB JUMP JUMPDEST DUP1 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5E JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x80 MSTORE PUSH3 0x75 DUP2 PUSH3 0x9E JUMP JUMPDEST POP POP PUSH1 0x1 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE POP PUSH3 0x454 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH3 0xAE SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0xDC SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 ISZERO PUSH3 0x12D JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x101 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x12D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x10F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH3 0x145 SWAP2 SWAP1 PUSH3 0x36A JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH3 0x156 SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH3 0x16E SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0x1BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0x1F2 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0x1D8 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0x211 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x21C DUP5 PUSH3 0x1A2 JUMP JUMPDEST SWAP3 POP PUSH3 0x22C PUSH1 0x20 DUP6 ADD PUSH3 0x1A2 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x24A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP7 ADD SWAP2 POP DUP7 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x25F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x274 JUMPI PUSH3 0x274 PUSH3 0x1BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x29F JUMPI PUSH3 0x29F PUSH3 0x1BF JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP10 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x2B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x2CC DUP4 PUSH1 0x20 DUP4 ADD PUSH1 0x20 DUP9 ADD PUSH3 0x1D5 JUMP JUMPDEST DUP1 SWAP6 POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x2F0 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x311 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x365 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x340 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x361 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x34C JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x386 JUMPI PUSH3 0x386 PUSH3 0x1BF JUMP JUMPDEST PUSH3 0x39E DUP2 PUSH3 0x397 DUP5 SLOAD PUSH3 0x2DB JUMP JUMPDEST DUP5 PUSH3 0x317 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x3D6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x3BD JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x361 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x407 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x3E6 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x426 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH3 0x44A DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH3 0x1D5 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH2 0x1341 PUSH3 0x47D PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0xF5 ADD MSTORE DUP2 DUP2 PUSH2 0x269 ADD MSTORE PUSH2 0x3EF ADD MSTORE PUSH2 0x1341 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x74 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x183 JUMPI DUP1 PUSH4 0x4FDB7F44 EQ PUSH2 0x1A3 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x1C3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F0 JUMPI PUSH2 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0xE3 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x141 JUMPI DUP1 PUSH4 0x268CA07E EQ PUSH2 0x163 JUMPI PUSH2 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH2 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH2 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x117 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x14D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x15C CALLDATASIZE PUSH1 0x4 PUSH2 0x9EB JUMP JUMPDEST PUSH2 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x16F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x17E CALLDATASIZE PUSH1 0x4 PUSH2 0xAC5 JUMP JUMPDEST PUSH2 0x345 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x19E CALLDATASIZE PUSH1 0x4 PUSH2 0xB31 JUMP JUMPDEST PUSH2 0x398 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x1BE CALLDATASIZE PUSH1 0x4 PUSH2 0xBD5 JUMP JUMPDEST PUSH2 0x4BF JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1CF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 SLOAD PUSH2 0x117 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH2 0x541 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x138 SWAP2 SWAP1 PUSH2 0xC85 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x224 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x2AE SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xCF8 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F1 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x338 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 PUSH2 0x5D3 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x351 DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x390 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH2 0x658 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AA SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x42E SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0xD79 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x44D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x4A7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4B5 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x74E JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH2 0x4CB DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x53B PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x527 SWAP1 PUSH32 0x3078303030303030303030303030303030303030303030303030303030303030 DUP2 MSTORE PUSH32 0x3030303030303030303000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x2A ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x658 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x550 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x57C SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5C9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x59E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5C9 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x5DD DUP6 DUP6 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH2 0x609 PUSH2 0x541 JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x654 JUMPI DUP2 DUP2 PUSH1 0x40 MLOAD PUSH32 0xDE6A3CBF00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64B SWAP3 SWAP2 SWAP1 PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0x666 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x692 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6DF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x6F5 SWAP2 SWAP1 PUSH2 0xEA3 JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH2 0x704 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH2 0x71A SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x75A DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x764 DUP5 DUP5 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x77F DUP4 DUP6 ADD DUP6 PUSH2 0x1051 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79D JUMPI PUSH2 0x79D PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x7E3 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x7BB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0x0 DUP1 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x807 JUMPI PUSH2 0x807 PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x83B JUMPI PUSH2 0x83B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x854 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP7 GAS CALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x891 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x896 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x14 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x436F6E74726163742063616C6C206661696C6564000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x64B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP4 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x92B JUMPI PUSH2 0x92B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x943 SWAP1 PUSH2 0x1218 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x7E9 JUMP JUMPDEST POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FC27C8074EE9BA6D8A94064CDEE28DDCBC36E7B0A4C730262CB845CA06332B2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x992 SWAP2 SWAP1 PUSH2 0x1277 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x9B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x9E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA35 DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA4E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA5A DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA7F DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA5 DUP14 DUP3 DUP15 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xAF3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xAFF DUP9 DUP4 DUP10 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB25 DUP8 DUP3 DUP9 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xB4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xB6B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB77 DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB9C DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xBB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBC2 DUP11 DUP3 DUP12 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xBE8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xBFF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC0B DUP6 DUP3 DUP7 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xC32 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xC1A JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xC53 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xC17 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xC98 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC3B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD12 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xD25 DUP2 DUP10 DUP12 PUSH2 0xCAF JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0xD40 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xC98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD93 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xDA6 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xDCE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0xE07 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xE21 PUSH1 0x20 DUP4 ADD DUP5 DUP7 PUSH2 0xCAF JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0xE9E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0xE7F JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x390 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xE8B JUMP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xEBD JUMPI PUSH2 0xEBD PUSH2 0xE29 JUMP JUMPDEST PUSH2 0xED1 DUP2 PUSH2 0xECB DUP5 SLOAD PUSH2 0xDBA JUMP JUMPDEST DUP5 PUSH2 0xE58 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0xF24 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0xEEE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x390 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0xF71 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0xF52 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0xFAD JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0xFCF DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0xC17 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP1 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0xFFC JUMPI PUSH2 0xFFC PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1049 JUMPI PUSH2 0x1049 PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1064 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x107C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1090 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x10A2 JUMPI PUSH2 0x10A2 PUSH2 0xE29 JUMP JUMPDEST DUP1 PUSH1 0x5 SHL PUSH2 0x10B1 DUP6 DUP3 ADD PUSH2 0x1002 JUMP JUMPDEST SWAP2 DUP3 MSTORE DUP4 DUP2 ADD DUP6 ADD SWAP2 DUP6 DUP2 ADD SWAP1 DUP10 DUP5 GT ISZERO PUSH2 0x10CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP7 ADD SWAP3 POP JUMPDEST DUP4 DUP4 LT ISZERO PUSH2 0x11DC JUMPI DUP3 CALLDATALOAD DUP6 DUP2 GT ISZERO PUSH2 0x10E9 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP7 ADD PUSH1 0x40 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP3 DUP14 SUB DUP2 ADD DUP3 SGT ISZERO PUSH2 0x1120 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST PUSH2 0x1128 PUSH2 0xFD9 JUMP JUMPDEST DUP11 DUP5 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x114F JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP2 MSTORE DUP4 DUP4 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x1163 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP6 ADD SWAP5 POP POP DUP14 PUSH1 0x3F DUP6 ADD SLT PUSH2 0x1179 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP11 DUP5 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x118D JUMPI PUSH2 0x118D PUSH2 0xE29 JUMP JUMPDEST PUSH2 0x119D DUP13 DUP5 PUSH1 0x1F DUP5 ADD AND ADD PUSH2 0x1002 JUMP JUMPDEST SWAP3 POP DUP1 DUP4 MSTORE DUP15 DUP5 DUP3 DUP8 ADD ADD GT ISZERO PUSH2 0x11B4 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP5 DUP7 ADD DUP14 DUP6 ADD CALLDATACOPY PUSH1 0x0 SWAP1 DUP4 ADD DUP13 ADD MSTORE DUP1 DUP12 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MSTORE POP POP SWAP2 DUP7 ADD SWAP2 SWAP1 DUP7 ADD SWAP1 PUSH2 0x10D1 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1270 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12FD JUMPI DUP9 DUP4 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD ISZERO ISZERO DUP5 MSTORE DUP8 ADD MLOAD DUP8 DUP5 ADD DUP8 SWAP1 MSTORE PUSH2 0x12EA DUP8 DUP6 ADD DUP3 PUSH2 0xC3B JUMP JUMPDEST SWAP6 DUP9 ADD SWAP6 SWAP4 POP POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x129E JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB0 DUP16 NOT 0xB2 PUSH29 0x5B96E2196BCC61C4069DC8FAC27E30816AC61FF2278165FDDA761B6473 PUSH16 0x6C63430008140033A264697066735822 SLT KECCAK256 0xD7 PUSH16 0x9A2C0AFDD386344CB8D04F1E72DBD4 0xB3 STATICCALL 0xF6 DUP10 PUSH15 0x63F6F1E3D3EB0C805964736F6C6343 STOP ADDMOD EQ STOP CALLER ", - "sourceMap": "2571:2483:13:-:0;;;3135:257;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3260:8;-1:-1:-1;;;;;342:22:0;;338:51;;373:16;;-1:-1:-1;;;373:16:0;;;;;;;;;;;338:51;-1:-1:-1;;;;;400:34:0;;;;;3280:44:13;;::::1;;::::0;3334:8:::1;:19:::0;;-1:-1:-1;;;;;;3334:19:13::1;::::0;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;3363:22:13::1;3375:10:::0;-1:-1:-1;3363:22:13::1;:::i;:::-;;3135:257:::0;;;2571:2483;;14:177:16;93:13;;-1:-1:-1;;;;;135:31:16;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:127::-;257:10;252:3;248:20;245:1;238:31;288:4;285:1;278:15;312:4;309:1;302:15;328:1212;426:6;434;442;495:2;483:9;474:7;470:23;466:32;463:52;;;511:1;508;501:12;463:52;534:40;564:9;534:40;:::i;:::-;524:50;;593:2;614:49;659:2;648:9;644:18;614:49;:::i;:::-;707:2;692:18;;686:25;604:59;;-1:-1:-1;;;;;;760:14:16;;;757:34;;;787:1;784;777:12;757:34;825:6;814:9;810:22;800:32;;870:7;863:4;859:2;855:13;851:27;841:55;;892:1;889;882:12;841:55;921:2;915:9;943:2;939;936:10;933:36;;;949:18;;:::i;:::-;1024:2;1018:9;992:2;1078:13;;-1:-1:-1;;1074:22:16;;;1098:2;1070:31;1066:40;1054:53;;;1122:18;;;1142:22;;;1119:46;1116:72;;;1168:18;;:::i;:::-;1208:10;1204:2;1197:22;1243:2;1235:6;1228:18;1283:7;1278:2;1273;1269;1265:11;1261:20;1258:33;1255:53;;;1304:1;1301;1294:12;1255:53;1326:1;1317:10;;1336:129;1350:2;1347:1;1344:9;1336:129;;;1438:10;;;1434:19;;1428:26;1407:14;;;1403:23;;1396:59;1361:10;;;;1336:129;;;1507:1;1502:2;1497;1489:6;1485:15;1481:24;1474:35;1528:6;1518:16;;;;;;;;328:1212;;;;;:::o;1545:380::-;1624:1;1620:12;;;;1667;;;1688:61;;1742:4;1734:6;1730:17;1720:27;;1688:61;1795:2;1787:6;1784:14;1764:18;1761:38;1758:161;;1841:10;1836:3;1832:20;1829:1;1822:31;1876:4;1873:1;1866:15;1904:4;1901:1;1894:15;1758:161;;1545:380;;;:::o;2056:545::-;2158:2;2153:3;2150:11;2147:448;;;2194:1;2219:5;2215:2;2208:17;2264:4;2260:2;2250:19;2334:2;2322:10;2318:19;2315:1;2311:27;2305:4;2301:38;2370:4;2358:10;2355:20;2352:47;;;-1:-1:-1;2393:4:16;2352:47;2448:2;2443:3;2439:12;2436:1;2432:20;2426:4;2422:31;2412:41;;2503:82;2521:2;2514:5;2511:13;2503:82;;;2566:17;;;2547:1;2536:13;2503:82;;;2507:3;;;2147:448;2056:545;;;:::o;2777:1352::-;2897:10;;-1:-1:-1;;;;;2919:30:16;;2916:56;;;2952:18;;:::i;:::-;2981:97;3071:6;3031:38;3063:4;3057:11;3031:38;:::i;:::-;3025:4;2981:97;:::i;:::-;3133:4;;3197:2;3186:14;;3214:1;3209:663;;;;3916:1;3933:6;3930:89;;;-1:-1:-1;3985:19:16;;;3979:26;3930:89;-1:-1:-1;;2734:1:16;2730:11;;;2726:24;2722:29;2712:40;2758:1;2754:11;;;2709:57;4032:81;;3179:944;;3209:663;2003:1;1996:14;;;2040:4;2027:18;;-1:-1:-1;;3245:20:16;;;3363:236;3377:7;3374:1;3371:14;3363:236;;;3466:19;;;3460:26;3445:42;;3558:27;;;;3526:1;3514:14;;;;3393:19;;3363:236;;;3367:3;3627:6;3618:7;3615:19;3612:201;;;3688:19;;;3682:26;-1:-1:-1;;3771:1:16;3767:14;;;3783:3;3763:24;3759:37;3755:42;3740:58;3725:74;;3612:201;-1:-1:-1;;;;;3859:1:16;3843:14;;;3839:22;3826:36;;-1:-1:-1;2777:1352:16:o;:::-;2571:2483:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" - }, - "deployedBytecode": { - "functionDebugData": { - "@_1961": { - "entryPoint": null, - "id": 1961, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@_1972": { - "entryPoint": null, - "id": 1972, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@_executeWithToken_136": { - "entryPoint": 1413, - "id": 136, - "parameterSlots": 9, - "returnSlots": 0 - }, - "@_execute_1908": { - "entryPoint": 1424, - "id": 1908, - "parameterSlots": 6, - "returnSlots": 0 - }, - "@_send_1950": { - "entryPoint": null, - "id": 1950, - "parameterSlots": 5, - "returnSlots": 0 - }, - "@chainName_1760": { - "entryPoint": 828, - "id": 1760, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@createSmartWallet_1837": { - "entryPoint": 1283, - "id": 1837, - "parameterSlots": 1, - "returnSlots": 1 - }, - "@executeWithToken_112": { - "entryPoint": 530, - "id": 112, - "parameterSlots": 10, - "returnSlots": 0 - }, - "@execute_68": { - "entryPoint": 978, - "id": 68, - "parameterSlots": 7, - "returnSlots": 0 - }, - "@gasService_1758": { - "entryPoint": null, - "id": 1758, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@gateway_10": { - "entryPoint": null, - "id": 10, - "parameterSlots": 0, - "returnSlots": 0 - }, - "abi_decode_string_calldata": { - "entryPoint": 2341, - "id": null, - "parameterSlots": 2, - "returnSlots": 2 - }, - "abi_decode_tuple_t_bool_fromMemory": { - "entryPoint": 3418, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr": { - "entryPoint": 2790, - "id": null, - "parameterSlots": 2, - "returnSlots": 7 - }, - "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256": { - "entryPoint": 2417, - "id": null, - "parameterSlots": 2, - "returnSlots": 10 - }, - "abi_decode_tuple_t_string_memory_ptr": { - "entryPoint": 3011, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_string": { - "entryPoint": 2686, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_string_calldata": { - "entryPoint": 3244, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": 3976, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": 3228, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_address_t_address_t_string_memory_ptr__to_t_address_t_address_t_string_memory_ptr__fromStack_reversed": { - "entryPoint": 3608, - "id": null, - "parameterSlots": 4, - "returnSlots": 1 - }, - "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed": { - "entryPoint": 4050, - "id": null, - "parameterSlots": 8, - "returnSlots": 1 - }, - "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed": { - "entryPoint": 3539, - "id": null, - "parameterSlots": 7, - "returnSlots": 1 - }, - "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed": { - "entryPoint": 3317, - "id": null, - "parameterSlots": 10, - "returnSlots": 1 - }, - "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { - "entryPoint": 4168, - "id": null, - "parameterSlots": 6, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed": { - "entryPoint": 3676, - "id": null, - "parameterSlots": 7, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { - "entryPoint": 2762, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_struct$_AgoricResponse_$1551_memory_ptr__to_t_struct$_AgoricResponse_$1551_memory_ptr__fromStack_reversed": { - "entryPoint": 3802, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "copy_memory_to_memory_with_cleanup": { - "entryPoint": 2648, - "id": null, - "parameterSlots": 3, - "returnSlots": 0 - }, - "extract_byte_array_length": { - "entryPoint": 3454, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "panic_error_0x32": { - "entryPoint": 3755, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - }, - "panic_error_0x41": { - "entryPoint": 2964, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - } - }, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:12946:16", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:16", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "115:76:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "125:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "137:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "148:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "133:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "133:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "125:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "167:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "178:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "160:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "160:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "160:25:16" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "84:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "95:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "106:4:16", - "type": "" - } - ], - "src": "14:177:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "319:125:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "329:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "341:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "352:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "337:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "337:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "329:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "371:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "386:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "394:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "382:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "382:55:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "364:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "364:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "364:74:16" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "288:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "299:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "310:4:16", - "type": "" - } - ], - "src": "196:248:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "522:275:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "571:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "580:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "583:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "573:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "573:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "573:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "550:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "558:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "546:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "546:17:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "565:3:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "542:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "542:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "535:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "535:35:16" - }, - "nodeType": "YulIf", - "src": "532:55:16" - }, - { - "nodeType": "YulAssignment", - "src": "596:30:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "619:6:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "606:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "606:20:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "596:6:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "669:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "678:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "681:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "671:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "671:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "671:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "641:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "649:18:16", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "638:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "638:30:16" - }, - "nodeType": "YulIf", - "src": "635:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "694:29:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "710:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "718:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "706:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "706:17:16" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "694:8:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "775:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "784:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "787:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "777:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "777:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "777:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "746:6:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "754:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "742:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "742:19:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "763:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "738:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "738:30:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "770:3:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "735:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "735:39:16" - }, - "nodeType": "YulIf", - "src": "732:59:16" - } - ] - }, - "name": "abi_decode_string_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "485:6:16", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "493:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "501:8:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "511:6:16", - "type": "" - } - ], - "src": "449:348:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1036:1203:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1083:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1092:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1095:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1085:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1085:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1085:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1057:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1066:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1053:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1053:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1078:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1049:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1049:33:16" - }, - "nodeType": "YulIf", - "src": "1046:53:16" - }, - { - "nodeType": "YulAssignment", - "src": "1108:33:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1131:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1118:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1118:23:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1108:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1150:46:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1181:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1192:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1177:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1177:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1164:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1164:32:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1154:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1205:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1215:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1209:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1260:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1269:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1272:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1262:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1262:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1262:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1248:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1256:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1245:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1245:14:16" - }, - "nodeType": "YulIf", - "src": "1242:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1285:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1342:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1353:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1338:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1338:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1362:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1311:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1311:59:16" - }, - "variables": [ - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "1289:8:16", - "type": "" - }, - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "1299:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1379:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "1389:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1379:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1406:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "1416:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1406:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1433:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1466:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1477:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1462:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1462:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1449:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1449:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "1437:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1510:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1519:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1522:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1512:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1512:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1512:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "1496:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1506:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1493:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1493:16:16" - }, - "nodeType": "YulIf", - "src": "1490:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1535:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1592:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "1603:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1588:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1588:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1614:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1561:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1561:61:16" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "1539:8:16", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "1549:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1631:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "1641:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "1631:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1658:18:16", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "1668:8:16" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "1658:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1685:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1718:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1729:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1714:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1714:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1701:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1701:32:16" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "1689:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1762:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1771:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1774:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1764:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1764:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1764:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "1748:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1758:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1745:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1745:16:16" - }, - "nodeType": "YulIf", - "src": "1742:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1787:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1844:9:16" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "1855:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1840:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1840:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1866:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1813:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1813:61:16" - }, - "variables": [ - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "1791:8:16", - "type": "" - }, - { - "name": "value6_1", - "nodeType": "YulTypedName", - "src": "1801:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1883:18:16", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "1893:8:16" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "1883:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1910:18:16", - "value": { - "name": "value6_1", - "nodeType": "YulIdentifier", - "src": "1920:8:16" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "1910:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1937:49:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1970:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1981:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1966:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1966:19:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1953:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1953:33:16" - }, - "variables": [ - { - "name": "offset_3", - "nodeType": "YulTypedName", - "src": "1941:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2015:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2024:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2027:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2017:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2017:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2017:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "2001:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2011:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1998:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1998:16:16" - }, - "nodeType": "YulIf", - "src": "1995:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2040:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2097:9:16" - }, - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "2108:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2093:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2093:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2119:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "2066:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "2066:61:16" - }, - "variables": [ - { - "name": "value7_1", - "nodeType": "YulTypedName", - "src": "2044:8:16", - "type": "" - }, - { - "name": "value8_1", - "nodeType": "YulTypedName", - "src": "2054:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2136:18:16", - "value": { - "name": "value7_1", - "nodeType": "YulIdentifier", - "src": "2146:8:16" - }, - "variableNames": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "2136:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2163:18:16", - "value": { - "name": "value8_1", - "nodeType": "YulIdentifier", - "src": "2173:8:16" - }, - "variableNames": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "2163:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2190:43:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2217:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2228:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2213:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2213:19:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2200:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2200:33:16" - }, - "variableNames": [ - { - "name": "value9", - "nodeType": "YulIdentifier", - "src": "2190:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "930:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "941:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "953:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "961:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "969:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "977:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "985:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "993:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "1001:6:16", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "1009:6:16", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "1017:6:16", - "type": "" - }, - { - "name": "value9", - "nodeType": "YulTypedName", - "src": "1025:6:16", - "type": "" - } - ], - "src": "802:1437:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2310:184:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2320:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2329:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "2324:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2389:63:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2414:3:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2419:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2410:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2410:11:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "2433:3:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2438:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2429:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2429:11:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2423:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "2423:18:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2403:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2403:39:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2403:39:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2350:1:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2353:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2347:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2347:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "2361:19:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2363:15:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2372:1:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2375:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2368:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2368:10:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2363:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "2343:3:16", - "statements": [] - }, - "src": "2339:113:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2472:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2477:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2468:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2468:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2486:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2461:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2461:27:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2461:27:16" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "2288:3:16", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "2293:3:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2298:6:16", - "type": "" - } - ], - "src": "2244:250:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2549:280:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2559:26:16", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2579:5:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2573:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "2573:12:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2563:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2601:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2606:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2594:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2594:19:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2594:19:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2661:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2668:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2657:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2657:16:16" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2679:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2684:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2675:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2675:14:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2691:6:16" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "2622:34:16" - }, - "nodeType": "YulFunctionCall", - "src": "2622:76:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2622:76:16" - }, - { - "nodeType": "YulAssignment", - "src": "2707:116:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2722:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2735:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2743:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2731:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2731:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2748:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2727:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2727:88:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2718:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2718:98:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2818:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2714:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2714:109:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2707:3:16" - } - ] - } - ] - }, - "name": "abi_encode_string", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2526:5:16", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "2533:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2541:3:16", - "type": "" - } - ], - "src": "2499:330:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2955:99:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2972:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2983:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2965:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2965:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2965:21:16" - }, - { - "nodeType": "YulAssignment", - "src": "2995:53:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3021:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3033:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3044:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3029:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3029:18:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "3003:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "3003:45:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2995:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2924:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2935:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2946:4:16", - "type": "" - } - ], - "src": "2834:220:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3239:898:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3286:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3295:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3298:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3288:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3288:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3288:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3260:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3269:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3256:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3256:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3281:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3252:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3252:33:16" - }, - "nodeType": "YulIf", - "src": "3249:53:16" - }, - { - "nodeType": "YulAssignment", - "src": "3311:33:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3334:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3321:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3321:23:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3311:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3353:46:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3384:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3395:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3380:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3380:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3367:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3367:32:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3357:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3408:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3418:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3412:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3463:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3472:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3475:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3465:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3465:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3465:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3451:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3459:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3448:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3448:14:16" - }, - "nodeType": "YulIf", - "src": "3445:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3488:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3545:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3556:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3541:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3541:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3565:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "3514:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "3514:59:16" - }, - "variables": [ - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "3492:8:16", - "type": "" - }, - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "3502:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3582:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "3592:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3582:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3609:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "3619:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "3609:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3636:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3669:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3680:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3665:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3665:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3652:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3652:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "3640:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3713:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3722:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3725:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3715:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3715:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3715:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3699:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3709:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3696:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3696:16:16" - }, - "nodeType": "YulIf", - "src": "3693:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3738:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3795:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3806:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3791:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3791:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3817:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "3764:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "3764:61:16" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "3742:8:16", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "3752:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3834:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "3844:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "3834:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3861:18:16", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "3871:8:16" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "3861:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3888:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3921:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3932:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3917:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3917:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3904:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3904:32:16" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "3892:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3965:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3974:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3977:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3967:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3967:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3967:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3951:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3961:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3948:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3948:16:16" - }, - "nodeType": "YulIf", - "src": "3945:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3990:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4047:9:16" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "4058:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4043:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4043:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4069:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "4016:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "4016:61:16" - }, - "variables": [ - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "3994:8:16", - "type": "" - }, - { - "name": "value6_1", - "nodeType": "YulTypedName", - "src": "4004:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4086:18:16", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "4096:8:16" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "4086:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4113:18:16", - "value": { - "name": "value6_1", - "nodeType": "YulIdentifier", - "src": "4123:8:16" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "4113:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3157:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3168:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3180:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3188:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "3196:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "3204:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "3212:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "3220:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "3228:6:16", - "type": "" - } - ], - "src": "3059:1078:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4174:152:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4191:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4194:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4184:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4184:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4184:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4288:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4291:4:16", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4281:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4281:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4281:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4312:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4315:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4305:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4305:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4305:15:16" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "4142:184:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4411:901:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4457:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4466:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4469:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4459:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4459:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4459:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4432:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4441:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4428:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4428:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4453:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4424:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4424:32:16" - }, - "nodeType": "YulIf", - "src": "4421:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4482:37:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4509:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4496:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "4496:23:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4486:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4528:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4538:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "4532:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4583:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4592:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4595:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4585:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4585:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4585:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4571:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4579:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4568:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4568:14:16" - }, - "nodeType": "YulIf", - "src": "4565:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4608:32:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4622:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4633:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4618:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4618:22:16" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "4612:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4688:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4697:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4700:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4690:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4690:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4690:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "4667:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4671:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4663:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4663:13:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4678:7:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4659:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4659:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "4652:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4652:35:16" - }, - "nodeType": "YulIf", - "src": "4649:55:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4713:26:16", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "4736:2:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4723:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "4723:16:16" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "4717:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4762:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "4764:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "4764:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4764:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "4754:2:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4758:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4751:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4751:10:16" - }, - "nodeType": "YulIf", - "src": "4748:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4793:76:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4803:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "4797:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4878:23:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4898:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4892:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "4892:9:16" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "4882:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4910:71:16", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "4932:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "4956:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4960:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4952:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4952:13:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "4967:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "4948:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4948:22:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4972:2:16", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4944:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4944:31:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "4977:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "4940:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4940:40:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4928:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4928:53:16" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "4914:10:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5040:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "5042:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "5042:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5042:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "4999:10:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5011:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4996:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4996:18:16" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "5019:10:16" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5031:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "5016:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "5016:22:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "4993:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4993:46:16" - }, - "nodeType": "YulIf", - "src": "4990:72:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5078:2:16", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "5082:10:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5071:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5071:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5071:22:16" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5109:6:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5117:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5102:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5102:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5102:18:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5166:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5175:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5178:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5168:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5168:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5168:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "5143:2:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5147:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5139:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5139:11:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5152:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5135:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5135:20:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5157:7:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5132:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "5132:33:16" - }, - "nodeType": "YulIf", - "src": "5129:53:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5208:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5216:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5204:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5204:15:16" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "5225:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5229:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5221:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5221:11:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5234:2:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "5191:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "5191:46:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5191:46:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5261:6:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5269:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5257:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5257:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5274:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5253:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5253:24:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5279:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5246:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5246:35:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5246:35:16" - }, - { - "nodeType": "YulAssignment", - "src": "5290:16:16", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5300:6:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5290:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4377:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4388:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4400:6:16", - "type": "" - } - ], - "src": "4331:981:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5418:125:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "5428:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5440:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5451:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5436:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5436:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5428:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5470:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5485:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5493:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5481:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5481:55:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5463:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5463:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5463:74:16" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5387:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5398:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5409:4:16", - "type": "" - } - ], - "src": "5317:226:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5674:125:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "5684:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5696:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5707:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5692:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5692:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5684:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5726:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5741:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5749:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5737:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5737:55:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5719:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5719:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5719:74:16" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5643:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5654:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5665:4:16", - "type": "" - } - ], - "src": "5548:251:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5951:124:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5974:3:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5979:6:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5987:6:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "5961:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "5961:33:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5961:33:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6003:26:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6017:3:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6022:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6013:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6013:16:16" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "6007:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6045:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6049:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6038:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6038:13:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6038:13:16" - }, - { - "nodeType": "YulAssignment", - "src": "6060:9:16", - "value": { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6067:2:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6060:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5919:3:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "5924:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5932:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "5943:3:16", - "type": "" - } - ], - "src": "5804:271:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6147:259:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6164:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6169:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6157:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6157:19:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6157:19:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6202:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6207:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6198:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6198:14:16" - }, - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "6214:5:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6221:6:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "6185:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "6185:43:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6185:43:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6252:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6257:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6248:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6248:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6266:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6244:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6244:27:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6273:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6237:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6237:38:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6237:38:16" - }, - { - "nodeType": "YulAssignment", - "src": "6284:116:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6299:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6312:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6320:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6308:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6308:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6325:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6304:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6304:88:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6295:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6295:98:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6395:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6291:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6291:109:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6284:3:16" - } - ] - } - ] - }, - "name": "abi_encode_string_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "6116:5:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "6123:6:16", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "6131:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "6139:3:16", - "type": "" - } - ], - "src": "6080:326:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6742:513:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6759:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6770:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6752:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6752:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6752:25:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6797:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6808:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6793:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6793:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6813:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6786:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6786:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6786:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6826:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6867:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "6875:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6887:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6898:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6883:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6883:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "6840:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "6840:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "6830:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6923:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6934:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6919:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6919:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "6943:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6951:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6939:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6939:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6912:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6912:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6912:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6971:64:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "7012:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "7020:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "7028:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "6985:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "6985:50:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "6975:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7055:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7066:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7051:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7051:18:16" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "7071:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7044:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7044:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7044:34:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7098:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7109:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7094:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7094:19:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "7119:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7127:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7115:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7115:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7087:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7087:51:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7087:51:16" - }, - { - "nodeType": "YulAssignment", - "src": "7147:58:16", - "value": { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "7182:6:16" - }, - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "7190:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "7198:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "7155:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "7155:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7147:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7225:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7236:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7221:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7221:19:16" - }, - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "7242:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7214:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7214:35:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7214:35:16" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6647:9:16", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "6658:6:16", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "6666:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "6674:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "6682:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "6690:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "6698:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "6706:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6714:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6722:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6733:4:16", - "type": "" - } - ], - "src": "6411:844:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7338:199:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "7384:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7393:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7396:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7386:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7386:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7386:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7359:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7368:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7355:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7355:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7380:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "7351:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7351:32:16" - }, - "nodeType": "YulIf", - "src": "7348:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7409:29:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7428:9:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "7422:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "7422:16:16" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7413:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7491:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7500:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7503:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7493:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7493:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7493:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7460:5:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7481:5:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7474:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7474:13:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7467:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7467:21:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "7457:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "7457:32:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7450:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7450:40:16" - }, - "nodeType": "YulIf", - "src": "7447:60:16" - }, - { - "nodeType": "YulAssignment", - "src": "7516:15:16", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7526:5:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7516:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bool_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7304:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "7315:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7327:6:16", - "type": "" - } - ], - "src": "7260:277:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7597:382:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7607:22:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7621:1:16", - "type": "", - "value": "1" - }, - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "7624:4:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "7617:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7617:12:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7607:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7638:38:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "7668:4:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7674:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7664:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7664:12:16" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "7642:18:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7715:31:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7717:27:16", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7731:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7739:4:16", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7727:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7727:17:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7717:6:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "7695:18:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7688:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7688:26:16" - }, - "nodeType": "YulIf", - "src": "7685:61:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7805:168:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7826:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7829:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7819:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7819:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7819:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7927:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7930:4:16", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7920:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7920:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7920:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7955:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7958:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7948:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7948:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7948:15:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "7761:18:16" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7784:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7792:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "7781:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "7781:14:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "7758:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "7758:38:16" - }, - "nodeType": "YulIf", - "src": "7755:218:16" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "7577:4:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7586:6:16", - "type": "" - } - ], - "src": "7542:437:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8229:336:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8246:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8257:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8239:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8239:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8239:25:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8284:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8295:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8280:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8280:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8300:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8273:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8273:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8273:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8313:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "8354:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "8362:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8374:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8385:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8370:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8370:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "8327:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "8327:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "8317:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8410:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8421:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8406:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8406:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "8430:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8438:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8426:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8426:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8399:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8399:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8399:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "8458:58:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "8493:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "8501:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "8509:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "8466:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "8466:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8458:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8536:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8547:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8532:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8532:18:16" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "8552:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8525:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8525:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8525:34:16" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8158:9:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "8169:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "8177:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "8185:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "8193:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8201:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8209:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8220:4:16", - "type": "" - } - ], - "src": "7984:581:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8747:264:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "8757:52:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8767:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "8761:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8825:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8840:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "8848:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "8836:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8836:15:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8818:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8818:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8818:34:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8872:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8883:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8868:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8868:18:16" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "8892:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "8900:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "8888:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8888:15:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8861:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8861:43:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8861:43:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8924:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8935:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8920:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8920:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8940:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8913:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8913:30:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8913:30:16" - }, - { - "nodeType": "YulAssignment", - "src": "8952:53:16", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "8978:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8990:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9001:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8986:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8986:18:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "8960:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "8960:45:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8952:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_address_t_string_memory_ptr__to_t_address_t_address_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8700:9:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "8711:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8719:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8727:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8738:4:16", - "type": "" - } - ], - "src": "8570:441:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9263:380:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9280:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9291:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9273:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9273:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9273:21:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9303:76:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9344:6:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9352:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9364:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9375:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9360:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9360:18:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "9317:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "9317:62:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "9307:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9399:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9410:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9395:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9395:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "9419:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9427:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9415:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9415:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9388:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9388:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9388:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9447:64:16", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "9488:6:16" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "9496:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "9504:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "9461:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "9461:50:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "9451:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9531:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9542:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9527:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9527:18:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "9551:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9559:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9547:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9547:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9520:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9520:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9520:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "9579:58:16", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "9614:6:16" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "9622:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "9630:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "9587:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "9587:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9579:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9192:9:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "9203:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "9211:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "9219:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "9227:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9235:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9243:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9254:4:16", - "type": "" - } - ], - "src": "9016:627:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9680:152:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9697:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9700:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9690:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9690:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9690:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9794:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9797:4:16", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9787:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9787:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9787:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9818:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9821:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9811:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9811:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9811:15:16" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "9648:184:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10002:1077:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10012:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10022:2:16", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "10016:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10040:9:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10051:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10033:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10033:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10033:21:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10063:32:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10081:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10092:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10077:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10077:18:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "10067:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10115:9:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10126:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10111:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10111:18:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10151:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10145:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10145:13:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10138:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10138:21:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10131:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10131:29:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10104:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10104:57:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10104:57:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10170:42:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10200:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10208:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10196:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10196:15:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10190:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10190:22:16" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "10174:12:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10221:14:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10231:4:16", - "type": "", - "value": "0x40" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "10225:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10255:9:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10266:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10251:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10251:18:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10271:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10244:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10244:30:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10244:30:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10283:17:16", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10294:6:16" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10287:3:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10309:33:16", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "10329:12:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10323:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10323:19:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10313:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10358:6:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10366:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10351:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10351:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10351:22:16" - }, - { - "nodeType": "YulAssignment", - "src": "10382:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10393:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10404:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10389:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10389:19:16" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10382:3:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10417:54:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10439:9:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10454:1:16", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10457:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "10450:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10450:14:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10435:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10435:30:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10467:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10431:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10431:40:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "10421:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10480:35:16", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "10498:12:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10512:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10494:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10494:21:16" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "10484:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10524:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10533:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "10528:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10592:458:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10613:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "10626:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10634:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10622:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10622:22:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10646:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10618:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10618:95:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10606:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10606:108:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10606:108:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10727:23:16", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "10743:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10737:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10737:13:16" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "10731:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "10770:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "10798:2:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10792:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10792:9:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10785:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10785:17:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10778:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10778:25:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10763:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10763:41:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10763:41:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10817:40:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "10849:2:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10853:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10845:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10845:11:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10839:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10839:18:16" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "10821:14:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "10881:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10889:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10877:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10877:15:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10894:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10870:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10870:27:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10870:27:16" - }, - { - "nodeType": "YulAssignment", - "src": "10910:60:16", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "10938:14:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "10958:6:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10966:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10954:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10954:15:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "10920:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "10920:50:16" - }, - "variableNames": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "10910:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10983:25:16", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "10997:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11005:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10993:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10993:15:16" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "10983:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11021:19:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11032:3:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11037:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11028:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11028:12:16" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11021:3:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10554:1:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10557:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10551:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "10551:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "10565:18:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10567:14:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10576:1:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10579:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10572:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10572:9:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10567:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "10547:3:16", - "statements": [] - }, - "src": "10543:507:16" - }, - { - "nodeType": "YulAssignment", - "src": "11059:14:16", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "11067:6:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11059:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_AgoricResponse_$1551_memory_ptr__to_t_struct$_AgoricResponse_$1551_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9971:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9982:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9993:4:16", - "type": "" - } - ], - "src": "9837:1242:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11247:267:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11264:3:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11273:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11281:66:16", - "type": "", - "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11269:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11269:79:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11257:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11257:92:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11257:92:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11358:27:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11378:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11372:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "11372:13:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "11362:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11433:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11441:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11429:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11429:17:16" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11452:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11457:1:16", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11448:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11448:11:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11461:6:16" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "11394:34:16" - }, - "nodeType": "YulFunctionCall", - "src": "11394:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11394:74:16" - }, - { - "nodeType": "YulAssignment", - "src": "11477:31:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11492:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11497:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11488:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11488:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11506:1:16", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11484:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11484:24:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "11477:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "11215:3:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "11220:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11228:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "11239:3:16", - "type": "" - } - ], - "src": "11084:430:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11810:531:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "11820:52:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11830:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "11824:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11888:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11903:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11911:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11899:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11899:15:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11881:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11881:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11881:34:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11935:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11946:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11931:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11931:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11951:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11924:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11924:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11924:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11964:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "12005:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "12013:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12025:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12036:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12021:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12021:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "11978:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "11978:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "11968:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12061:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12072:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12057:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12057:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "12081:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12089:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12077:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12077:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12050:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12050:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12050:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12109:64:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "12150:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "12158:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "12166:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "12123:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "12123:50:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "12113:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12193:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12204:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12189:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12189:18:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12213:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12221:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12209:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12209:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12182:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12182:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12182:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "12241:41:16", - "value": { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "12267:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12275:6:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "12249:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "12249:33:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12241:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12302:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12313:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12298:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12298:19:16" - }, - { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "12323:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12331:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12319:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12319:15:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12291:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12291:44:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12291:44:16" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11731:9:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "11742:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "11750:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "11758:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "11766:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "11774:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "11782:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11790:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11801:4:16", - "type": "" - } - ], - "src": "11519:822:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12581:363:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12598:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12609:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12591:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12591:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12591:21:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12621:76:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "12662:6:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "12670:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12682:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12693:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12678:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12678:18:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "12635:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "12635:62:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "12625:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12717:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12728:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12713:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12713:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "12737:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12745:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12733:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12733:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12706:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12706:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12706:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12765:64:16", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "12806:6:16" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "12814:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "12822:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "12779:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "12779:50:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "12769:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12849:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12860:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12845:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12845:18:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12869:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12877:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12865:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12865:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12838:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12838:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12838:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "12897:41:16", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "12923:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12931:6:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "12905:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "12905:33:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12897:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12518:9:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "12529:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "12537:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "12545:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "12553:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12561:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "12572:4:16", - "type": "" - } - ], - "src": "12346:598:16" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_string_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7, value8, value9\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n let offset_3 := calldataload(add(headStart, 128))\n if gt(offset_3, _1) { revert(0, 0) }\n let value7_1, value8_1 := abi_decode_string_calldata(add(headStart, offset_3), dataEnd)\n value7 := value7_1\n value8 := value8_1\n value9 := calldataload(add(headStart, 160))\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_string_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let _3 := calldataload(_2)\n if gt(_3, _1) { panic_error_0x41() }\n let _4 := 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_3, 0x1f), _4), 63), _4))\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _3)\n if gt(add(add(_2, _3), 32), dataEnd) { revert(0, 0) }\n calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value0 := memPtr\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 192)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value6, value7, tail_2)\n mstore(add(headStart, 160), value8)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 128)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 128))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n }\n function abi_encode_tuple_t_address_t_address_t_string_memory_ptr__to_t_address_t_address_t_string_memory_ptr__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), 96)\n tail := abi_encode_string(value2, add(headStart, 96))\n }\n function abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string_calldata(value0, value1, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value2, value3, tail_1)\n mstore(add(headStart, 64), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value4, value5, tail_2)\n }\n function panic_error_0x32()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_struct$_AgoricResponse_$1551_memory_ptr__to_t_struct$_AgoricResponse_$1551_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n mstore(headStart, _1)\n let tail_1 := add(headStart, 96)\n mstore(add(headStart, _1), iszero(iszero(mload(value0))))\n let memberValue0 := mload(add(value0, _1))\n let _2 := 0x40\n mstore(add(headStart, _2), _2)\n let pos := tail_1\n let length := mload(memberValue0)\n mstore(tail_1, length)\n pos := add(headStart, 128)\n let tail_2 := add(add(headStart, shl(5, length)), 128)\n let srcPtr := add(memberValue0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80))\n let _3 := mload(srcPtr)\n mstore(tail_2, iszero(iszero(mload(_3))))\n let memberValue0_1 := mload(add(_3, _1))\n mstore(add(tail_2, _1), _2)\n tail_2 := abi_encode_string(memberValue0_1, add(tail_2, _2))\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, and(value0, 0xffffffff00000000000000000000000000000000000000000000000000000000))\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 4), length)\n end := add(add(pos, length), 4)\n }\n function abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed(headStart, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), 160)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 160))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), sub(tail_2, headStart))\n tail := abi_encode_string(value5, tail_2)\n mstore(add(headStart, 128), and(value6, _1))\n }\n function abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string_calldata(value0, value1, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value2, value3, tail_1)\n mstore(add(headStart, 64), sub(tail_2, headStart))\n tail := abi_encode_string(value4, tail_2)\n }\n}", - "id": 16, - "language": "Yul", - "name": "#utility.yul" - } - ], - "immutableReferences": { - "10": [ - { - "length": 32, - "start": 248 - }, - { - "length": 32, - "start": 619 - }, - { - "length": 32, - "start": 1067 - }, - { - "length": 32, - "start": 2137 - } - ], - "1758": [ - { - "length": 32, - "start": 496 - }, - { - "length": 32, - "start": 1317 - }, - { - "length": 32, - "start": 1951 - } - ] - }, - "linkReferences": {}, - "object": "608060405260043610620000735760003560e01c80634916065811620000495780634916065814620001925780635e8846f614620001b75780636a22d8cc14620001dc57620000b1565b8063116191b614620000e45780631a98b2e014620001445780631c93b03a146200016b57620000b1565b36620000b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587490602001620000a7565b348015620000f157600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156200015157600080fd5b50620001696200016336600462000971565b62000212565b005b3480156200017857600080fd5b50620001836200033c565b6040516200013b919062000aca565b3480156200019f57600080fd5b5062000169620001b136600462000ae6565b620003d2565b348015620001c457600080fd5b506200011a620001d636600462000bc3565b62000503565b348015620001e957600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b600085856040516200022692919062000c9c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed990620002b2908e908e908e908e908e9089908d908d908d9060040162000cf5565b6020604051808303816000875af1158015620002d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f8919062000d5a565b6200032f576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600180546200034b9062000d7e565b80601f0160208091040260200160405190810160405280929190818152602001828054620003799062000d7e565b8015620003ca5780601f106200039e57610100808354040283529160200191620003ca565b820191906000526020600020905b815481529060010190602001808311620003ac57829003601f168201915b505050505081565b60008282604051620003e692919062000c9c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906200046c908b908b908b908b908b90899060040162000dd3565b6020604051808303816000875af11580156200048c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004b2919062000d5a565b620004e9576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620004f987878787878762000590565b5050505050505050565b60008054604051829173ffffffffffffffffffffffffffffffffffffffff16907f0000000000000000000000000000000000000000000000000000000000000000908590620005529062000917565b620005609392919062000e18565b604051809103906000f0801580156200057d573d6000803e3d6000fd5b509392505050565b505050505050505050565b6000620005d385858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506200050392505050565b90508073ffffffffffffffffffffffffffffffffffffffff167f9281645ccd9d592d9f6456fd9b95f6d2e0d36ebcc2f387399d5ac2b7c7ad7e6e86868a8a8a8a604051620006279695949392919062000e5c565b60405180910390a2604080516001808252818301909252600091816020015b604080518082019091526000815260606020820152815260200190600190039081620006465790505060408051808201825260018152815173ffffffffffffffffffffffffffffffffffffffff861660208281019190915293945090928301910160405160208183030381529060405281525081600081518110620006cf57620006cf62000eab565b602002602001018190525060008060e01b6040518060400160405280600015158152602001848152506040516020016200070a919062000eda565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905262000748929160200162000f88565b60405160208183030381529060405290506200058589898989856040517f0c93e3bb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690630c93e3bb9066038d7ea4c6800090620007eb9030908a908a908a908a908a90869060040162000fd2565b6000604051808303818588803b1580156200080557600080fd5b505af11580156200081a573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506200089b91508890889088908890889060040162001048565b600060405180830381600087803b158015620008b657600080fd5b505af1158015620008cb573d6000803e3d6000fd5b505050507fea1a07f81079879fea1a2eabafefd6f25bc76921237faf7fce963aeaa53c7ea185858585856040516200090895949392919062001048565b60405180910390a15050505050565b6117be806200109683390190565b60008083601f8401126200093857600080fd5b50813567ffffffffffffffff8111156200095157600080fd5b6020830191508360208285010111156200096a57600080fd5b9250929050565b60008060008060008060008060008060c08b8d0312156200099157600080fd5b8a35995060208b013567ffffffffffffffff80821115620009b157600080fd5b620009bf8e838f0162000925565b909b50995060408d0135915080821115620009d957600080fd5b620009e78e838f0162000925565b909950975060608d013591508082111562000a0157600080fd5b62000a0f8e838f0162000925565b909750955060808d013591508082111562000a2957600080fd5b5062000a388d828e0162000925565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b8381101562000a7557818101518382015260200162000a5b565b50506000910152565b6000815180845262000a9881602086016020860162000a58565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600062000adf602083018462000a7e565b9392505050565b60008060008060008060006080888a03121562000b0257600080fd5b87359650602088013567ffffffffffffffff8082111562000b2257600080fd5b62000b308b838c0162000925565b909850965060408a013591508082111562000b4a57600080fd5b62000b588b838c0162000925565b909650945060608a013591508082111562000b7257600080fd5b5062000b818a828b0162000925565b989b979a50959850939692959293505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121562000bd657600080fd5b813567ffffffffffffffff8082111562000bef57600080fd5b818401915084601f83011262000c0457600080fd5b81358181111562000c195762000c1962000b94565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171562000c625762000c6262000b94565b8160405282815287602084870101111562000c7c57600080fd5b826020860160208301376000928101602001929092525095945050505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600062000d1160c083018a8c62000cac565b828103604084015262000d2681898b62000cac565b9050866060840152828103608084015262000d4381868862000cac565b9150508260a08301529a9950505050505050505050565b60006020828403121562000d6d57600080fd5b8151801515811462000adf57600080fd5b600181811c9082168062000d9357607f821691505b60208210810362000dcd577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600062000def60808301878962000cac565b828103604084015262000e0481868862000cac565b915050826060830152979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff80861683528085166020840152506060604083015262000e53606083018462000a7e565b95945050505050565b60608152600062000e7260608301888a62000cac565b828103602084015262000e8781878962000cac565b9050828103604084015262000e9e81858762000cac565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006020808352606083018451151582850152818501516040808187015282825180855260808801915060808160051b8901019450858401935060005b8181101562000f7a578886037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80018352845180511515875287015187870185905262000f668588018262000a7e565b965050938601939186019160010162000f17565b509398975050505050505050565b7fffffffff00000000000000000000000000000000000000000000000000000000831681526000825162000fc481600485016020870162000a58565b919091016004019392505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a060208401526200100560a08401898b62000cac565b83810360408501526200101a81888a62000cac565b9050838103606085015262001030818762000a7e565b92505080841660808401525098975050505050505050565b6060815260006200105e60608301878962000cac565b82810360208401526200107381868862000cac565b9050828103604084015262001089818562000a7e565b9897505050505050505056fe60a06040523480156200001157600080fd5b50604051620017be380380620017be8339810160408190526200003491620001fb565b80836001600160a01b0381166200005e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b031660805262000075816200009e565b5050600180546001600160a01b0319166001600160a01b03929092169190911790555062000454565b6000808054620000ae90620002db565b80601f0160208091040260200160405190810160405280929190818152602001828054620000dc90620002db565b80156200012d5780601f1062000101576101008083540402835291602001916200012d565b820191906000526020600020905b8154815290600101906020018083116200010f57829003601f168201915b5050505050905081600090816200014591906200036a565b508160405162000156919062000436565b6040518091039020816040516200016e919062000436565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b80516001600160a01b0381168114620001ba57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620001f2578181015183820152602001620001d8565b50506000910152565b6000806000606084860312156200021157600080fd5b6200021c84620001a2565b92506200022c60208501620001a2565b60408501519092506001600160401b03808211156200024a57600080fd5b818601915086601f8301126200025f57600080fd5b815181811115620002745762000274620001bf565b604051601f8201601f19908116603f011681019083821181831017156200029f576200029f620001bf565b81604052828152896020848701011115620002b957600080fd5b620002cc836020830160208801620001d5565b80955050505050509250925092565b600181811c90821680620002f057607f821691505b6020821081036200031157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200036557600081815260208120601f850160051c81016020861015620003405750805b601f850160051c820191505b8181101562000361578281556001016200034c565b5050505b505050565b81516001600160401b03811115620003865762000386620001bf565b6200039e81620003978454620002db565b8462000317565b602080601f831160018114620003d65760008415620003bd5750858301515b600019600386901b1c1916600185901b17855562000361565b600085815260208120601f198616915b828110156200040757888601518255948401946001909101908401620003e6565b5085821015620004265787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082516200044a818460208701620001d5565b9190910192915050565b6080516113416200047d6000396000818160f50152818161026901526103ef01526113416000f3fe6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033a2646970667358221220d76f009a2c0afdd386344cb8d04f1e72dbd4b3faf6896e63f6f1e3d3eb0c805964736f6c63430008140033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH3 0x73 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH3 0x49 JUMPI DUP1 PUSH4 0x49160658 EQ PUSH3 0x192 JUMPI DUP1 PUSH4 0x5E8846F6 EQ PUSH3 0x1B7 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH3 0x1DC JUMPI PUSH3 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH3 0xE4 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH3 0x144 JUMPI DUP1 PUSH4 0x1C93B03A EQ PUSH3 0x16B JUMPI PUSH3 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH3 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH3 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0xF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x151 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x169 PUSH3 0x163 CALLDATASIZE PUSH1 0x4 PUSH3 0x971 JUMP JUMPDEST PUSH3 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x178 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x183 PUSH3 0x33C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x13B SWAP2 SWAP1 PUSH3 0xACA JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x19F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x169 PUSH3 0x1B1 CALLDATASIZE PUSH1 0x4 PUSH3 0xAE6 JUMP JUMPDEST PUSH3 0x3D2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x1C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH3 0x1D6 CALLDATASIZE PUSH1 0x4 PUSH3 0xBC3 JUMP JUMPDEST PUSH3 0x503 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH3 0x1E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x11A PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH3 0x226 SWAP3 SWAP2 SWAP1 PUSH3 0xC9C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH3 0x2B2 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH3 0xCF5 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH3 0x2D2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x2F8 SWAP2 SWAP1 PUSH3 0xD5A JUMP JUMPDEST PUSH3 0x32F JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP1 SLOAD PUSH3 0x34B SWAP1 PUSH3 0xD7E JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0x379 SWAP1 PUSH3 0xD7E JUMP JUMPDEST DUP1 ISZERO PUSH3 0x3CA JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x39E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x3CA JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x3AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH3 0x3E6 SWAP3 SWAP2 SWAP1 PUSH3 0xC9C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH3 0x46C SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH3 0xDD3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH3 0x48C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH3 0x4B2 SWAP2 SWAP1 PUSH3 0xD5A JUMP JUMPDEST PUSH3 0x4E9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x4F9 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH3 0x590 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH1 0x40 MLOAD DUP3 SWAP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 PUSH32 0x0 SWAP1 DUP6 SWAP1 PUSH3 0x552 SWAP1 PUSH3 0x917 JUMP JUMPDEST PUSH3 0x560 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xE18 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 PUSH1 0x0 CREATE DUP1 ISZERO DUP1 ISZERO PUSH3 0x57D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x5D3 DUP6 DUP6 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH3 0x503 SWAP3 POP POP POP JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x9281645CCD9D592D9F6456FD9B95F6D2E0D36EBCC2F387399D5AC2B7C7AD7E6E DUP7 DUP7 DUP11 DUP11 DUP11 DUP11 PUSH1 0x40 MLOAD PUSH3 0x627 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xE5C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 DUP1 DUP3 MSTORE DUP2 DUP4 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH3 0x646 JUMPI SWAP1 POP POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE PUSH1 0x1 DUP2 MSTORE DUP2 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP7 AND PUSH1 0x20 DUP3 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP4 SWAP5 POP SWAP1 SWAP3 DUP4 ADD SWAP2 ADD PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH3 0x6CF JUMPI PUSH3 0x6CF PUSH3 0xEAB JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x0 DUP1 PUSH1 0xE0 SHL PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP5 DUP2 MSTORE POP PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0x70A SWAP2 SWAP1 PUSH3 0xEDA JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH3 0x748 SWAP3 SWAP2 PUSH1 0x20 ADD PUSH3 0xF88 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH3 0x585 DUP10 DUP10 DUP10 DUP10 DUP6 PUSH1 0x40 MLOAD PUSH32 0xC93E3BB00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0xC93E3BB SWAP1 PUSH7 0x38D7EA4C68000 SWAP1 PUSH3 0x7EB SWAP1 ADDRESS SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP11 SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH3 0xFD2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x805 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x81A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH32 0x1C92115F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP4 POP PUSH4 0x1C92115F SWAP3 POP PUSH3 0x89B SWAP2 POP DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH3 0x1048 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x8B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x8CB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH32 0xEA1A07F81079879FEA1A2EABAFEFD6F25BC76921237FAF7FCE963AEAA53C7EA1 DUP6 DUP6 DUP6 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH3 0x908 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0x1048 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP JUMP JUMPDEST PUSH2 0x17BE DUP1 PUSH3 0x1096 DUP4 CODECOPY ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH3 0x938 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH3 0x951 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH3 0x96A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH3 0x991 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0x9B1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x9BF DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0x9D9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x9E7 DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xA01 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xA0F DUP15 DUP4 DUP16 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0xA38 DUP14 DUP3 DUP15 ADD PUSH3 0x925 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xA75 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0xA5B JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH3 0xA98 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH3 0xA58 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH3 0xADF PUSH1 0x20 DUP4 ADD DUP5 PUSH3 0xA7E JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH3 0xB02 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0xB22 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xB30 DUP12 DUP4 DUP13 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xB4A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xB58 DUP12 DUP4 DUP13 ADD PUSH3 0x925 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH3 0xB72 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0xB81 DUP11 DUP3 DUP12 ADD PUSH3 0x925 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xBD6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH3 0xBEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP5 ADD SWAP2 POP DUP5 PUSH1 0x1F DUP4 ADD SLT PUSH3 0xC04 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH3 0xC19 JUMPI PUSH3 0xC19 PUSH3 0xB94 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0xC62 JUMPI PUSH3 0xC62 PUSH3 0xB94 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP8 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0xC7C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 SWAP3 DUP2 ADD PUSH1 0x20 ADD SWAP3 SWAP1 SWAP3 MSTORE POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH3 0xD11 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xD26 DUP2 DUP10 DUP12 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH3 0xD43 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xD6D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH3 0xADF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0xD93 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0xDCD JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH3 0xDEF PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xE04 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP7 AND DUP4 MSTORE DUP1 DUP6 AND PUSH1 0x20 DUP5 ADD MSTORE POP PUSH1 0x60 PUSH1 0x40 DUP4 ADD MSTORE PUSH3 0xE53 PUSH1 0x60 DUP4 ADD DUP5 PUSH3 0xA7E JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH3 0xE72 PUSH1 0x60 DUP4 ADD DUP9 DUP11 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0xE87 DUP2 DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0xE9E DUP2 DUP6 DUP8 PUSH3 0xCAC JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 MSTORE PUSH1 0x60 DUP4 ADD DUP5 MLOAD ISZERO ISZERO DUP3 DUP6 ADD MSTORE DUP2 DUP6 ADD MLOAD PUSH1 0x40 DUP1 DUP2 DUP8 ADD MSTORE DUP3 DUP3 MLOAD DUP1 DUP6 MSTORE PUSH1 0x80 DUP9 ADD SWAP2 POP PUSH1 0x80 DUP2 PUSH1 0x5 SHL DUP10 ADD ADD SWAP5 POP DUP6 DUP5 ADD SWAP4 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0xF7A JUMPI DUP9 DUP7 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 ADD DUP4 MSTORE DUP5 MLOAD DUP1 MLOAD ISZERO ISZERO DUP8 MSTORE DUP8 ADD MLOAD DUP8 DUP8 ADD DUP6 SWAP1 MSTORE PUSH3 0xF66 DUP6 DUP9 ADD DUP3 PUSH3 0xA7E JUMP JUMPDEST SWAP7 POP POP SWAP4 DUP7 ADD SWAP4 SWAP2 DUP7 ADD SWAP2 PUSH1 0x1 ADD PUSH3 0xF17 JUMP JUMPDEST POP SWAP4 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 AND DUP2 MSTORE PUSH1 0x0 DUP3 MLOAD PUSH3 0xFC4 DUP2 PUSH1 0x4 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH3 0xA58 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD PUSH1 0x4 ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP11 AND DUP4 MSTORE PUSH1 0xA0 PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0x1005 PUSH1 0xA0 DUP5 ADD DUP10 DUP12 PUSH3 0xCAC JUMP JUMPDEST DUP4 DUP2 SUB PUSH1 0x40 DUP6 ADD MSTORE PUSH3 0x101A DUP2 DUP9 DUP11 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP4 DUP2 SUB PUSH1 0x60 DUP6 ADD MSTORE PUSH3 0x1030 DUP2 DUP8 PUSH3 0xA7E JUMP JUMPDEST SWAP3 POP POP DUP1 DUP5 AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH3 0x105E PUSH1 0x60 DUP4 ADD DUP8 DUP10 PUSH3 0xCAC JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH3 0x1073 DUP2 DUP7 DUP9 PUSH3 0xCAC JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH3 0x1089 DUP2 DUP6 PUSH3 0xA7E JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x17BE CODESIZE SUB DUP1 PUSH3 0x17BE DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0x1FB JUMP JUMPDEST DUP1 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5E JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x80 MSTORE PUSH3 0x75 DUP2 PUSH3 0x9E JUMP JUMPDEST POP POP PUSH1 0x1 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE POP PUSH3 0x454 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH3 0xAE SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0xDC SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 ISZERO PUSH3 0x12D JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x101 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x12D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x10F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH3 0x145 SWAP2 SWAP1 PUSH3 0x36A JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH3 0x156 SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH3 0x16E SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0x1BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0x1F2 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0x1D8 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0x211 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x21C DUP5 PUSH3 0x1A2 JUMP JUMPDEST SWAP3 POP PUSH3 0x22C PUSH1 0x20 DUP6 ADD PUSH3 0x1A2 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x24A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP7 ADD SWAP2 POP DUP7 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x25F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x274 JUMPI PUSH3 0x274 PUSH3 0x1BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x29F JUMPI PUSH3 0x29F PUSH3 0x1BF JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP10 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x2B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x2CC DUP4 PUSH1 0x20 DUP4 ADD PUSH1 0x20 DUP9 ADD PUSH3 0x1D5 JUMP JUMPDEST DUP1 SWAP6 POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x2F0 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x311 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x365 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x340 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x361 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x34C JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x386 JUMPI PUSH3 0x386 PUSH3 0x1BF JUMP JUMPDEST PUSH3 0x39E DUP2 PUSH3 0x397 DUP5 SLOAD PUSH3 0x2DB JUMP JUMPDEST DUP5 PUSH3 0x317 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x3D6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x3BD JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x361 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x407 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x3E6 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x426 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH3 0x44A DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH3 0x1D5 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH2 0x1341 PUSH3 0x47D PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0xF5 ADD MSTORE DUP2 DUP2 PUSH2 0x269 ADD MSTORE PUSH2 0x3EF ADD MSTORE PUSH2 0x1341 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x74 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x183 JUMPI DUP1 PUSH4 0x4FDB7F44 EQ PUSH2 0x1A3 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x1C3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F0 JUMPI PUSH2 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0xE3 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x141 JUMPI DUP1 PUSH4 0x268CA07E EQ PUSH2 0x163 JUMPI PUSH2 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH2 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH2 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x117 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x14D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x15C CALLDATASIZE PUSH1 0x4 PUSH2 0x9EB JUMP JUMPDEST PUSH2 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x16F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x17E CALLDATASIZE PUSH1 0x4 PUSH2 0xAC5 JUMP JUMPDEST PUSH2 0x345 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x19E CALLDATASIZE PUSH1 0x4 PUSH2 0xB31 JUMP JUMPDEST PUSH2 0x398 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x1BE CALLDATASIZE PUSH1 0x4 PUSH2 0xBD5 JUMP JUMPDEST PUSH2 0x4BF JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1CF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 SLOAD PUSH2 0x117 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH2 0x541 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x138 SWAP2 SWAP1 PUSH2 0xC85 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x224 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x2AE SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xCF8 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F1 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x338 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 PUSH2 0x5D3 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x351 DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x390 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH2 0x658 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AA SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x42E SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0xD79 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x44D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x4A7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4B5 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x74E JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH2 0x4CB DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x53B PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x527 SWAP1 PUSH32 0x3078303030303030303030303030303030303030303030303030303030303030 DUP2 MSTORE PUSH32 0x3030303030303030303000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x2A ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x658 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x550 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x57C SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5C9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x59E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5C9 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x5DD DUP6 DUP6 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH2 0x609 PUSH2 0x541 JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x654 JUMPI DUP2 DUP2 PUSH1 0x40 MLOAD PUSH32 0xDE6A3CBF00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64B SWAP3 SWAP2 SWAP1 PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0x666 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x692 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6DF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x6F5 SWAP2 SWAP1 PUSH2 0xEA3 JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH2 0x704 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH2 0x71A SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x75A DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x764 DUP5 DUP5 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x77F DUP4 DUP6 ADD DUP6 PUSH2 0x1051 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79D JUMPI PUSH2 0x79D PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x7E3 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x7BB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0x0 DUP1 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x807 JUMPI PUSH2 0x807 PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x83B JUMPI PUSH2 0x83B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x854 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP7 GAS CALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x891 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x896 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x14 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x436F6E74726163742063616C6C206661696C6564000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x64B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP4 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x92B JUMPI PUSH2 0x92B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x943 SWAP1 PUSH2 0x1218 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x7E9 JUMP JUMPDEST POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FC27C8074EE9BA6D8A94064CDEE28DDCBC36E7B0A4C730262CB845CA06332B2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x992 SWAP2 SWAP1 PUSH2 0x1277 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x9B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x9E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA35 DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA4E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA5A DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA7F DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA5 DUP14 DUP3 DUP15 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xAF3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xAFF DUP9 DUP4 DUP10 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB25 DUP8 DUP3 DUP9 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xB4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xB6B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB77 DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB9C DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xBB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBC2 DUP11 DUP3 DUP12 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xBE8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xBFF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC0B DUP6 DUP3 DUP7 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xC32 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xC1A JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xC53 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xC17 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xC98 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC3B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD12 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xD25 DUP2 DUP10 DUP12 PUSH2 0xCAF JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0xD40 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xC98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD93 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xDA6 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xDCE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0xE07 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xE21 PUSH1 0x20 DUP4 ADD DUP5 DUP7 PUSH2 0xCAF JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0xE9E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0xE7F JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x390 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xE8B JUMP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xEBD JUMPI PUSH2 0xEBD PUSH2 0xE29 JUMP JUMPDEST PUSH2 0xED1 DUP2 PUSH2 0xECB DUP5 SLOAD PUSH2 0xDBA JUMP JUMPDEST DUP5 PUSH2 0xE58 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0xF24 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0xEEE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x390 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0xF71 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0xF52 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0xFAD JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0xFCF DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0xC17 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP1 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0xFFC JUMPI PUSH2 0xFFC PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1049 JUMPI PUSH2 0x1049 PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1064 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x107C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1090 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x10A2 JUMPI PUSH2 0x10A2 PUSH2 0xE29 JUMP JUMPDEST DUP1 PUSH1 0x5 SHL PUSH2 0x10B1 DUP6 DUP3 ADD PUSH2 0x1002 JUMP JUMPDEST SWAP2 DUP3 MSTORE DUP4 DUP2 ADD DUP6 ADD SWAP2 DUP6 DUP2 ADD SWAP1 DUP10 DUP5 GT ISZERO PUSH2 0x10CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP7 ADD SWAP3 POP JUMPDEST DUP4 DUP4 LT ISZERO PUSH2 0x11DC JUMPI DUP3 CALLDATALOAD DUP6 DUP2 GT ISZERO PUSH2 0x10E9 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP7 ADD PUSH1 0x40 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP3 DUP14 SUB DUP2 ADD DUP3 SGT ISZERO PUSH2 0x1120 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST PUSH2 0x1128 PUSH2 0xFD9 JUMP JUMPDEST DUP11 DUP5 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x114F JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP2 MSTORE DUP4 DUP4 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x1163 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP6 ADD SWAP5 POP POP DUP14 PUSH1 0x3F DUP6 ADD SLT PUSH2 0x1179 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP11 DUP5 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x118D JUMPI PUSH2 0x118D PUSH2 0xE29 JUMP JUMPDEST PUSH2 0x119D DUP13 DUP5 PUSH1 0x1F DUP5 ADD AND ADD PUSH2 0x1002 JUMP JUMPDEST SWAP3 POP DUP1 DUP4 MSTORE DUP15 DUP5 DUP3 DUP8 ADD ADD GT ISZERO PUSH2 0x11B4 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP5 DUP7 ADD DUP14 DUP6 ADD CALLDATACOPY PUSH1 0x0 SWAP1 DUP4 ADD DUP13 ADD MSTORE DUP1 DUP12 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MSTORE POP POP SWAP2 DUP7 ADD SWAP2 SWAP1 DUP7 ADD SWAP1 PUSH2 0x10D1 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1270 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12FD JUMPI DUP9 DUP4 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD ISZERO ISZERO DUP5 MSTORE DUP8 ADD MLOAD DUP8 DUP5 ADD DUP8 SWAP1 MSTORE PUSH2 0x12EA DUP8 DUP6 ADD DUP3 PUSH2 0xC3B JUMP JUMPDEST SWAP6 DUP9 ADD SWAP6 SWAP4 POP POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x129E JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB0 DUP16 NOT 0xB2 PUSH29 0x5B96E2196BCC61C4069DC8FAC27E30816AC61FF2278165FDDA761B6473 PUSH16 0x6C63430008140033A264697066735822 SLT KECCAK256 0xD7 PUSH16 0x9A2C0AFDD386344CB8D04F1E72DBD4 0xB3 STATICCALL 0xF6 DUP10 PUSH15 0x63F6F1E3D3EB0C805964736F6C6343 STOP ADDMOD EQ STOP CALLER ", - "sourceMap": "2571:2483:13:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4927:31;;4948:9;160:25:16;;4936:10:13;;4927:31;;148:2:16;133:18;4927:31:13;;;;;;;;2571:2483;;5014:31;;5035:9;160:25:16;;5023:10:13;;5014:31;;148:2:16;133:18;5014:31:13;14:177:16;252:39:0;;;;;;;;;;;;;;;;;;394:42:16;382:55;;;364:74;;352:2;337:18;252:39:0;;;;;;;;872:667;;;;;;;;;;-1:-1:-1;872:667:0;;;;;:::i;:::-;;:::i;:::-;;2769:23:13;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;447:419:0:-;;;;;;;;;;-1:-1:-1;447:419:0;;;;;:::i;:::-;;:::i;3398:215:13:-;;;;;;;;;;-1:-1:-1;3398:215:13;;;;;:::i;:::-;;:::i;2718:45::-;;;;;;;;;;;;;;;872:667:0;1119:19;1151:7;;1141:18;;;;;;;:::i;:::-;;;;;;;;;1188:218;;;1141:18;-1:-1:-1;1188:35:0;:7;:35;;;;:218;;1241:9;;1268:11;;;;1297:13;;;;1141:18;;1357:11;;;;1386:6;;1188:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1170:276;;1424:22;;;;;;;;;;;;;;1170:276;1109:430;872:667;;;;;;;;;;:::o;2769:23:13:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;447:419:0:-;624:19;656:7;;646:18;;;;;;;:::i;:::-;;;;;;;;;680:80;;;646:18;-1:-1:-1;680:28:0;:7;:28;;;;:80;;709:9;;720:11;;;;733:13;;;;646:18;;680:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;675:128;;781:22;;;;;;;;;;;;;;675:128;814:45;823:11;;836:13;;851:7;;814:8;:45::i;:::-;614:252;447:419;;;;;;;:::o;3398:215:13:-;3462:7;3533:8;;3522:48;;3462:7;;3533:8;;;3551:10;;3564:5;;3522:48;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3481:99:13;3398:215;-1:-1:-1;;;3398:215:13:o;1702:221:0:-;;;;;;;;;;:::o;3619:723:13:-;3783:26;3812:32;3830:13;;3812:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3812:17:13;;-1:-1:-1;;;3812:32:13:i;:::-;3783:61;;3891:18;3859:139;;;3923:13;;3950:11;;3975:13;;3859:139;;;;;;;;;;;:::i;:::-;;;;;;;;4038:19;;;4055:1;4038:19;;;;;;;;;4008:27;;4038:19;;;;-1:-1:-1;;;;;;;;;;;;;;;;;4038:19:13;;;;;;;;;;;;;;-1:-1:-1;4081:48:13;;;;;;;;4092:4;4081:48;;4098:30;;394:42:16;382:55;;4081:48:13;4098:30;;;364:74:16;;;;4008:49:13;;-1:-1:-1;4081:48:13;;;;;337:18:16;4098:30:13;;;;;;;;;;;;4081:48;;;4068:7;4076:1;4068:10;;;;;;;;:::i;:::-;;;;;;:61;;;;4140:23;4203:10;4196:18;;4239:30;;;;;;;;4254:5;4239:30;;;;;;4261:7;4239:30;;;4228:42;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;4166:114;;;4228:42;4166:114;;:::i;:::-;;;;;;;;;;;;;4140:140;;4290:45;4296:11;;4309:13;;4324:10;4504:210;;;;;:38;:10;:38;;;;4550:16;;4504:210;;4589:4;;4608:16;;;;4638:18;;;;4670:7;;4589:4;;4504:210;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4725:67:13;;;;;:20;:7;:20;;-1:-1:-1;4725:20:13;;-1:-1:-1;4725:67:13;;-1:-1:-1;4746:16:13;;;;4764:18;;;;4784:7;;4725:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4807:65;4826:16;;4844:18;;4864:7;4807:65;;;;;;;;;;:::i;:::-;;;;;;;;4348:531;;;;;:::o;-1:-1:-1:-;;;;;;;;:::o;449:348:16:-;501:8;511:6;565:3;558:4;550:6;546:17;542:27;532:55;;583:1;580;573:12;532:55;-1:-1:-1;606:20:16;;649:18;638:30;;635:50;;;681:1;678;671:12;635:50;718:4;710:6;706:17;694:29;;770:3;763:4;754:6;746;742:19;738:30;735:39;732:59;;;787:1;784;777:12;732:59;449:348;;;;;:::o;802:1437::-;953:6;961;969;977;985;993;1001;1009;1017;1025;1078:3;1066:9;1057:7;1053:23;1049:33;1046:53;;;1095:1;1092;1085:12;1046:53;1131:9;1118:23;1108:33;;1192:2;1181:9;1177:18;1164:32;1215:18;1256:2;1248:6;1245:14;1242:34;;;1272:1;1269;1262:12;1242:34;1311:59;1362:7;1353:6;1342:9;1338:22;1311:59;:::i;:::-;1389:8;;-1:-1:-1;1285:85:16;-1:-1:-1;1477:2:16;1462:18;;1449:32;;-1:-1:-1;1493:16:16;;;1490:36;;;1522:1;1519;1512:12;1490:36;1561:61;1614:7;1603:8;1592:9;1588:24;1561:61;:::i;:::-;1641:8;;-1:-1:-1;1535:87:16;-1:-1:-1;1729:2:16;1714:18;;1701:32;;-1:-1:-1;1745:16:16;;;1742:36;;;1774:1;1771;1764:12;1742:36;1813:61;1866:7;1855:8;1844:9;1840:24;1813:61;:::i;:::-;1893:8;;-1:-1:-1;1787:87:16;-1:-1:-1;1981:3:16;1966:19;;1953:33;;-1:-1:-1;1998:16:16;;;1995:36;;;2027:1;2024;2017:12;1995:36;;2066:61;2119:7;2108:8;2097:9;2093:24;2066:61;:::i;:::-;2040:87;;2146:8;2136:18;;;2173:8;2163:18;;;2228:3;2217:9;2213:19;2200:33;2190:43;;802:1437;;;;;;;;;;;;;:::o;2244:250::-;2329:1;2339:113;2353:6;2350:1;2347:13;2339:113;;;2429:11;;;2423:18;2410:11;;;2403:39;2375:2;2368:10;2339:113;;;-1:-1:-1;;2486:1:16;2468:16;;2461:27;2244:250::o;2499:330::-;2541:3;2579:5;2573:12;2606:6;2601:3;2594:19;2622:76;2691:6;2684:4;2679:3;2675:14;2668:4;2661:5;2657:16;2622:76;:::i;:::-;2743:2;2731:15;2748:66;2727:88;2718:98;;;;2818:4;2714:109;;2499:330;-1:-1:-1;;2499:330:16:o;2834:220::-;2983:2;2972:9;2965:21;2946:4;3003:45;3044:2;3033:9;3029:18;3021:6;3003:45;:::i;:::-;2995:53;2834:220;-1:-1:-1;;;2834:220:16:o;3059:1078::-;3180:6;3188;3196;3204;3212;3220;3228;3281:3;3269:9;3260:7;3256:23;3252:33;3249:53;;;3298:1;3295;3288:12;3249:53;3334:9;3321:23;3311:33;;3395:2;3384:9;3380:18;3367:32;3418:18;3459:2;3451:6;3448:14;3445:34;;;3475:1;3472;3465:12;3445:34;3514:59;3565:7;3556:6;3545:9;3541:22;3514:59;:::i;:::-;3592:8;;-1:-1:-1;3488:85:16;-1:-1:-1;3680:2:16;3665:18;;3652:32;;-1:-1:-1;3696:16:16;;;3693:36;;;3725:1;3722;3715:12;3693:36;3764:61;3817:7;3806:8;3795:9;3791:24;3764:61;:::i;:::-;3844:8;;-1:-1:-1;3738:87:16;-1:-1:-1;3932:2:16;3917:18;;3904:32;;-1:-1:-1;3948:16:16;;;3945:36;;;3977:1;3974;3967:12;3945:36;;4016:61;4069:7;4058:8;4047:9;4043:24;4016:61;:::i;:::-;3059:1078;;;;-1:-1:-1;3059:1078:16;;-1:-1:-1;3059:1078:16;;;;3990:87;;-1:-1:-1;;;3059:1078:16:o;4142:184::-;4194:77;4191:1;4184:88;4291:4;4288:1;4281:15;4315:4;4312:1;4305:15;4331:981;4400:6;4453:2;4441:9;4432:7;4428:23;4424:32;4421:52;;;4469:1;4466;4459:12;4421:52;4509:9;4496:23;4538:18;4579:2;4571:6;4568:14;4565:34;;;4595:1;4592;4585:12;4565:34;4633:6;4622:9;4618:22;4608:32;;4678:7;4671:4;4667:2;4663:13;4659:27;4649:55;;4700:1;4697;4690:12;4649:55;4736:2;4723:16;4758:2;4754;4751:10;4748:36;;;4764:18;;:::i;:::-;4898:2;4892:9;4960:4;4952:13;;4803:66;4948:22;;;4972:2;4944:31;4940:40;4928:53;;;4996:18;;;5016:22;;;4993:46;4990:72;;;5042:18;;:::i;:::-;5082:10;5078:2;5071:22;5117:2;5109:6;5102:18;5157:7;5152:2;5147;5143;5139:11;5135:20;5132:33;5129:53;;;5178:1;5175;5168:12;5129:53;5234:2;5229;5225;5221:11;5216:2;5208:6;5204:15;5191:46;5279:1;5257:15;;;5274:2;5253:24;5246:35;;;;-1:-1:-1;5261:6:16;4331:981;-1:-1:-1;;;;;4331:981:16:o;5804:271::-;5987:6;5979;5974:3;5961:33;5943:3;6013:16;;6038:13;;;6013:16;5804:271;-1:-1:-1;5804:271:16:o;6080:326::-;6169:6;6164:3;6157:19;6221:6;6214:5;6207:4;6202:3;6198:14;6185:43;;6273:1;6266:4;6257:6;6252:3;6248:16;6244:27;6237:38;6139:3;6395:4;6325:66;6320:2;6312:6;6308:15;6304:88;6299:3;6295:98;6291:109;6284:116;;6080:326;;;;:::o;6411:844::-;6770:6;6759:9;6752:25;6813:3;6808:2;6797:9;6793:18;6786:31;6733:4;6840:63;6898:3;6887:9;6883:19;6875:6;6867;6840:63;:::i;:::-;6951:9;6943:6;6939:22;6934:2;6923:9;6919:18;6912:50;6985;7028:6;7020;7012;6985:50;:::i;:::-;6971:64;;7071:6;7066:2;7055:9;7051:18;7044:34;7127:9;7119:6;7115:22;7109:3;7098:9;7094:19;7087:51;7155:50;7198:6;7190;7182;7155:50;:::i;:::-;7147:58;;;7242:6;7236:3;7225:9;7221:19;7214:35;6411:844;;;;;;;;;;;;:::o;7260:277::-;7327:6;7380:2;7368:9;7359:7;7355:23;7351:32;7348:52;;;7396:1;7393;7386:12;7348:52;7428:9;7422:16;7481:5;7474:13;7467:21;7460:5;7457:32;7447:60;;7503:1;7500;7493:12;7542:437;7621:1;7617:12;;;;7664;;;7685:61;;7739:4;7731:6;7727:17;7717:27;;7685:61;7792:2;7784:6;7781:14;7761:18;7758:38;7755:218;;7829:77;7826:1;7819:88;7930:4;7927:1;7920:15;7958:4;7955:1;7948:15;7755:218;;7542:437;;;:::o;7984:581::-;8257:6;8246:9;8239:25;8300:3;8295:2;8284:9;8280:18;8273:31;8220:4;8327:63;8385:3;8374:9;8370:19;8362:6;8354;8327:63;:::i;:::-;8438:9;8430:6;8426:22;8421:2;8410:9;8406:18;8399:50;8466;8509:6;8501;8493;8466:50;:::i;:::-;8458:58;;;8552:6;8547:2;8536:9;8532:18;8525:34;7984:581;;;;;;;;;:::o;8570:441::-;8738:4;8767:42;8848:2;8840:6;8836:15;8825:9;8818:34;8900:2;8892:6;8888:15;8883:2;8872:9;8868:18;8861:43;;8940:2;8935;8924:9;8920:18;8913:30;8960:45;9001:2;8990:9;8986:18;8978:6;8960:45;:::i;:::-;8952:53;8570:441;-1:-1:-1;;;;;8570:441:16:o;9016:627::-;9291:2;9280:9;9273:21;9254:4;9317:62;9375:2;9364:9;9360:18;9352:6;9344;9317:62;:::i;:::-;9427:9;9419:6;9415:22;9410:2;9399:9;9395:18;9388:50;9461;9504:6;9496;9488;9461:50;:::i;:::-;9447:64;;9559:9;9551:6;9547:22;9542:2;9531:9;9527:18;9520:50;9587;9630:6;9622;9614;9587:50;:::i;:::-;9579:58;9016:627;-1:-1:-1;;;;;;;;;9016:627:16:o;9648:184::-;9700:77;9697:1;9690:88;9797:4;9794:1;9787:15;9821:4;9818:1;9811:15;9837:1242;9993:4;10022:2;10051;10040:9;10033:21;10092:2;10081:9;10077:18;10151:6;10145:13;10138:21;10131:29;10126:2;10115:9;10111:18;10104:57;10208:2;10200:6;10196:15;10190:22;10231:4;10271:2;10266;10255:9;10251:18;10244:30;10294:6;10329:12;10323:19;10366:6;10358;10351:22;10404:3;10393:9;10389:19;10382:26;;10467:3;10457:6;10454:1;10450:14;10439:9;10435:30;10431:40;10417:54;;10512:2;10498:12;10494:21;10480:35;;10533:1;10543:507;10557:6;10554:1;10551:13;10543:507;;;10622:22;;;10646:66;10618:95;10606:108;;10737:13;;10792:9;;10785:17;10778:25;10763:41;;10845:11;;10839:18;10877:15;;;10870:27;;;10920:50;10954:15;;;10839:18;10920:50;:::i;:::-;10910:60;-1:-1:-1;;10993:15:16;;;;11028:12;;;;10579:1;10572:9;10543:507;;;-1:-1:-1;11067:6:16;;9837:1242;-1:-1:-1;;;;;;;;9837:1242:16:o;11084:430::-;11281:66;11273:6;11269:79;11264:3;11257:92;11239:3;11378:6;11372:13;11394:74;11461:6;11457:1;11452:3;11448:11;11441:4;11433:6;11429:17;11394:74;:::i;:::-;11488:16;;;;11506:1;11484:24;;11084:430;-1:-1:-1;;;11084:430:16:o;11519:822::-;11801:4;11830:42;11911:2;11903:6;11899:15;11888:9;11881:34;11951:3;11946:2;11935:9;11931:18;11924:31;11978:63;12036:3;12025:9;12021:19;12013:6;12005;11978:63;:::i;:::-;12089:9;12081:6;12077:22;12072:2;12061:9;12057:18;12050:50;12123;12166:6;12158;12150;12123:50;:::i;:::-;12109:64;;12221:9;12213:6;12209:22;12204:2;12193:9;12189:18;12182:50;12249:33;12275:6;12267;12249:33;:::i;:::-;12241:41;;;12331:2;12323:6;12319:15;12313:3;12302:9;12298:19;12291:44;;11519:822;;;;;;;;;;:::o;12346:598::-;12609:2;12598:9;12591:21;12572:4;12635:62;12693:2;12682:9;12678:18;12670:6;12662;12635:62;:::i;:::-;12745:9;12737:6;12733:22;12728:2;12717:9;12713:18;12706:50;12779;12822:6;12814;12806;12779:50;:::i;:::-;12765:64;;12877:9;12869:6;12865:22;12860:2;12849:9;12845:18;12838:50;12905:33;12931:6;12923;12905:33;:::i;:::-;12897:41;12346:598;-1:-1:-1;;;;;;;;12346:598:16:o" - }, - "methodIdentifiers": { - "chainName()": "1c93b03a", - "createSmartWallet(string)": "5e8846f6", - "execute(bytes32,string,string,bytes)": "49160658", - "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", - "gasService()": "6a22d8cc", - "gateway()": "116191b6" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"gateway_\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"gasReceiver_\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"chainName_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"CrossChainCallSent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Received\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"wallet\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"owner\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"}],\"name\":\"SmartWalletCreated\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"chainName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"owner\",\"type\":\"string\"}],\"name\":\"createSmartWallet\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasService\",\"outputs\":[{\"internalType\":\"contract IAxelarGasService\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/__tests__/contracts/AgoricProxy.sol\":\"AgoricProxy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":{\"keccak256\":\"0x2a88d046f9cdc664afc7b788d6c5b534d361b46fb45ab7abf721a58dd813359b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ac48adfa686aa78e2474bcb72f49791b631bd5dd15e0991ccd91b9660caacdb\",\"dweb:/ipfs/QmQ7uFDHagPUDq93T4vaeANzLE8J8Ch3jcdTAdNT7kkfEW\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":{\"keccak256\":\"0x7ad77d3af41f342e9032889a7b5aa224ab0c6dfaf9ce9350fe403d4a596c5eae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc2358f1f1138cd742a7cfdfc83420c488c19c3b3e39d703482e124e453953ee\",\"dweb:/ipfs/QmYki4j2yWrixJVs955DyS1ZmLD5zcxe8ss52w6DLBLRi4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xb77ad755f4eade679279d5ca12b6926595e41e17387e143530f4fb57672d58d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b0d01d0810d12dba98839b084440ab9b52e04d94e9431a6ffadabb1651d0f100\",\"dweb:/ipfs/Qme9KLMtbmNvsAj2giGTzNFKAymkMJq88Ef445pLiawKWa\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]},\"src/__tests__/contracts/AgoricProxy.sol\":{\"keccak256\":\"0x1f89b022460ace074827cd232c5ea192b1b3192be4be264cb3563189c921943f\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4fcdc4b827ef417d3e86c44c8b439a877899284d28636d17a8277a810fae54bc\",\"dweb:/ipfs/QmXXx3o6Tkx7T4fFDJRZayFfUMB1FwLuy4dzNHoEJ9HP1j\"]},\"src/__tests__/contracts/Ownable.sol\":{\"keccak256\":\"0xe58b7ff3c99e14494af44e1588a94bba12319b3ee559e5868a5a646036be0f31\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4e57d0fccf76dcdf1ef09a62138bf7810c95d3d721a942af11fd9496b2e58a1e\",\"dweb:/ipfs/QmQYSKgBPHumQ92NfQx4wkxj8rG2EzggNuj2pbBWYexxRo\"]}},\"version\":1}" - }, - "Wallet": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "gateway_", - "type": "address" - }, - { - "internalType": "address", - "name": "gasReceiver_", - "type": "address" - }, - { - "internalType": "string", - "name": "owner_", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "InvalidAddress", - "type": "error" - }, - { - "inputs": [], - "name": "NotApprovedByGateway", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "owner", - "type": "string" - } - ], - "name": "OwnableInvalidOwner", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "account", - "type": "string" - } - ], - "name": "OwnableUnauthorizedAccount", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "executor", - "type": "address" - }, - { - "components": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "result", - "type": "bytes" - } - ], - "indexed": false, - "internalType": "struct CallResult[]", - "name": "results", - "type": "tuple[]" - } - ], - "name": "MulticallExecuted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "string", - "name": "previousOwner", - "type": "string" - }, - { - "indexed": true, - "internalType": "string", - "name": "newOwner", - "type": "string" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Received", - "type": "event" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - } - ], - "name": "execute", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "tokenSymbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "executeWithToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "gasService", - "outputs": [ - { - "internalType": "contract IAxelarGasService", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "gateway", - "outputs": [ - { - "internalType": "contract IAxelarGateway", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "currentOwner", - "type": "string" - } - ], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "oldOwner", - "type": "string" - }, - { - "internalType": "string", - "name": "newOwner", - "type": "string" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" - } - ], - "evm": { - "bytecode": { - "functionDebugData": { - "@_1599": { - "entryPoint": null, - "id": 1599, - "parameterSlots": 3, - "returnSlots": 0 - }, - "@_2005": { - "entryPoint": null, - "id": 2005, - "parameterSlots": 1, - "returnSlots": 0 - }, - "@_32": { - "entryPoint": null, - "id": 32, - "parameterSlots": 1, - "returnSlots": 0 - }, - "@_transferOwnership_2108": { - "entryPoint": 158, - "id": 2108, - "parameterSlots": 1, - "returnSlots": 0 - }, - "abi_decode_address_fromMemory": { - "entryPoint": 418, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory": { - "entryPoint": 507, - "id": null, - "parameterSlots": 2, - "returnSlots": 3 - }, - "abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": 1078, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "array_dataslot_string_storage": { - "entryPoint": null, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "clean_up_bytearray_end_slots_string_storage": { - "entryPoint": 791, - "id": null, - "parameterSlots": 3, - "returnSlots": 0 - }, - "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { - "entryPoint": 874, - "id": null, - "parameterSlots": 2, - "returnSlots": 0 - }, - "copy_memory_to_memory_with_cleanup": { - "entryPoint": 469, - "id": null, - "parameterSlots": 3, - "returnSlots": 0 - }, - "extract_byte_array_length": { - "entryPoint": 731, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "extract_used_part_and_set_length_of_short_byte_array": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "panic_error_0x41": { - "entryPoint": 447, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - } - }, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:4535:16", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:16", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "74:117:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "84:22:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "99:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "93:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "93:13:16" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "84:5:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "169:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "178:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "181:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "171:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "171:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "171:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "128:5:16" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "139:5:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "154:3:16", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "159:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "150:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "150:11:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "163:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "146:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "146:19:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "135:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "135:31:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "125:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "125:42:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "118:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "118:50:16" - }, - "nodeType": "YulIf", - "src": "115:70:16" - } - ] - }, - "name": "abi_decode_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "53:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "64:5:16", - "type": "" - } - ], - "src": "14:177:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "228:95:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "245:1:16", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "252:3:16", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "257:10:16", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "248:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "248:20:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "238:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "238:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "238:31:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "285:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "288:4:16", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "278:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "278:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "278:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "309:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "312:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "302:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "302:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "302:15:16" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "196:127:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "394:184:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "404:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "413:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "408:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "473:63:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "498:3:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "503:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "494:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "494:11:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "517:3:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "522:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "513:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "513:11:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "507:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "507:18:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "487:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "487:39:16" - }, - "nodeType": "YulExpressionStatement", - "src": "487:39:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "434:1:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "437:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "431:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "431:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "445:19:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "447:15:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "456:1:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "459:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "452:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "452:10:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "447:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "427:3:16", - "statements": [] - }, - "src": "423:113:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "556:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "561:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "552:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "552:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "570:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "545:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "545:27:16" - }, - "nodeType": "YulExpressionStatement", - "src": "545:27:16" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "372:3:16", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "377:3:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "382:6:16", - "type": "" - } - ], - "src": "328:250:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "708:942:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "754:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "763:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "766:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "756:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "756:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "756:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "729:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "738:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "725:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "725:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "750:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "721:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "721:32:16" - }, - "nodeType": "YulIf", - "src": "718:52:16" - }, - { - "nodeType": "YulAssignment", - "src": "779:50:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "819:9:16" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "789:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "789:40:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "779:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "838:59:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "882:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "893:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "878:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "878:18:16" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "848:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "848:49:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "838:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "906:39:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "930:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "941:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "926:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "926:18:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "920:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "920:25:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "910:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "954:28:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "972:2:16", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "976:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "968:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "968:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "980:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "964:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "964:18:16" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "958:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1009:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1018:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1021:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1011:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1011:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1011:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "997:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1005:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "994:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "994:14:16" - }, - "nodeType": "YulIf", - "src": "991:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1034:32:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1048:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1059:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1044:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1044:22:16" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1038:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1114:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1123:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1126:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1116:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1116:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1116:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1093:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1097:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1089:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1089:13:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1104:7:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1085:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1085:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1078:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1078:35:16" - }, - "nodeType": "YulIf", - "src": "1075:55:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1139:19:16", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1155:2:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1149:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "1149:9:16" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "1143:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1181:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1183:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "1183:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1183:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1173:2:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1177:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1170:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1170:10:16" - }, - "nodeType": "YulIf", - "src": "1167:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1212:17:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1226:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1222:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1222:7:16" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "1216:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1238:23:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1258:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1252:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "1252:9:16" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1242:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1270:71:16", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1292:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1316:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1320:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1312:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1312:13:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1327:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1308:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1308:22:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1332:2:16", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1304:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1304:31:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1337:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1300:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1300:40:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1288:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1288:53:16" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1274:10:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1400:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1402:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "1402:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1402:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1359:10:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1371:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1356:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1356:18:16" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1379:10:16" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1391:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1376:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1376:22:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1353:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1353:46:16" - }, - "nodeType": "YulIf", - "src": "1350:72:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1438:2:16", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1442:10:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1431:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1431:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1431:22:16" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1469:6:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1477:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1462:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1462:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1462:18:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1526:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1535:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1538:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1528:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1528:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1528:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1503:2:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1507:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1499:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1499:11:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1512:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1495:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1495:20:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1517:7:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1492:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1492:33:16" - }, - "nodeType": "YulIf", - "src": "1489:53:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1590:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1594:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1586:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1586:11:16" - }, - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1603:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1611:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1599:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1599:15:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1616:2:16" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "1551:34:16" - }, - "nodeType": "YulFunctionCall", - "src": "1551:68:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1551:68:16" - }, - { - "nodeType": "YulAssignment", - "src": "1628:16:16", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1638:6:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1628:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "658:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "669:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "681:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "689:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "697:6:16", - "type": "" - } - ], - "src": "583:1067:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1710:325:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1720:22:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1734:1:16", - "type": "", - "value": "1" - }, - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "1737:4:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "1730:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1730:12:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1720:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1751:38:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "1781:4:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1787:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1777:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1777:12:16" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "1755:18:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1828:31:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1830:27:16", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1844:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1852:4:16", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1840:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1840:17:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1830:6:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "1808:18:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1801:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1801:26:16" - }, - "nodeType": "YulIf", - "src": "1798:61:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1918:111:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1939:1:16", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1946:3:16", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1951:10:16", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1942:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1942:20:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1932:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1932:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1932:31:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1983:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1986:4:16", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1976:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1976:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1976:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2011:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2014:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2004:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2004:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2004:15:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "1874:18:16" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1897:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1905:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1894:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1894:14:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "1871:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1871:38:16" - }, - "nodeType": "YulIf", - "src": "1868:161:16" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "1690:4:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1699:6:16", - "type": "" - } - ], - "src": "1655:380:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2096:65:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2113:1:16", - "type": "", - "value": "0" - }, - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "2116:3:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2106:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2106:14:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2106:14:16" - }, - { - "nodeType": "YulAssignment", - "src": "2129:26:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2147:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2150:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "2137:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "2137:18:16" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2129:4:16" - } - ] - } - ] - }, - "name": "array_dataslot_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "2079:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "2087:4:16", - "type": "" - } - ], - "src": "2040:121:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2247:464:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2280:425:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2294:11:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2304:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2298:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2325:2:16" - }, - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "2329:5:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2318:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2318:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2318:17:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2348:31:16", - "value": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2370:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2374:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "2360:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "2360:19:16" - }, - "variables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "2352:4:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2392:57:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2415:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2425:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "2432:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2444:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2428:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2428:19:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "2421:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2421:27:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2411:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2411:38:16" - }, - "variables": [ - { - "name": "deleteStart", - "nodeType": "YulTypedName", - "src": "2396:11:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2486:23:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2488:19:16", - "value": { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2503:4:16" - }, - "variableNames": [ - { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "2488:11:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "2468:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2480:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2465:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2465:20:16" - }, - "nodeType": "YulIf", - "src": "2462:47:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2522:41:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2536:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2546:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2553:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2558:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2549:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2549:12:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "2542:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2542:20:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2532:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2532:31:16" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "2526:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2576:24:16", - "value": { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "2589:11:16" - }, - "variables": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "2580:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2674:21:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2683:5:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2690:2:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "2676:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2676:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2676:17:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2624:5:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2631:2:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2621:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2621:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "2635:26:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2637:22:16", - "value": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2650:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2657:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2646:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2646:13:16" - }, - "variableNames": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2637:5:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "2617:3:16", - "statements": [] - }, - "src": "2613:82:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2263:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2268:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2260:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2260:11:16" - }, - "nodeType": "YulIf", - "src": "2257:448:16" - } - ] - }, - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "2219:5:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "2226:3:16", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "2231:10:16", - "type": "" - } - ], - "src": "2166:545:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2801:81:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2811:65:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2826:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2844:1:16", - "type": "", - "value": "3" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2847:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2840:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2840:11:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2857:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2853:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2853:6:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "2836:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2836:24:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2832:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2832:29:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2822:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2822:40:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2868:1:16", - "type": "", - "value": "1" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2871:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2864:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2864:11:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "2819:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2819:57:16" - }, - "variableNames": [ - { - "name": "used", - "nodeType": "YulIdentifier", - "src": "2811:4:16" - } - ] - } - ] - }, - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "2778:4:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "2784:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "used", - "nodeType": "YulTypedName", - "src": "2792:4:16", - "type": "" - } - ], - "src": "2716:166:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2983:1256:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2993:24:16", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3013:3:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3007:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3007:10:16" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "2997:6:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3060:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "3062:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "3062:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3062:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3032:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3048:2:16", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3052:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3044:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3044:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3056:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3040:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3040:18:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3029:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3029:30:16" - }, - "nodeType": "YulIf", - "src": "3026:56:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3135:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3173:4:16" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "3167:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3167:11:16" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "3141:25:16" - }, - "nodeType": "YulFunctionCall", - "src": "3141:38:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3181:6:16" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulIdentifier", - "src": "3091:43:16" - }, - "nodeType": "YulFunctionCall", - "src": "3091:97:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3091:97:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3197:18:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3214:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "3201:9:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3224:23:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3243:4:16", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "3228:11:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3256:24:16", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "3269:11:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3256:9:16" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3326:656:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3340:35:16", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3359:6:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3371:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3367:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3367:7:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3355:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3355:20:16" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "3344:7:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3388:49:16", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3432:4:16" - } - ], - "functionName": { - "name": "array_dataslot_string_storage", - "nodeType": "YulIdentifier", - "src": "3402:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "3402:35:16" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "3392:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3450:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3459:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "3454:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3537:172:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3562:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3580:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3585:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3576:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3576:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3570:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3570:26:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "3555:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3555:42:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3555:42:16" - }, - { - "nodeType": "YulAssignment", - "src": "3614:24:16", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3628:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3636:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3624:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3624:14:16" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3614:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3655:40:16", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3672:9:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "3683:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3668:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3668:27:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3655:9:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3484:1:16" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "3487:7:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "3481:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3481:14:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "3496:28:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3498:24:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3507:1:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "3510:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3503:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3503:19:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3498:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "3477:3:16", - "statements": [] - }, - "src": "3473:236:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3757:166:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3775:43:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3802:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3807:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3798:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3798:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3792:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3792:26:16" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "3779:9:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3842:6:16" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "3854:9:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3881:1:16", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3884:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3877:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3877:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3893:3:16", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3873:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3873:24:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3903:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3899:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3899:6:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "3869:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3869:37:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3865:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3865:42:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3850:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3850:58:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "3835:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3835:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3835:74:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "3728:7:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3737:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "3725:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3725:19:16" - }, - "nodeType": "YulIf", - "src": "3722:201:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3943:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3957:1:16", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3960:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3953:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3953:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3969:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3949:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3949:22:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "3936:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3936:36:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3936:36:16" - } - ] - }, - "nodeType": "YulCase", - "src": "3319:663:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3324:1:16", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3999:234:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4013:14:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4026:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4017:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4062:67:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4080:35:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "4099:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "4104:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4095:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4095:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4089:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "4089:26:16" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4080:5:16" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "4043:6:16" - }, - "nodeType": "YulIf", - "src": "4040:89:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "4149:4:16" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4208:5:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "4215:6:16" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "4155:52:16" - }, - "nodeType": "YulFunctionCall", - "src": "4155:67:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "4142:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4142:81:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4142:81:16" - } - ] - }, - "nodeType": "YulCase", - "src": "3991:242:16", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3299:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3307:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3296:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3296:14:16" - }, - "nodeType": "YulSwitch", - "src": "3289:944:16" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "2968:4:16", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "2974:3:16", - "type": "" - } - ], - "src": "2887:1352:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4383:150:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4393:27:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4413:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4407:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "4407:13:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "4397:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4468:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4476:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4464:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4464:17:16" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4483:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4488:6:16" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "4429:34:16" - }, - "nodeType": "YulFunctionCall", - "src": "4429:66:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4429:66:16" - }, - { - "nodeType": "YulAssignment", - "src": "4504:23:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4515:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4520:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4511:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4511:16:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "4504:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4359:3:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4364:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "4375:3:16", - "type": "" - } - ], - "src": "4244:289:16" - } - ] - }, - "contents": "{\n { }\n function abi_decode_address_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := abi_decode_address_fromMemory(headStart)\n value1 := abi_decode_address_fromMemory(add(headStart, 32))\n let offset := mload(add(headStart, 64))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let _3 := mload(_2)\n if gt(_3, _1) { panic_error_0x41() }\n let _4 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_3, 0x1f), _4), 63), _4))\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _3)\n if gt(add(add(_2, _3), 32), dataEnd) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(_2, 32), add(memPtr, 32), _3)\n value2 := memPtr\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n}", - "id": 16, - "language": "Yul", - "name": "#utility.yul" - } - ], - "linkReferences": {}, - "object": "60a06040523480156200001157600080fd5b50604051620017be380380620017be8339810160408190526200003491620001fb565b80836001600160a01b0381166200005e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b031660805262000075816200009e565b5050600180546001600160a01b0319166001600160a01b03929092169190911790555062000454565b6000808054620000ae90620002db565b80601f0160208091040260200160405190810160405280929190818152602001828054620000dc90620002db565b80156200012d5780601f1062000101576101008083540402835291602001916200012d565b820191906000526020600020905b8154815290600101906020018083116200010f57829003601f168201915b5050505050905081600090816200014591906200036a565b508160405162000156919062000436565b6040518091039020816040516200016e919062000436565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b80516001600160a01b0381168114620001ba57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620001f2578181015183820152602001620001d8565b50506000910152565b6000806000606084860312156200021157600080fd5b6200021c84620001a2565b92506200022c60208501620001a2565b60408501519092506001600160401b03808211156200024a57600080fd5b818601915086601f8301126200025f57600080fd5b815181811115620002745762000274620001bf565b604051601f8201601f19908116603f011681019083821181831017156200029f576200029f620001bf565b81604052828152896020848701011115620002b957600080fd5b620002cc836020830160208801620001d5565b80955050505050509250925092565b600181811c90821680620002f057607f821691505b6020821081036200031157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200036557600081815260208120601f850160051c81016020861015620003405750805b601f850160051c820191505b8181101562000361578281556001016200034c565b5050505b505050565b81516001600160401b03811115620003865762000386620001bf565b6200039e81620003978454620002db565b8462000317565b602080601f831160018114620003d65760008415620003bd5750858301515b600019600386901b1c1916600185901b17855562000361565b600085815260208120601f198616915b828110156200040757888601518255948401946001909101908401620003e6565b5085821015620004265787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082516200044a818460208701620001d5565b9190910192915050565b6080516113416200047d6000396000818160f50152818161026901526103ef01526113416000f3fe6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033", - "opcodes": "PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x17BE CODESIZE SUB DUP1 PUSH3 0x17BE DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0x1FB JUMP JUMPDEST DUP1 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5E JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x80 MSTORE PUSH3 0x75 DUP2 PUSH3 0x9E JUMP JUMPDEST POP POP PUSH1 0x1 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE POP PUSH3 0x454 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH3 0xAE SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH3 0xDC SWAP1 PUSH3 0x2DB JUMP JUMPDEST DUP1 ISZERO PUSH3 0x12D JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x101 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x12D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH3 0x10F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH3 0x145 SWAP2 SWAP1 PUSH3 0x36A JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH3 0x156 SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH3 0x16E SWAP2 SWAP1 PUSH3 0x436 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0x1BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0x1F2 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH3 0x1D8 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0x211 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x21C DUP5 PUSH3 0x1A2 JUMP JUMPDEST SWAP3 POP PUSH3 0x22C PUSH1 0x20 DUP6 ADD PUSH3 0x1A2 JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD SWAP1 SWAP3 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x24A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP7 ADD SWAP2 POP DUP7 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x25F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x274 JUMPI PUSH3 0x274 PUSH3 0x1BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x29F JUMPI PUSH3 0x29F PUSH3 0x1BF JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP10 PUSH1 0x20 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x2B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x2CC DUP4 PUSH1 0x20 DUP4 ADD PUSH1 0x20 DUP9 ADD PUSH3 0x1D5 JUMP JUMPDEST DUP1 SWAP6 POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x2F0 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x311 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x365 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x340 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x361 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x34C JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x386 JUMPI PUSH3 0x386 PUSH3 0x1BF JUMP JUMPDEST PUSH3 0x39E DUP2 PUSH3 0x397 DUP5 SLOAD PUSH3 0x2DB JUMP JUMPDEST DUP5 PUSH3 0x317 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x3D6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x3BD JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x361 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x407 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x3E6 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x426 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH3 0x44A DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH3 0x1D5 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH2 0x1341 PUSH3 0x47D PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0xF5 ADD MSTORE DUP2 DUP2 PUSH2 0x269 ADD MSTORE PUSH2 0x3EF ADD MSTORE PUSH2 0x1341 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x74 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x183 JUMPI DUP1 PUSH4 0x4FDB7F44 EQ PUSH2 0x1A3 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x1C3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F0 JUMPI PUSH2 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0xE3 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x141 JUMPI DUP1 PUSH4 0x268CA07E EQ PUSH2 0x163 JUMPI PUSH2 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH2 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH2 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x117 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x14D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x15C CALLDATASIZE PUSH1 0x4 PUSH2 0x9EB JUMP JUMPDEST PUSH2 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x16F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x17E CALLDATASIZE PUSH1 0x4 PUSH2 0xAC5 JUMP JUMPDEST PUSH2 0x345 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x19E CALLDATASIZE PUSH1 0x4 PUSH2 0xB31 JUMP JUMPDEST PUSH2 0x398 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x1BE CALLDATASIZE PUSH1 0x4 PUSH2 0xBD5 JUMP JUMPDEST PUSH2 0x4BF JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1CF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 SLOAD PUSH2 0x117 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH2 0x541 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x138 SWAP2 SWAP1 PUSH2 0xC85 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x224 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x2AE SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xCF8 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F1 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x338 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 PUSH2 0x5D3 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x351 DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x390 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH2 0x658 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AA SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x42E SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0xD79 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x44D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x4A7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4B5 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x74E JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH2 0x4CB DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x53B PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x527 SWAP1 PUSH32 0x3078303030303030303030303030303030303030303030303030303030303030 DUP2 MSTORE PUSH32 0x3030303030303030303000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x2A ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x658 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x550 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x57C SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5C9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x59E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5C9 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x5DD DUP6 DUP6 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH2 0x609 PUSH2 0x541 JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x654 JUMPI DUP2 DUP2 PUSH1 0x40 MLOAD PUSH32 0xDE6A3CBF00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64B SWAP3 SWAP2 SWAP1 PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0x666 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x692 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6DF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x6F5 SWAP2 SWAP1 PUSH2 0xEA3 JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH2 0x704 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH2 0x71A SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x75A DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x764 DUP5 DUP5 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x77F DUP4 DUP6 ADD DUP6 PUSH2 0x1051 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79D JUMPI PUSH2 0x79D PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x7E3 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x7BB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0x0 DUP1 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x807 JUMPI PUSH2 0x807 PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x83B JUMPI PUSH2 0x83B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x854 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP7 GAS CALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x891 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x896 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x14 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x436F6E74726163742063616C6C206661696C6564000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x64B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP4 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x92B JUMPI PUSH2 0x92B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x943 SWAP1 PUSH2 0x1218 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x7E9 JUMP JUMPDEST POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FC27C8074EE9BA6D8A94064CDEE28DDCBC36E7B0A4C730262CB845CA06332B2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x992 SWAP2 SWAP1 PUSH2 0x1277 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x9B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x9E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA35 DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA4E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA5A DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA7F DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA5 DUP14 DUP3 DUP15 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xAF3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xAFF DUP9 DUP4 DUP10 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB25 DUP8 DUP3 DUP9 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xB4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xB6B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB77 DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB9C DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xBB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBC2 DUP11 DUP3 DUP12 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xBE8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xBFF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC0B DUP6 DUP3 DUP7 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xC32 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xC1A JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xC53 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xC17 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xC98 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC3B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD12 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xD25 DUP2 DUP10 DUP12 PUSH2 0xCAF JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0xD40 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xC98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD93 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xDA6 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xDCE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0xE07 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xE21 PUSH1 0x20 DUP4 ADD DUP5 DUP7 PUSH2 0xCAF JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0xE9E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0xE7F JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x390 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xE8B JUMP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xEBD JUMPI PUSH2 0xEBD PUSH2 0xE29 JUMP JUMPDEST PUSH2 0xED1 DUP2 PUSH2 0xECB DUP5 SLOAD PUSH2 0xDBA JUMP JUMPDEST DUP5 PUSH2 0xE58 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0xF24 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0xEEE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x390 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0xF71 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0xF52 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0xFAD JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0xFCF DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0xC17 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP1 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0xFFC JUMPI PUSH2 0xFFC PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1049 JUMPI PUSH2 0x1049 PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1064 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x107C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1090 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x10A2 JUMPI PUSH2 0x10A2 PUSH2 0xE29 JUMP JUMPDEST DUP1 PUSH1 0x5 SHL PUSH2 0x10B1 DUP6 DUP3 ADD PUSH2 0x1002 JUMP JUMPDEST SWAP2 DUP3 MSTORE DUP4 DUP2 ADD DUP6 ADD SWAP2 DUP6 DUP2 ADD SWAP1 DUP10 DUP5 GT ISZERO PUSH2 0x10CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP7 ADD SWAP3 POP JUMPDEST DUP4 DUP4 LT ISZERO PUSH2 0x11DC JUMPI DUP3 CALLDATALOAD DUP6 DUP2 GT ISZERO PUSH2 0x10E9 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP7 ADD PUSH1 0x40 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP3 DUP14 SUB DUP2 ADD DUP3 SGT ISZERO PUSH2 0x1120 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST PUSH2 0x1128 PUSH2 0xFD9 JUMP JUMPDEST DUP11 DUP5 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x114F JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP2 MSTORE DUP4 DUP4 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x1163 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP6 ADD SWAP5 POP POP DUP14 PUSH1 0x3F DUP6 ADD SLT PUSH2 0x1179 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP11 DUP5 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x118D JUMPI PUSH2 0x118D PUSH2 0xE29 JUMP JUMPDEST PUSH2 0x119D DUP13 DUP5 PUSH1 0x1F DUP5 ADD AND ADD PUSH2 0x1002 JUMP JUMPDEST SWAP3 POP DUP1 DUP4 MSTORE DUP15 DUP5 DUP3 DUP8 ADD ADD GT ISZERO PUSH2 0x11B4 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP5 DUP7 ADD DUP14 DUP6 ADD CALLDATACOPY PUSH1 0x0 SWAP1 DUP4 ADD DUP13 ADD MSTORE DUP1 DUP12 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MSTORE POP POP SWAP2 DUP7 ADD SWAP2 SWAP1 DUP7 ADD SWAP1 PUSH2 0x10D1 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1270 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12FD JUMPI DUP9 DUP4 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD ISZERO ISZERO DUP5 MSTORE DUP8 ADD MLOAD DUP8 DUP5 ADD DUP8 SWAP1 MSTORE PUSH2 0x12EA DUP8 DUP6 ADD DUP3 PUSH2 0xC3B JUMP JUMPDEST SWAP6 DUP9 ADD SWAP6 SWAP4 POP POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x129E JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB0 DUP16 NOT 0xB2 PUSH29 0x5B96E2196BCC61C4069DC8FAC27E30816AC61FF2278165FDDA761B6473 PUSH16 0x6C634300081400330000000000000000 ", - "sourceMap": "835:1734:13:-:0;;;1066:208;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1205:6;1187:8;-1:-1:-1;;;;;342:22:0;;338:51;;373:16;;-1:-1:-1;;;373:16:0;;;;;;;;;;;338:51;-1:-1:-1;;;;;400:34:0;;;1347:32:14;1366:12;1347:18;:32::i;:::-;-1:-1:-1;;1223:10:13::2;:44:::0;;-1:-1:-1;;;;;;1223:44:13::2;-1:-1:-1::0;;;;;1223:44:13;;;::::2;::::0;;;::::2;::::0;;-1:-1:-1;835:1734:13;;3268:199:14;3347:22;3372:6;3347:31;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3397:8;3388:6;:17;;;;;;:::i;:::-;;3451:8;3420:40;;;;;;:::i;:::-;;;;;;;;3441:8;3420:40;;;;;;:::i;:::-;;;;;;;;;;;;;;;3337:130;3268:199;:::o;14:177:16:-;93:13;;-1:-1:-1;;;;;135:31:16;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:127::-;257:10;252:3;248:20;245:1;238:31;288:4;285:1;278:15;312:4;309:1;302:15;328:250;413:1;423:113;437:6;434:1;431:13;423:113;;;513:11;;;507:18;494:11;;;487:39;459:2;452:10;423:113;;;-1:-1:-1;;570:1:16;552:16;;545:27;328:250::o;583:1067::-;681:6;689;697;750:2;738:9;729:7;725:23;721:32;718:52;;;766:1;763;756:12;718:52;789:40;819:9;789:40;:::i;:::-;779:50;;848:49;893:2;882:9;878:18;848:49;:::i;:::-;941:2;926:18;;920:25;838:59;;-1:-1:-1;;;;;;994:14:16;;;991:34;;;1021:1;1018;1011:12;991:34;1059:6;1048:9;1044:22;1034:32;;1104:7;1097:4;1093:2;1089:13;1085:27;1075:55;;1126:1;1123;1116:12;1075:55;1155:2;1149:9;1177:2;1173;1170:10;1167:36;;;1183:18;;:::i;:::-;1258:2;1252:9;1226:2;1312:13;;-1:-1:-1;;1308:22:16;;;1332:2;1304:31;1300:40;1288:53;;;1356:18;;;1376:22;;;1353:46;1350:72;;;1402:18;;:::i;:::-;1442:10;1438:2;1431:22;1477:2;1469:6;1462:18;1517:7;1512:2;1507;1503;1499:11;1495:20;1492:33;1489:53;;;1538:1;1535;1528:12;1489:53;1551:68;1616:2;1611;1603:6;1599:15;1594:2;1590;1586:11;1551:68;:::i;:::-;1638:6;1628:16;;;;;;;583:1067;;;;;:::o;1655:380::-;1734:1;1730:12;;;;1777;;;1798:61;;1852:4;1844:6;1840:17;1830:27;;1798:61;1905:2;1897:6;1894:14;1874:18;1871:38;1868:161;;1951:10;1946:3;1942:20;1939:1;1932:31;1986:4;1983:1;1976:15;2014:4;2011:1;2004:15;1868:161;;1655:380;;;:::o;2166:545::-;2268:2;2263:3;2260:11;2257:448;;;2304:1;2329:5;2325:2;2318:17;2374:4;2370:2;2360:19;2444:2;2432:10;2428:19;2425:1;2421:27;2415:4;2411:38;2480:4;2468:10;2465:20;2462:47;;;-1:-1:-1;2503:4:16;2462:47;2558:2;2553:3;2549:12;2546:1;2542:20;2536:4;2532:31;2522:41;;2613:82;2631:2;2624:5;2621:13;2613:82;;;2676:17;;;2657:1;2646:13;2613:82;;;2617:3;;;2257:448;2166:545;;;:::o;2887:1352::-;3007:10;;-1:-1:-1;;;;;3029:30:16;;3026:56;;;3062:18;;:::i;:::-;3091:97;3181:6;3141:38;3173:4;3167:11;3141:38;:::i;:::-;3135:4;3091:97;:::i;:::-;3243:4;;3307:2;3296:14;;3324:1;3319:663;;;;4026:1;4043:6;4040:89;;;-1:-1:-1;4095:19:16;;;4089:26;4040:89;-1:-1:-1;;2844:1:16;2840:11;;;2836:24;2832:29;2822:40;2868:1;2864:11;;;2819:57;4142:81;;3289:944;;3319:663;2113:1;2106:14;;;2150:4;2137:18;;-1:-1:-1;;3355:20:16;;;3473:236;3487:7;3484:1;3481:14;3473:236;;;3576:19;;;3570:26;3555:42;;3668:27;;;;3636:1;3624:14;;;;3503:19;;3473:236;;;3477:3;3737:6;3728:7;3725:19;3722:201;;;3798:19;;;3792:26;-1:-1:-1;;3881:1:16;3877:14;;;3893:3;3873:24;3869:37;3865:42;3850:58;3835:74;;3722:201;-1:-1:-1;;;;;3969:1:16;3953:14;;;3949:22;3936:36;;-1:-1:-1;2887:1352:16:o;4244:289::-;4375:3;4413:6;4407:13;4429:66;4488:6;4483:3;4476:4;4468:6;4464:17;4429:66;:::i;:::-;4511:16;;;;;4244:289;-1:-1:-1;;4244:289:16:o;:::-;835:1734:13;;;;;;;;;;;;;;;;;;;;;;" - }, - "deployedBytecode": { - "functionDebugData": { - "@_1733": { - "entryPoint": null, - "id": 1733, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@_1744": { - "entryPoint": null, - "id": 1744, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@_checkOwner_2052": { - "entryPoint": 1513, - "id": 2052, - "parameterSlots": 2, - "returnSlots": 0 - }, - "@_executeWithToken_1722": { - "entryPoint": 1491, - "id": 1722, - "parameterSlots": 9, - "returnSlots": 0 - }, - "@_execute_1703": { - "entryPoint": 1870, - "id": 1703, - "parameterSlots": 6, - "returnSlots": 0 - }, - "@_multicall_1685": { - "entryPoint": 1903, - "id": 1685, - "parameterSlots": 2, - "returnSlots": 1 - }, - "@_transferOwnership_2108": { - "entryPoint": 1624, - "id": 2108, - "parameterSlots": 1, - "returnSlots": 0 - }, - "@executeWithToken_112": { - "entryPoint": 530, - "id": 112, - "parameterSlots": 10, - "returnSlots": 0 - }, - "@execute_68": { - "entryPoint": 920, - "id": 68, - "parameterSlots": 7, - "returnSlots": 0 - }, - "@gasService_1563": { - "entryPoint": null, - "id": 1563, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@gateway_10": { - "entryPoint": null, - "id": 10, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@owner_2025": { - "entryPoint": 1345, - "id": 2025, - "parameterSlots": 0, - "returnSlots": 1 - }, - "@renounceOwnership_2072": { - "entryPoint": 1215, - "id": 2072, - "parameterSlots": 2, - "returnSlots": 0 - }, - "@transferOwnership_2088": { - "entryPoint": 837, - "id": 2088, - "parameterSlots": 4, - "returnSlots": 0 - }, - "abi_decode_string_calldata": { - "entryPoint": 2466, - "id": null, - "parameterSlots": 2, - "returnSlots": 2 - }, - "abi_decode_tuple_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr": { - "entryPoint": 4177, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_decode_tuple_t_bool_fromMemory": { - "entryPoint": 3415, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr": { - "entryPoint": 2865, - "id": null, - "parameterSlots": 2, - "returnSlots": 7 - }, - "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256": { - "entryPoint": 2539, - "id": null, - "parameterSlots": 2, - "returnSlots": 10 - }, - "abi_decode_tuple_t_string_calldata_ptr": { - "entryPoint": 3029, - "id": null, - "parameterSlots": 2, - "returnSlots": 2 - }, - "abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptr": { - "entryPoint": 2757, - "id": null, - "parameterSlots": 2, - "returnSlots": 4 - }, - "abi_encode_string": { - "entryPoint": 3131, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_string_calldata": { - "entryPoint": 3247, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": 3231, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": 4029, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "abi_encode_tuple_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { - "entryPoint": 4727, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed": { - "entryPoint": 3449, - "id": null, - "parameterSlots": 7, - "returnSlots": 1 - }, - "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed": { - "entryPoint": 3320, - "id": null, - "parameterSlots": 10, - "returnSlots": 1 - }, - "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_calldata_ptr__to_t_string_memory_ptr__fromStack_reversed": { - "entryPoint": 3597, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { - "entryPoint": 3205, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e__to_t_string_memory_ptr__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "allocate_memory": { - "entryPoint": 4098, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "allocate_memory_2466": { - "entryPoint": 4057, - "id": null, - "parameterSlots": 0, - "returnSlots": 1 - }, - "array_dataslot_string_storage": { - "entryPoint": null, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "clean_up_bytearray_end_slots_string_storage": { - "entryPoint": 3672, - "id": null, - "parameterSlots": 3, - "returnSlots": 0 - }, - "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { - "entryPoint": 3747, - "id": null, - "parameterSlots": 2, - "returnSlots": 0 - }, - "copy_memory_to_memory_with_cleanup": { - "entryPoint": 3095, - "id": null, - "parameterSlots": 3, - "returnSlots": 0 - }, - "extract_byte_array_length": { - "entryPoint": 3514, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "extract_used_part_and_set_length_of_short_byte_array": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "increment_t_uint256": { - "entryPoint": 4632, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "panic_error_0x32": { - "entryPoint": 4585, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - }, - "panic_error_0x41": { - "entryPoint": 3625, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - } - }, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:17260:16", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:16", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "115:76:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "125:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "137:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "148:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "133:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "133:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "125:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "167:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "178:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "160:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "160:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "160:25:16" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "84:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "95:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "106:4:16", - "type": "" - } - ], - "src": "14:177:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "319:125:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "329:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "341:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "352:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "337:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "337:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "329:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "371:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "386:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "394:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "382:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "382:55:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "364:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "364:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "364:74:16" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "288:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "299:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "310:4:16", - "type": "" - } - ], - "src": "196:248:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "522:275:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "571:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "580:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "583:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "573:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "573:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "573:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "550:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "558:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "546:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "546:17:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "565:3:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "542:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "542:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "535:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "535:35:16" - }, - "nodeType": "YulIf", - "src": "532:55:16" - }, - { - "nodeType": "YulAssignment", - "src": "596:30:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "619:6:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "606:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "606:20:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "596:6:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "669:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "678:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "681:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "671:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "671:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "671:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "641:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "649:18:16", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "638:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "638:30:16" - }, - "nodeType": "YulIf", - "src": "635:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "694:29:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "710:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "718:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "706:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "706:17:16" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "694:8:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "775:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "784:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "787:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "777:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "777:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "777:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "746:6:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "754:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "742:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "742:19:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "763:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "738:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "738:30:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "770:3:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "735:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "735:39:16" - }, - "nodeType": "YulIf", - "src": "732:59:16" - } - ] - }, - "name": "abi_decode_string_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "485:6:16", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "493:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "501:8:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "511:6:16", - "type": "" - } - ], - "src": "449:348:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1036:1203:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1083:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1092:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1095:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1085:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1085:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1085:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1057:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1066:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1053:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1053:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1078:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1049:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1049:33:16" - }, - "nodeType": "YulIf", - "src": "1046:53:16" - }, - { - "nodeType": "YulAssignment", - "src": "1108:33:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1131:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1118:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1118:23:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1108:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1150:46:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1181:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1192:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1177:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1177:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1164:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1164:32:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1154:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1205:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1215:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1209:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1260:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1269:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1272:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1262:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1262:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1262:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1248:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1256:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1245:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1245:14:16" - }, - "nodeType": "YulIf", - "src": "1242:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1285:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1342:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1353:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1338:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1338:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1362:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1311:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1311:59:16" - }, - "variables": [ - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "1289:8:16", - "type": "" - }, - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "1299:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1379:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "1389:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1379:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1406:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "1416:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1406:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1433:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1466:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1477:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1462:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1462:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1449:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1449:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "1437:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1510:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1519:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1522:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1512:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1512:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1512:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "1496:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1506:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1493:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1493:16:16" - }, - "nodeType": "YulIf", - "src": "1490:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1535:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1592:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "1603:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1588:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1588:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1614:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1561:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1561:61:16" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "1539:8:16", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "1549:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1631:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "1641:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "1631:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1658:18:16", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "1668:8:16" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "1658:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1685:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1718:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1729:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1714:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1714:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1701:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1701:32:16" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "1689:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1762:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1771:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1774:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1764:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1764:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1764:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "1748:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1758:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1745:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1745:16:16" - }, - "nodeType": "YulIf", - "src": "1742:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1787:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1844:9:16" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "1855:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1840:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1840:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1866:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1813:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1813:61:16" - }, - "variables": [ - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "1791:8:16", - "type": "" - }, - { - "name": "value6_1", - "nodeType": "YulTypedName", - "src": "1801:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1883:18:16", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "1893:8:16" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "1883:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1910:18:16", - "value": { - "name": "value6_1", - "nodeType": "YulIdentifier", - "src": "1920:8:16" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "1910:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1937:49:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1970:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1981:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1966:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1966:19:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1953:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1953:33:16" - }, - "variables": [ - { - "name": "offset_3", - "nodeType": "YulTypedName", - "src": "1941:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2015:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2024:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2027:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2017:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2017:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2017:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "2001:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2011:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1998:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1998:16:16" - }, - "nodeType": "YulIf", - "src": "1995:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2040:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2097:9:16" - }, - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "2108:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2093:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2093:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2119:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "2066:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "2066:61:16" - }, - "variables": [ - { - "name": "value7_1", - "nodeType": "YulTypedName", - "src": "2044:8:16", - "type": "" - }, - { - "name": "value8_1", - "nodeType": "YulTypedName", - "src": "2054:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2136:18:16", - "value": { - "name": "value7_1", - "nodeType": "YulIdentifier", - "src": "2146:8:16" - }, - "variableNames": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "2136:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2163:18:16", - "value": { - "name": "value8_1", - "nodeType": "YulIdentifier", - "src": "2173:8:16" - }, - "variableNames": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "2163:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2190:43:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2217:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2228:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2213:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2213:19:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2200:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2200:33:16" - }, - "variableNames": [ - { - "name": "value9", - "nodeType": "YulIdentifier", - "src": "2190:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "930:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "941:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "953:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "961:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "969:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "977:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "985:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "993:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "1001:6:16", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "1009:6:16", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "1017:6:16", - "type": "" - }, - { - "name": "value9", - "nodeType": "YulTypedName", - "src": "1025:6:16", - "type": "" - } - ], - "src": "802:1437:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2371:594:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2417:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2426:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2429:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2419:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2419:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2419:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2392:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2401:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2388:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2388:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2413:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2384:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2384:32:16" - }, - "nodeType": "YulIf", - "src": "2381:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2442:37:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2469:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2456:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2456:23:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2446:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2488:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2498:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2492:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2543:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2552:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2555:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2545:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2545:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2545:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2531:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2539:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2528:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2528:14:16" - }, - "nodeType": "YulIf", - "src": "2525:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2568:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2625:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2636:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2621:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2621:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2645:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "2594:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "2594:59:16" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "2572:8:16", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "2582:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2662:18:16", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "2672:8:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2662:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2689:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "2699:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2689:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2716:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2749:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2760:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2745:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2745:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2732:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2732:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "2720:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2793:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2802:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2805:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2795:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2795:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2795:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "2779:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2789:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2776:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2776:16:16" - }, - "nodeType": "YulIf", - "src": "2773:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2818:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2875:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "2886:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2871:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2871:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2897:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "2844:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "2844:61:16" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "2822:8:16", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "2832:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2914:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "2924:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "2914:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2941:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "2951:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "2941:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2313:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2324:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2336:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2344:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "2352:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "2360:6:16", - "type": "" - } - ], - "src": "2244:721:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3150:898:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3197:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3206:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3209:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3199:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3199:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3199:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3171:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3180:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3167:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3167:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3192:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3163:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3163:33:16" - }, - "nodeType": "YulIf", - "src": "3160:53:16" - }, - { - "nodeType": "YulAssignment", - "src": "3222:33:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3245:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3232:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3232:23:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3222:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3264:46:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3295:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3306:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3291:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3291:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3278:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3278:32:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3268:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3319:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3329:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3323:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3374:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3383:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3386:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3376:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3376:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3376:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3362:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3370:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3359:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3359:14:16" - }, - "nodeType": "YulIf", - "src": "3356:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3399:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3456:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3467:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3452:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3452:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3476:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "3425:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "3425:59:16" - }, - "variables": [ - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "3403:8:16", - "type": "" - }, - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "3413:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3493:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "3503:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3493:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3520:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "3530:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "3520:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3547:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3580:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3591:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3576:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3576:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3563:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3563:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "3551:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3624:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3633:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3636:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3626:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3626:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3626:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3610:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3620:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3607:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3607:16:16" - }, - "nodeType": "YulIf", - "src": "3604:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3649:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3706:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3717:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3702:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3702:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3728:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "3675:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "3675:61:16" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "3653:8:16", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "3663:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3745:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "3755:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "3745:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3772:18:16", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "3782:8:16" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "3772:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3799:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3832:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3843:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3828:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3828:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3815:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3815:32:16" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "3803:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3876:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3885:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3888:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3878:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3878:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3878:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3862:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3872:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3859:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3859:16:16" - }, - "nodeType": "YulIf", - "src": "3856:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3901:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3958:9:16" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3969:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3954:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3954:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3980:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "3927:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "3927:61:16" - }, - "variables": [ - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "3905:8:16", - "type": "" - }, - { - "name": "value6_1", - "nodeType": "YulTypedName", - "src": "3915:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3997:18:16", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "4007:8:16" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "3997:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4024:18:16", - "value": { - "name": "value6_1", - "nodeType": "YulIdentifier", - "src": "4034:8:16" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "4024:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3068:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3079:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3091:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3099:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "3107:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "3115:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "3123:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "3131:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "3139:6:16", - "type": "" - } - ], - "src": "2970:1078:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4143:321:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4189:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4198:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4201:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4191:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4191:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4191:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4164:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4173:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4160:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4160:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4185:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4156:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4156:32:16" - }, - "nodeType": "YulIf", - "src": "4153:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4214:37:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4241:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4228:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "4228:23:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4218:6:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4294:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4303:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4306:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4296:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4296:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4296:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4266:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4274:18:16", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4263:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4263:30:16" - }, - "nodeType": "YulIf", - "src": "4260:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4319:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4376:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4387:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4372:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4372:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4396:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "4345:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "4345:59:16" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "4323:8:16", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "4333:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4413:18:16", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "4423:8:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4413:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4440:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "4450:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "4440:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4101:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4112:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4124:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "4132:6:16", - "type": "" - } - ], - "src": "4053:411:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4595:125:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4605:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4617:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4628:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4613:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4613:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4605:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4647:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4662:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4670:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "4658:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4658:55:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4640:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4640:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4640:74:16" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4564:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4575:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4586:4:16", - "type": "" - } - ], - "src": "4469:251:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4791:184:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4801:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4810:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "4805:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4870:63:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "4895:3:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4900:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4891:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4891:11:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "4914:3:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4919:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4910:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4910:11:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4904:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "4904:18:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4884:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4884:39:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4884:39:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4831:1:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4834:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "4828:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4828:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "4842:19:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4844:15:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4853:1:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4856:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4849:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4849:10:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "4844:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "4824:3:16", - "statements": [] - }, - "src": "4820:113:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "4953:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4958:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4949:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4949:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4967:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4942:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4942:27:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4942:27:16" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "4769:3:16", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "4774:3:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "4779:6:16", - "type": "" - } - ], - "src": "4725:250:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5030:280:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5040:26:16", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5060:5:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5054:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "5054:12:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "5044:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5082:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5087:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5075:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5075:19:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5075:19:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5142:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5149:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5138:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5138:16:16" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5160:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5165:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5156:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5156:14:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5172:6:16" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "5103:34:16" - }, - "nodeType": "YulFunctionCall", - "src": "5103:76:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5103:76:16" - }, - { - "nodeType": "YulAssignment", - "src": "5188:116:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5203:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5216:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5224:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5212:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5212:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5229:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5208:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5208:88:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5199:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5199:98:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5299:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5195:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5195:109:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "5188:3:16" - } - ] - } - ] - }, - "name": "abi_encode_string", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5007:5:16", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5014:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "5022:3:16", - "type": "" - } - ], - "src": "4980:330:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5436:99:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5453:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5464:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5446:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5446:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5446:21:16" - }, - { - "nodeType": "YulAssignment", - "src": "5476:53:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5502:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5514:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5525:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5510:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5510:18:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "5484:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "5484:45:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5476:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5405:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5416:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5427:4:16", - "type": "" - } - ], - "src": "5315:220:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5687:124:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5710:3:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5715:6:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5723:6:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "5697:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "5697:33:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5697:33:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5739:26:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5753:3:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5758:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5749:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5749:16:16" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "5743:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5781:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5785:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5774:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5774:13:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5774:13:16" - }, - { - "nodeType": "YulAssignment", - "src": "5796:9:16", - "value": { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5803:2:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "5796:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5655:3:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "5660:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5668:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "5679:3:16", - "type": "" - } - ], - "src": "5540:271:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5883:259:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5900:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5905:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5893:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5893:19:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5893:19:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5938:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5943:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5934:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5934:14:16" - }, - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "5950:5:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5957:6:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "5921:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "5921:43:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5921:43:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5988:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5993:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5984:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5984:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6002:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5980:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5980:27:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6009:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5973:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5973:38:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5973:38:16" - }, - { - "nodeType": "YulAssignment", - "src": "6020:116:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6035:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6048:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6056:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6044:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6044:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6061:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6040:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6040:88:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6031:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6031:98:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6131:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6027:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6027:109:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6020:3:16" - } - ] - } - ] - }, - "name": "abi_encode_string_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "5852:5:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "5859:6:16", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5867:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "5875:3:16", - "type": "" - } - ], - "src": "5816:326:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6478:513:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6495:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6506:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6488:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6488:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6488:25:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6533:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6544:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6529:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6529:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6549:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6522:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6522:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6522:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6562:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6603:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "6611:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6623:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6634:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6619:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6619:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "6576:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "6576:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "6566:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6659:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6670:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6655:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6655:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "6679:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6687:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6675:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6675:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6648:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6648:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6648:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6707:64:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "6748:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "6756:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "6764:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "6721:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "6721:50:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "6711:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6791:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6802:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6787:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6787:18:16" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "6807:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6780:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6780:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6780:34:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6834:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6845:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6830:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6830:19:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "6855:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6863:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6851:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6851:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6823:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6823:51:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6823:51:16" - }, - { - "nodeType": "YulAssignment", - "src": "6883:58:16", - "value": { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "6918:6:16" - }, - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "6926:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "6934:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "6891:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "6891:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6883:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6961:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6972:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6957:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6957:19:16" - }, - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "6978:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6950:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6950:35:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6950:35:16" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6383:9:16", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "6394:6:16", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "6402:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "6410:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "6418:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "6426:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "6434:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "6442:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6450:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6458:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6469:4:16", - "type": "" - } - ], - "src": "6147:844:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7074:199:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "7120:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7129:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7132:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7122:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7122:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7122:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7095:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7104:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7091:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7091:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7116:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "7087:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7087:32:16" - }, - "nodeType": "YulIf", - "src": "7084:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7145:29:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7164:9:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "7158:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "7158:16:16" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7149:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7227:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7236:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7239:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7229:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7229:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7229:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7196:5:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7217:5:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7210:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7210:13:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7203:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7203:21:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "7193:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "7193:32:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7186:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7186:40:16" - }, - "nodeType": "YulIf", - "src": "7183:60:16" - }, - { - "nodeType": "YulAssignment", - "src": "7252:15:16", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7262:5:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7252:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bool_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7040:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "7051:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7063:6:16", - "type": "" - } - ], - "src": "6996:277:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7523:336:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7540:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7551:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7533:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7533:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7533:25:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7578:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7589:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7574:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7574:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7594:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7567:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7567:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7567:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7607:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "7648:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "7656:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7668:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7679:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7664:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7664:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "7621:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "7621:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "7611:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7704:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7715:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7700:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7700:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "7724:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7732:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7720:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7720:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7693:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7693:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7693:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "7752:58:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "7787:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "7795:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "7803:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "7760:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "7760:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7752:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7830:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7841:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7826:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7826:18:16" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "7846:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7819:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7819:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7819:34:16" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7452:9:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "7463:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "7471:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "7479:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "7487:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7495:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7503:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7514:4:16", - "type": "" - } - ], - "src": "7278:581:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8056:134:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8073:3:16" - }, - { - "hexValue": "3078303030303030303030303030303030303030303030303030303030303030", - "kind": "string", - "nodeType": "YulLiteral", - "src": "8078:34:16", - "type": "", - "value": "0x000000000000000000000000000000" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8066:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8066:47:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8066:47:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8133:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8138:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8129:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8129:12:16" - }, - { - "hexValue": "30303030303030303030", - "kind": "string", - "nodeType": "YulLiteral", - "src": "8143:12:16", - "type": "", - "value": "0000000000" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8122:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8122:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8122:34:16" - }, - { - "nodeType": "YulAssignment", - "src": "8165:19:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8176:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8181:2:16", - "type": "", - "value": "42" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8172:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8172:12:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "8165:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "8040:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "8048:3:16", - "type": "" - } - ], - "src": "7864:326:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8250:382:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8260:22:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8274:1:16", - "type": "", - "value": "1" - }, - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "8277:4:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "8270:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8270:12:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8260:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8291:38:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "8321:4:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8327:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "8317:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8317:12:16" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "8295:18:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8368:31:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8370:27:16", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8384:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8392:4:16", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "8380:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8380:17:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8370:6:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "8348:18:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8341:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8341:26:16" - }, - "nodeType": "YulIf", - "src": "8338:61:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8458:168:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8479:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8482:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8472:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8472:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8472:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8580:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8583:4:16", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8573:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8573:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8573:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8608:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8611:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8601:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8601:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8601:15:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "8414:18:16" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8437:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8445:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "8434:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "8434:14:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "8411:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "8411:38:16" - }, - "nodeType": "YulIf", - "src": "8408:218:16" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "8230:4:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "8239:6:16", - "type": "" - } - ], - "src": "8195:437:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8768:116:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8785:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8796:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8778:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8778:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8778:21:16" - }, - { - "nodeType": "YulAssignment", - "src": "8808:70:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8843:6:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "8851:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8863:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8874:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8859:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8859:18:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "8816:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "8816:62:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8808:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_calldata_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8729:9:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8740:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8748:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8759:4:16", - "type": "" - } - ], - "src": "8637:247:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8921:152:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8938:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8941:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8931:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8931:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8931:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9035:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9038:4:16", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9028:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9028:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9028:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9059:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9062:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9052:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9052:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9052:15:16" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "8889:184:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9134:65:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9151:1:16", - "type": "", - "value": "0" - }, - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "9154:3:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9144:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9144:14:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9144:14:16" - }, - { - "nodeType": "YulAssignment", - "src": "9167:26:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9185:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9188:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "9175:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "9175:18:16" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "9167:4:16" - } - ] - } - ] - }, - "name": "array_dataslot_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "9117:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "9125:4:16", - "type": "" - } - ], - "src": "9078:121:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9285:464:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9318:425:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9332:11:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9342:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "9336:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9363:2:16" - }, - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "9367:5:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9356:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9356:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9356:17:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9386:31:16", - "value": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9408:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9412:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "9398:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "9398:19:16" - }, - "variables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "9390:4:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9430:57:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "9453:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9463:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "9470:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9482:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9466:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9466:19:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "9459:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9459:27:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9449:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9449:38:16" - }, - "variables": [ - { - "name": "deleteStart", - "nodeType": "YulTypedName", - "src": "9434:11:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9524:23:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9526:19:16", - "value": { - "name": "data", - "nodeType": "YulIdentifier", - "src": "9541:4:16" - }, - "variableNames": [ - { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "9526:11:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "9506:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9518:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "9503:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "9503:20:16" - }, - "nodeType": "YulIf", - "src": "9500:47:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9560:41:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "9574:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9584:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "9591:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9596:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9587:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9587:12:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "9580:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9580:20:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9570:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9570:31:16" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "9564:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9614:24:16", - "value": { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "9627:11:16" - }, - "variables": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "9618:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9712:21:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "9721:5:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9728:2:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "9714:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9714:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9714:17:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "9662:5:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "9669:2:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "9659:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "9659:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "9673:26:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9675:22:16", - "value": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "9688:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9695:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9684:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9684:13:16" - }, - "variableNames": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "9675:5:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "9655:3:16", - "statements": [] - }, - "src": "9651:82:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "9301:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9306:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9298:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "9298:11:16" - }, - "nodeType": "YulIf", - "src": "9295:448:16" - } - ] - }, - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "9257:5:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "9264:3:16", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "9269:10:16", - "type": "" - } - ], - "src": "9204:545:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9839:141:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9849:125:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "9864:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9882:1:16", - "type": "", - "value": "3" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "9885:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "9878:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9878:11:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9891:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "9874:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9874:84:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "9870:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9870:89:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "9860:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9860:100:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9966:1:16", - "type": "", - "value": "1" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "9969:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "9962:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9962:11:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "9857:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "9857:117:16" - }, - "variableNames": [ - { - "name": "used", - "nodeType": "YulIdentifier", - "src": "9849:4:16" - } - ] - } - ] - }, - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "9816:4:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "9822:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "used", - "nodeType": "YulTypedName", - "src": "9830:4:16", - "type": "" - } - ], - "src": "9754:226:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10081:1375:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10091:24:16", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "10111:3:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10105:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10105:10:16" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "10095:6:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10158:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "10160:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "10160:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10160:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "10130:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10138:18:16", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10127:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "10127:30:16" - }, - "nodeType": "YulIf", - "src": "10124:56:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "10233:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "10271:4:16" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "10265:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10265:11:16" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "10239:25:16" - }, - "nodeType": "YulFunctionCall", - "src": "10239:38:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "10279:6:16" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulIdentifier", - "src": "10189:43:16" - }, - "nodeType": "YulFunctionCall", - "src": "10189:97:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10189:97:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10295:18:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10312:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "10299:9:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10322:23:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10341:4:16", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "10326:11:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10354:24:16", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "10367:11:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "10354:9:16" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10424:775:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10438:94:16", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "10457:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10465:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10453:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10453:79:16" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "10442:7:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10545:49:16", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "10589:4:16" - } - ], - "functionName": { - "name": "array_dataslot_string_storage", - "nodeType": "YulIdentifier", - "src": "10559:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "10559:35:16" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "10549:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10607:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10616:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "10611:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10694:172:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "10719:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "10737:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "10742:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10733:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10733:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10727:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10727:26:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "10712:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10712:42:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10712:42:16" - }, - { - "nodeType": "YulAssignment", - "src": "10771:24:16", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "10785:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10793:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10781:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10781:14:16" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "10771:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10812:40:16", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "10829:9:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "10840:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10825:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10825:27:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "10812:9:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10641:1:16" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "10644:7:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10638:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "10638:14:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "10653:28:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10655:24:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10664:1:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "10667:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10660:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10660:19:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10655:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "10634:3:16", - "statements": [] - }, - "src": "10630:236:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10914:226:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10932:43:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "10959:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "10964:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10955:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10955:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10949:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10949:26:16" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "10936:9:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "10999:6:16" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "11011:9:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11038:1:16", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "11041:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "11034:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11034:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11050:3:16", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11030:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11030:24:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11056:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "11026:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11026:97:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "11022:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11022:102:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11007:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11007:118:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "10992:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10992:134:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10992:134:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "10885:7:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "10894:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10882:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "10882:19:16" - }, - "nodeType": "YulIf", - "src": "10879:261:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "11160:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11174:1:16", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "11177:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "11170:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11170:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11186:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11166:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11166:22:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "11153:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11153:36:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11153:36:16" - } - ] - }, - "nodeType": "YulCase", - "src": "10417:782:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10422:1:16", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11216:234:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "11230:14:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11243:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11234:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11279:67:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11297:35:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "11316:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "11321:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11312:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11312:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11306:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "11306:26:16" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11297:5:16" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "11260:6:16" - }, - "nodeType": "YulIf", - "src": "11257:89:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "11366:4:16" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11425:5:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "11432:6:16" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "11372:52:16" - }, - "nodeType": "YulFunctionCall", - "src": "11372:67:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "11359:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11359:81:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11359:81:16" - } - ] - }, - "nodeType": "YulCase", - "src": "11208:242:16", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "10397:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10405:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10394:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "10394:14:16" - }, - "nodeType": "YulSwitch", - "src": "10387:1063:16" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "10066:4:16", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "10072:3:16", - "type": "" - } - ], - "src": "9985:1471:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11600:150:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "11610:27:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11630:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11624:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "11624:13:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "11614:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11685:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11693:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11681:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11681:17:16" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11700:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11705:6:16" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "11646:34:16" - }, - "nodeType": "YulFunctionCall", - "src": "11646:66:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11646:66:16" - }, - { - "nodeType": "YulAssignment", - "src": "11721:23:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11732:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11737:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11728:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11728:16:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "11721:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "11576:3:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11581:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "11592:3:16", - "type": "" - } - ], - "src": "11461:289:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11801:211:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11811:21:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11827:4:16", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11821:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "11821:11:16" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "11811:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11841:35:16", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "11863:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11871:4:16", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11859:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11859:17:16" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "11845:10:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11951:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "11953:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "11953:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11953:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "11894:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11906:18:16", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11891:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "11891:34:16" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "11930:10:16" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "11942:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "11927:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "11927:22:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "11888:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "11888:62:16" - }, - "nodeType": "YulIf", - "src": "11885:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11989:4:16", - "type": "", - "value": "0x40" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "11995:10:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11982:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11982:24:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11982:24:16" - } - ] - }, - "name": "allocate_memory_2466", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "11790:6:16", - "type": "" - } - ], - "src": "11755:257:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12062:289:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12072:19:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12088:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12082:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "12082:9:16" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "12072:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12100:117:16", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "12122:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "12138:4:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12144:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12134:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12134:13:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12149:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12130:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12130:86:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12118:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12118:99:16" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "12104:10:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12292:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "12294:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "12294:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12294:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "12235:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12247:18:16", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12232:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "12232:34:16" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "12271:10:16" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "12283:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12268:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "12268:22:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "12229:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "12229:62:16" - }, - "nodeType": "YulIf", - "src": "12226:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12330:2:16", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "12334:10:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12323:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12323:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12323:22:16" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "12042:4:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "12051:6:16", - "type": "" - } - ], - "src": "12017:334:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12479:2482:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12489:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12499:2:16", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "12493:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12546:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12555:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12558:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12548:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12548:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12548:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "12521:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12530:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12517:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12517:23:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12542:2:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "12513:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12513:32:16" - }, - "nodeType": "YulIf", - "src": "12510:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12571:37:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12598:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "12585:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "12585:23:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "12575:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12617:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12627:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "12621:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12672:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12681:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12684:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12674:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12674:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12674:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "12660:6:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12668:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12657:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "12657:14:16" - }, - "nodeType": "YulIf", - "src": "12654:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12697:32:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12711:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "12722:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12707:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12707:22:16" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "12701:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12777:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12786:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12789:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12779:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12779:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12779:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "12756:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12760:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12752:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12752:13:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "12767:7:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "12748:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12748:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "12741:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12741:35:16" - }, - "nodeType": "YulIf", - "src": "12738:55:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12802:26:16", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "12825:2:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "12812:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "12812:16:16" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "12806:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12851:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "12853:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "12853:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12853:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "12843:2:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12847:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12840:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "12840:10:16" - }, - "nodeType": "YulIf", - "src": "12837:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12882:20:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12896:1:16", - "type": "", - "value": "5" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "12899:2:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "12892:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12892:10:16" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "12886:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12911:39:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "12942:2:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12946:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12938:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12938:11:16" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "12922:15:16" - }, - "nodeType": "YulFunctionCall", - "src": "12922:28:16" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "12915:3:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12959:16:16", - "value": { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "12972:3:16" - }, - "variables": [ - { - "name": "dst_1", - "nodeType": "YulTypedName", - "src": "12963:5:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "12991:3:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "12996:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12984:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12984:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12984:15:16" - }, - { - "nodeType": "YulAssignment", - "src": "13008:19:16", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "13019:3:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13024:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13015:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13015:12:16" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "13008:3:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13036:34:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "13058:2:16" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "13062:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13054:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13054:11:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13067:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13050:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13050:20:16" - }, - "variables": [ - { - "name": "srcEnd", - "nodeType": "YulTypedName", - "src": "13040:6:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13102:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13111:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13114:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13104:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "13104:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "13104:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "13085:6:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "13093:7:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "13082:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "13082:19:16" - }, - "nodeType": "YulIf", - "src": "13079:39:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13127:22:16", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "13142:2:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13146:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13138:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13138:11:16" - }, - "variables": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "13131:3:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13214:1717:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13228:36:16", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13260:3:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13247:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "13247:17:16" - }, - "variables": [ - { - "name": "innerOffset", - "nodeType": "YulTypedName", - "src": "13232:11:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13312:74:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13330:11:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13340:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "13334:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "13365:2:16" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "13369:2:16" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13358:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "13358:14:16" - }, - "nodeType": "YulExpressionStatement", - "src": "13358:14:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "innerOffset", - "nodeType": "YulIdentifier", - "src": "13283:11:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "13296:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "13280:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "13280:19:16" - }, - "nodeType": "YulIf", - "src": "13277:109:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13399:30:16", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "13413:2:16" - }, - { - "name": "innerOffset", - "nodeType": "YulIdentifier", - "src": "13417:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13409:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13409:20:16" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "13403:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13442:14:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13452:4:16", - "type": "", - "value": "0x40" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "13446:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13469:76:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13479:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "13473:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13608:77:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13626:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13637:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "13630:3:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "13662:3:16" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "13667:3:16" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13655:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "13655:16:16" - }, - "nodeType": "YulExpressionStatement", - "src": "13655:16:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "13573:7:16" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "13582:2:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "13569:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13569:16:16" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "13587:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13565:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13565:25:16" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "13592:2:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "13561:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13561:34:16" - }, - "nodeType": "YulIf", - "src": "13558:127:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13698:35:16", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory_2466", - "nodeType": "YulIdentifier", - "src": "13711:20:16" - }, - "nodeType": "YulFunctionCall", - "src": "13711:22:16" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13702:5:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13746:40:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "13778:2:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13782:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13774:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13774:11:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13761:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "13761:25:16" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "13750:7:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13892:77:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13910:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13921:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "13914:3:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "13946:3:16" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "13951:3:16" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13939:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "13939:16:16" - }, - "nodeType": "YulExpressionStatement", - "src": "13939:16:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "13812:7:16" - }, - { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "13825:7:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13834:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13821:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13821:56:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "13809:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "13809:69:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13802:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "13802:77:16" - }, - "nodeType": "YulIf", - "src": "13799:170:16" - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13989:5:16" - }, - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "13996:7:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13982:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "13982:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "13982:22:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14017:41:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "14050:2:16" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "14054:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14046:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14046:11:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "14033:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "14033:25:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "14021:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14103:77:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "14121:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14132:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "14125:3:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "14157:3:16" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "14162:3:16" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14150:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14150:16:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14150:16:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "14077:8:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "14087:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "14074:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "14074:16:16" - }, - "nodeType": "YulIf", - "src": "14071:109:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14193:28:16", - "value": { - "arguments": [ - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "14208:2:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "14212:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14204:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14204:17:16" - }, - "variables": [ - { - "name": "_13", - "nodeType": "YulTypedName", - "src": "14197:3:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14284:77:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "14302:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14313:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_14", - "nodeType": "YulTypedName", - "src": "14306:3:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_14", - "nodeType": "YulIdentifier", - "src": "14338:3:16" - }, - { - "name": "_14", - "nodeType": "YulIdentifier", - "src": "14343:3:16" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14331:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14331:16:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14331:16:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "14252:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14257:2:16", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14248:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14248:12:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "14262:7:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "14244:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14244:26:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "14237:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14237:34:16" - }, - "nodeType": "YulIf", - "src": "14234:127:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14374:37:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "14402:3:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14407:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14398:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14398:12:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "14385:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "14385:26:16" - }, - "variables": [ - { - "name": "_15", - "nodeType": "YulTypedName", - "src": "14378:3:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14439:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "14441:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "14441:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14441:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_15", - "nodeType": "YulIdentifier", - "src": "14430:3:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "14435:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "14427:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "14427:11:16" - }, - "nodeType": "YulIf", - "src": "14424:37:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14474:62:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_15", - "nodeType": "YulIdentifier", - "src": "14515:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14520:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14511:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14511:14:16" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "14527:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "14507:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14507:23:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14532:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14503:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14503:32:16" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "14487:15:16" - }, - "nodeType": "YulFunctionCall", - "src": "14487:49:16" - }, - "variables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "14478:5:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "14556:5:16" - }, - { - "name": "_15", - "nodeType": "YulIdentifier", - "src": "14563:3:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14549:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14549:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14549:18:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14631:77:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "14649:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14660:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_16", - "nodeType": "YulTypedName", - "src": "14653:3:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_16", - "nodeType": "YulIdentifier", - "src": "14685:3:16" - }, - { - "name": "_16", - "nodeType": "YulIdentifier", - "src": "14690:3:16" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14678:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14678:16:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14678:16:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "14594:3:16" - }, - { - "name": "_15", - "nodeType": "YulIdentifier", - "src": "14599:3:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14590:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14590:13:16" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "14605:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14586:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14586:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "14610:7:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "14583:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "14583:35:16" - }, - "nodeType": "YulIf", - "src": "14580:128:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "14738:5:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14745:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14734:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14734:14:16" - }, - { - "arguments": [ - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "14754:3:16" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "14759:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14750:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14750:12:16" - }, - { - "name": "_15", - "nodeType": "YulIdentifier", - "src": "14764:3:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "14721:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "14721:47:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14721:47:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "14796:5:16" - }, - { - "name": "_15", - "nodeType": "YulIdentifier", - "src": "14803:3:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14792:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14792:15:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14809:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14788:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14788:24:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14814:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14781:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14781:35:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14781:35:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14840:5:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14847:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14836:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14836:14:16" - }, - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "14852:5:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14829:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14829:29:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14829:29:16" - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "14878:3:16" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14883:5:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14871:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14871:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14871:18:16" - }, - { - "nodeType": "YulAssignment", - "src": "14902:19:16", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "14913:3:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14918:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14909:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14909:12:16" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "14902:3:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13169:3:16" - }, - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "13174:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "13166:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "13166:15:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "13182:23:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13184:19:16", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13195:3:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13200:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13191:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13191:12:16" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13184:3:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "13162:3:16", - "statements": [] - }, - "src": "13158:1773:16" - }, - { - "nodeType": "YulAssignment", - "src": "14940:15:16", - "value": { - "name": "dst_1", - "nodeType": "YulIdentifier", - "src": "14950:5:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14940:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12445:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "12456:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12468:6:16", - "type": "" - } - ], - "src": "12356:2605:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14998:152:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15015:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15018:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15008:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15008:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15008:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15112:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15115:4:16", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15105:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15105:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15105:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15136:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15139:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15129:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15129:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15129:15:16" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "14966:184:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15292:150:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "15302:27:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "15322:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "15316:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "15316:13:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "15306:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "15377:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15385:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15373:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15373:17:16" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "15392:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "15397:6:16" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "15338:34:16" - }, - "nodeType": "YulFunctionCall", - "src": "15338:66:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15338:66:16" - }, - { - "nodeType": "YulAssignment", - "src": "15413:23:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "15424:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "15429:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15420:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15420:16:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "15413:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "15268:3:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "15273:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "15284:3:16", - "type": "" - } - ], - "src": "15155:287:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15621:170:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15638:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15649:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15631:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15631:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15631:21:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15672:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15683:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15668:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15668:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15688:2:16", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15661:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15661:30:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15661:30:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15711:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15722:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15707:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15707:18:16" - }, - { - "hexValue": "436f6e74726163742063616c6c206661696c6564", - "kind": "string", - "nodeType": "YulLiteral", - "src": "15727:22:16", - "type": "", - "value": "Contract call failed" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15700:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15700:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15700:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "15759:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15771:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15782:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15767:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15767:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15759:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15598:9:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15612:4:16", - "type": "" - } - ], - "src": "15447:344:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15843:302:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "15942:168:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15963:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15966:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15956:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15956:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15956:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16064:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16067:4:16", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16057:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16057:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16057:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16092:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16095:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "16085:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16085:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16085:15:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "15859:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15866:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "15856:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "15856:77:16" - }, - "nodeType": "YulIf", - "src": "15853:257:16" - }, - { - "nodeType": "YulAssignment", - "src": "16119:20:16", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16130:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16137:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16126:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16126:13:16" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "16119:3:16" - } - ] - } - ] - }, - "name": "increment_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "15825:5:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "15835:3:16", - "type": "" - } - ], - "src": "15796:349:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16357:901:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "16367:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16377:2:16", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "16371:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16388:32:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16406:9:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16417:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16402:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16402:18:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "16392:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16436:9:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16447:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16429:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16429:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16429:21:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16459:17:16", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "16470:6:16" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "16463:3:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16485:27:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "16505:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "16499:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "16499:13:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "16489:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "16528:6:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "16536:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16521:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16521:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16521:22:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16552:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16562:2:16", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "16556:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "16573:25:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16584:9:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "16595:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16580:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16580:18:16" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16573:3:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16607:53:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16629:9:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16644:1:16", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "16647:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "16640:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16640:14:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16625:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16625:30:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "16657:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16621:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16621:39:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "16611:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16669:29:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "16687:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16695:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16683:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16683:15:16" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "16673:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16707:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16716:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "16711:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16775:454:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16796:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "16809:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16817:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16805:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16805:22:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16829:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16801:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16801:95:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16789:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16789:108:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16789:108:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16910:23:16", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "16926:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "16920:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "16920:13:16" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "16914:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "16953:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "16981:2:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "16975:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "16975:9:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "16968:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16968:17:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "16961:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16961:25:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16946:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16946:41:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16946:41:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17000:38:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "17030:2:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17034:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17026:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17026:11:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "17020:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "17020:18:16" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "17004:12:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "17062:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17070:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17058:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17058:15:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "17075:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17051:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "17051:27:16" - }, - "nodeType": "YulExpressionStatement", - "src": "17051:27:16" - }, - { - "nodeType": "YulAssignment", - "src": "17091:58:16", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "17119:12:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "17137:6:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "17145:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17133:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17133:15:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "17101:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "17101:48:16" - }, - "variableNames": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "17091:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "17162:25:16", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "17176:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17184:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17172:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17172:15:16" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "17162:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "17200:19:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17211:3:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17216:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17207:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17207:12:16" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17200:3:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16737:1:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "16740:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "16734:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "16734:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "16748:18:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16750:14:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16759:1:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16762:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16755:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16755:9:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16750:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "16730:3:16", - "statements": [] - }, - "src": "16726:503:16" - }, - { - "nodeType": "YulAssignment", - "src": "17238:14:16", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "17246:6:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17238:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16326:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "16337:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16348:4:16", - "type": "" - } - ], - "src": "16150:1108:16" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_string_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7, value8, value9\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n let offset_3 := calldataload(add(headStart, 128))\n if gt(offset_3, _1) { revert(0, 0) }\n let value7_1, value8_1 := abi_decode_string_calldata(add(headStart, offset_3), dataEnd)\n value7 := value7_1\n value8 := value8_1\n value9 := calldataload(add(headStart, 160))\n }\n function abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value2 := value2_1\n value3 := value3_1\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n }\n function abi_decode_tuple_t_string_calldata_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n }\n function abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 192)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value6, value7, tail_2)\n mstore(add(headStart, 160), value8)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 128)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 128))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n }\n function abi_encode_tuple_packed_t_stringliteral_918d5359431a7007dec0d4722530b0726c0e1010a959bd8b871a6a5d6337144a__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"0x000000000000000000000000000000\")\n mstore(add(pos, 32), \"0000000000\")\n end := add(pos, 42)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_string_calldata_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string_calldata(value0, value1, add(headStart, 32))\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function allocate_memory_2466() -> memPtr\n {\n memPtr := mload(0x40)\n let newFreePtr := add(memPtr, 0x40)\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(0x40, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_tuple_t_array$_t_struct$_CallParams_$1556_memory_ptr_$dyn_memory_ptr(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _2 := 0xffffffffffffffff\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := calldataload(_3)\n if gt(_4, _2) { panic_error_0x41() }\n let _5 := shl(5, _4)\n let dst := allocate_memory(add(_5, _1))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, _5), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_3, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n let innerOffset := calldataload(src)\n if gt(innerOffset, _2)\n {\n let _6 := 0\n revert(_6, _6)\n }\n let _7 := add(_3, innerOffset)\n let _8 := 0x40\n let _9 := 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0\n if slt(add(sub(dataEnd, _7), _9), _8)\n {\n let _10 := 0\n revert(_10, _10)\n }\n let value := allocate_memory_2466()\n let value_1 := calldataload(add(_7, _1))\n if iszero(eq(value_1, and(value_1, 0xffffffffffffffffffffffffffffffffffffffff)))\n {\n let _11 := 0\n revert(_11, _11)\n }\n mstore(value, value_1)\n let offset_1 := calldataload(add(_7, _8))\n if gt(offset_1, _2)\n {\n let _12 := 0\n revert(_12, _12)\n }\n let _13 := add(_7, offset_1)\n if iszero(slt(add(_13, 63), dataEnd))\n {\n let _14 := 0\n revert(_14, _14)\n }\n let _15 := calldataload(add(_13, _1))\n if gt(_15, _2) { panic_error_0x41() }\n let array := allocate_memory(add(and(add(_15, 0x1f), _9), _1))\n mstore(array, _15)\n if gt(add(add(_13, _15), _8), dataEnd)\n {\n let _16 := 0\n revert(_16, _16)\n }\n calldatacopy(add(array, _1), add(_13, _8), _15)\n mstore(add(add(array, _15), _1), 0)\n mstore(add(value, _1), array)\n mstore(dst, value)\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function panic_error_0x32()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_stringliteral_158af7fab3747b0985f04cf30af9606b393d4c5e42069917ee121b46a8e6853e__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Contract call failed\")\n tail := add(headStart, 96)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_CallResult_$1544_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, shl(5, length)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0))\n let _3 := mload(srcPtr)\n mstore(tail_2, iszero(iszero(mload(_3))))\n let memberValue0 := mload(add(_3, _1))\n mstore(add(tail_2, _1), _2)\n tail_2 := abi_encode_string(memberValue0, add(tail_2, _2))\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n}", - "id": 16, - "language": "Yul", - "name": "#utility.yul" - } - ], - "immutableReferences": { - "10": [ - { - "length": 32, - "start": 245 - }, - { - "length": 32, - "start": 617 - }, - { - "length": 32, - "start": 1007 - } - ] - }, - "linkReferences": {}, - "object": "6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x74 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x183 JUMPI DUP1 PUSH4 0x4FDB7F44 EQ PUSH2 0x1A3 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x1C3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x1F0 JUMPI PUSH2 0xB1 JUMP JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0xE3 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0x141 JUMPI DUP1 PUSH4 0x268CA07E EQ PUSH2 0x163 JUMPI PUSH2 0xB1 JUMP JUMPDEST CALLDATASIZE PUSH2 0xB1 JUMPI PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 STOP JUMPDEST PUSH1 0x40 MLOAD CALLVALUE DUP2 MSTORE CALLER SWAP1 PUSH32 0x88A5966D370B9919B20F3E2C13FF65706F196A4E32CC2C12BF57088F88525874 SWAP1 PUSH1 0x20 ADD PUSH2 0xA7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xEF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x117 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x14D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x15C CALLDATASIZE PUSH1 0x4 PUSH2 0x9EB JUMP JUMPDEST PUSH2 0x212 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x16F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x17E CALLDATASIZE PUSH1 0x4 PUSH2 0xAC5 JUMP JUMPDEST PUSH2 0x345 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x19E CALLDATASIZE PUSH1 0x4 PUSH2 0xB31 JUMP JUMPDEST PUSH2 0x398 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x161 PUSH2 0x1BE CALLDATASIZE PUSH1 0x4 PUSH2 0xBD5 JUMP JUMPDEST PUSH2 0x4BF JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1CF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 SLOAD PUSH2 0x117 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH2 0x541 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x138 SWAP2 SWAP1 PUSH2 0xC85 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x224 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x2AE SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0xCF8 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2CD JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2F1 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x338 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 DUP11 PUSH2 0x5D3 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x351 DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x390 DUP5 DUP5 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH2 0x658 SWAP3 POP POP POP JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x3AA SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x42E SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0xD79 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x44D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x471 SWAP2 SWAP1 PUSH2 0xD57 JUMP JUMPDEST PUSH2 0x4A7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x4B5 DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x74E JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH2 0x4CB DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x53B PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x527 SWAP1 PUSH32 0x3078303030303030303030303030303030303030303030303030303030303030 DUP2 MSTORE PUSH32 0x3030303030303030303000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x2A ADD SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x658 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x550 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x57C SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5C9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x59E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5C9 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5AC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x5DD DUP6 DUP6 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 PUSH1 0x40 MLOAD PUSH2 0x5F9 SWAP3 SWAP2 SWAP1 PUSH2 0xC9F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 PUSH2 0x609 PUSH2 0x541 JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 EQ PUSH2 0x654 JUMPI DUP2 DUP2 PUSH1 0x40 MLOAD PUSH32 0xDE6A3CBF00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64B SWAP3 SWAP2 SWAP1 PUSH2 0xE0D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0x666 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x692 SWAP1 PUSH2 0xDBA JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6DF JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6B4 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6DF JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C2 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH1 0x0 SWAP1 DUP2 PUSH2 0x6F5 SWAP2 SWAP1 PUSH2 0xEA3 JUMP JUMPDEST POP DUP2 PUSH1 0x40 MLOAD PUSH2 0x704 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 KECCAK256 DUP2 PUSH1 0x40 MLOAD PUSH2 0x71A SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 SWAP1 PUSH32 0x389B68744F66AB26B44498E30DC68A44D33E15738476FAA4017FD247CE75269D SWAP1 PUSH1 0x0 SWAP1 LOG3 POP POP JUMP JUMPDEST DUP4 DUP4 PUSH2 0x75A DUP3 DUP3 PUSH2 0x5E9 JUMP JUMPDEST PUSH2 0x764 DUP5 DUP5 PUSH2 0x76F JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x77F DUP4 DUP6 ADD DUP6 PUSH2 0x1051 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x79D JUMPI PUSH2 0x79D PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x7E3 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x0 DUP2 MSTORE PUSH1 0x60 PUSH1 0x20 DUP3 ADD MSTORE DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x7BB JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0x0 DUP1 DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x807 JUMPI PUSH2 0x807 PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x0 ADD MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x83B JUMPI PUSH2 0x83B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x20 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x854 SWAP2 SWAP1 PUSH2 0xFBD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP7 GAS CALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x891 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x896 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x902 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x14 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x436F6E74726163742063616C6C206661696C6564000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x64B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP4 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE POP DUP5 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x92B JUMPI PUSH2 0x92B PUSH2 0x11E9 JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x943 SWAP1 PUSH2 0x1218 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x7E9 JUMP JUMPDEST POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x1FC27C8074EE9BA6D8A94064CDEE28DDCBC36E7B0A4C730262CB845CA06332B2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x992 SWAP2 SWAP1 PUSH2 0x1277 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x9B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x9E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xA29 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA35 DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA4E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA5A DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA7F DUP15 DUP4 DUP16 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xA98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA5 DUP14 DUP3 DUP15 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0xADB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xAF3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xAFF DUP9 DUP4 DUP10 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB18 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB25 DUP8 DUP3 DUP9 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xB4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xB6B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB77 DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xB90 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB9C DUP12 DUP4 DUP13 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xBB5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBC2 DUP11 DUP3 DUP12 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0xBE8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xBFF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xC0B DUP6 DUP3 DUP7 ADD PUSH2 0x9A2 JUMP JUMPDEST SWAP1 SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xC32 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xC1A JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xC53 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xC17 JUMP JUMPDEST PUSH1 0x1F ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xC98 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xC3B JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD12 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xD25 DUP2 DUP10 DUP12 PUSH2 0xCAF JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0xD40 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xC98 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0xD93 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0xCAF JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0xDA6 DUP2 DUP7 DUP9 PUSH2 0xCAF JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0xDCE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0xE07 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xE21 PUSH1 0x20 DUP4 ADD DUP5 DUP7 PUSH2 0xCAF JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0xE9E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0xE7F JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x390 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0xE8B JUMP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xEBD JUMPI PUSH2 0xEBD PUSH2 0xE29 JUMP JUMPDEST PUSH2 0xED1 DUP2 PUSH2 0xECB DUP5 SLOAD PUSH2 0xDBA JUMP JUMPDEST DUP5 PUSH2 0xE58 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0xF24 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0xEEE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x390 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0xF71 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0xF52 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0xFAD JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0xFCF DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0xC17 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP1 DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0xFFC JUMPI PUSH2 0xFFC PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 AND DUP2 ADD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x1049 JUMPI PUSH2 0x1049 PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1064 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x107C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP6 ADD SWAP2 POP DUP6 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1090 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x10A2 JUMPI PUSH2 0x10A2 PUSH2 0xE29 JUMP JUMPDEST DUP1 PUSH1 0x5 SHL PUSH2 0x10B1 DUP6 DUP3 ADD PUSH2 0x1002 JUMP JUMPDEST SWAP2 DUP3 MSTORE DUP4 DUP2 ADD DUP6 ADD SWAP2 DUP6 DUP2 ADD SWAP1 DUP10 DUP5 GT ISZERO PUSH2 0x10CB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 DUP7 ADD SWAP3 POP JUMPDEST DUP4 DUP4 LT ISZERO PUSH2 0x11DC JUMPI DUP3 CALLDATALOAD DUP6 DUP2 GT ISZERO PUSH2 0x10E9 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP7 ADD PUSH1 0x40 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 DUP3 DUP14 SUB DUP2 ADD DUP3 SGT ISZERO PUSH2 0x1120 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST PUSH2 0x1128 PUSH2 0xFD9 JUMP JUMPDEST DUP11 DUP5 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x114F JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP2 MSTORE DUP4 DUP4 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x1163 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP6 ADD SWAP5 POP POP DUP14 PUSH1 0x3F DUP6 ADD SLT PUSH2 0x1179 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP11 DUP5 ADD CALLDATALOAD DUP10 DUP2 GT ISZERO PUSH2 0x118D JUMPI PUSH2 0x118D PUSH2 0xE29 JUMP JUMPDEST PUSH2 0x119D DUP13 DUP5 PUSH1 0x1F DUP5 ADD AND ADD PUSH2 0x1002 JUMP JUMPDEST SWAP3 POP DUP1 DUP4 MSTORE DUP15 DUP5 DUP3 DUP8 ADD ADD GT ISZERO PUSH2 0x11B4 JUMPI PUSH1 0x0 DUP1 DUP2 REVERT JUMPDEST DUP1 DUP5 DUP7 ADD DUP14 DUP6 ADD CALLDATACOPY PUSH1 0x0 SWAP1 DUP4 ADD DUP13 ADD MSTORE DUP1 DUP12 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MSTORE POP POP SWAP2 DUP7 ADD SWAP2 SWAP1 DUP7 ADD SWAP1 PUSH2 0x10D1 JUMP JUMPDEST SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x1270 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12FD JUMPI DUP9 DUP4 SUB PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD ISZERO ISZERO DUP5 MSTORE DUP8 ADD MLOAD DUP8 DUP5 ADD DUP8 SWAP1 MSTORE PUSH2 0x12EA DUP8 DUP6 ADD DUP3 PUSH2 0xC3B JUMP JUMPDEST SWAP6 DUP9 ADD SWAP6 SWAP4 POP POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x129E JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB0 DUP16 NOT 0xB2 PUSH29 0x5B96E2196BCC61C4069DC8FAC27E30816AC61FF2278165FDDA761B6473 PUSH16 0x6C634300081400330000000000000000 ", - "sourceMap": "835:1734:13:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2442:31;;2463:9;160:25:16;;2451:10:13;;2442:31;;148:2:16;133:18;2442:31:13;;;;;;;;835:1734;;2529:31;;2550:9;160:25:16;;2538:10:13;;2529:31;;148:2:16;133:18;2529:31:13;14:177:16;252:39:0;;;;;;;;;;;;;;;;;;394:42:16;382:55;;;364:74;;352:2;337:18;252:39:0;;;;;;;;872:667;;;;;;;;;;-1:-1:-1;872:667:0;;;;;:::i;:::-;;:::i;:::-;;2824:290:14;;;;;;;;;;-1:-1:-1;2824:290:14;;;;;:::i;:::-;;:::i;447:419:0:-;;;;;;;;;;-1:-1:-1;447:419:0;;;;;:::i;:::-;;:::i;2406:269:14:-;;;;;;;;;;-1:-1:-1;2406:269:14;;;;;:::i;:::-;;:::i;886:35:13:-;;;;;;;;;;-1:-1:-1;886:35:13;;;;;;;;1658:91:14;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;872:667:0:-;1119:19;1151:7;;1141:18;;;;;;;:::i;:::-;;;;;;;;;1188:218;;;1141:18;-1:-1:-1;1188:35:0;:7;:35;;;;:218;;1241:9;;1268:11;;;;1297:13;;;;1141:18;;1357:11;;;;1386:6;;1188:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1170:276;;1424:22;;;;;;;;;;;;;;1170:276;1457:75;1475:11;;1488:13;;1503:7;;1512:11;;1525:6;1457:17;:75::i;:::-;1109:430;872:667;;;;;;;;;;:::o;2824:290:14:-;2950:8;;1536:28;1548:15;;1536:11;:28::i;:::-;3079::::1;3098:8;;3079:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;3079:18:14::1;::::0;-1:-1:-1;;;3079:28:14:i:1;:::-;2824:290:::0;;;;;;:::o;447:419:0:-;624:19;656:7;;646:18;;;;;;;:::i;:::-;;;;;;;;;680:80;;;646:18;-1:-1:-1;680:28:0;:7;:28;;;;:80;;709:9;;720:11;;;;733:13;;;;646:18;;680:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;675:128;;781:22;;;;;;;;;;;;;;675:128;814:45;823:11;;836:13;;851:7;;814:8;:45::i;:::-;614:252;447:419;;;;;;;:::o;2406:269:14:-;2502:12;;1536:28;1548:15;;1536:11;:28::i;:::-;2526:142:::1;2582:62;;;;;;8078:34:16::0;8066:47;;8143:12;8138:2;8129:12;;8122:34;8181:2;8172:12;;7864:326;2582:62:14::1;;;;;;;;;;;;;2526:18;:142::i;:::-;2406:269:::0;;;;:::o;1658:91::-;1704:13;1736:6;1729:13;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1658:91;:::o;2122:272:13:-;2368:19;2379:7;;2368:10;:19::i;:::-;;2122:272;;;;;;;;;:::o;1822:249:14:-;1971:15;;1955:33;;;;;;;:::i;:::-;;;;;;;;1942:7;:5;:7::i;:::-;1926:25;;;;;;:62;1922:143;;2038:15;;2011:43;;;;;;;;;;;;:::i;:::-;;;;;;;;1922:143;1822:249;;:::o;3268:199::-;3347:22;3372:6;3347:31;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3397:8;3388:6;:17;;;;;;:::i;:::-;;3451:8;3420:40;;;;;;:::i;:::-;;;;;;;;3441:8;3420:40;;;;;;:::i;:::-;;;;;;;;;;;;;;;3337:130;3268:199;:::o;1901:215:13:-;2065:13;;1536:28:14;1548:15;;1536:11;:28::i;:::-;2090:19:13::1;2101:7;;2090:10;:19::i;:::-;;1901:215:::0;;;;;;;;:::o;1280:615::-;1356:19;1387:25;1415:35;;;;1426:7;1415:35;:::i;:::-;1387:63;;1461:27;1508:5;:12;1491:30;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;1491:30:13;;;;;;;;;;;;;;;;1461:60;;1537:9;1532:279;1556:5;:12;1552:1;:16;1532:279;;;1590:12;1604:19;1627:5;1633:1;1627:8;;;;;;;;:::i;:::-;;;;;;;:15;;;:20;;1665:5;1671:1;1665:8;;;;;;;;:::i;:::-;;;;;;;:13;;;1627:65;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1589:103;;;;1714:7;1706:40;;;;;;;15649:2:16;1706:40:13;;;15631:21:16;15688:2;15668:18;;;15661:30;15727:22;15707:18;;;15700:50;15767:18;;1706:40:13;15447:344:16;1706:40:13;1773:27;;;;;;;;1784:7;1773:27;;;;;;1793:6;1773:27;;;1760:7;1768:1;1760:10;;;;;;;;:::i;:::-;;;;;;:40;;;;1575:236;;1570:3;;;;;:::i;:::-;;;;1532:279;;;;1844:10;1826:38;;;1856:7;1826:38;;;;;;:::i;:::-;;;;;;;;1881:7;1280:615;-1:-1:-1;;;;1280:615:13:o;449:348:16:-;501:8;511:6;565:3;558:4;550:6;546:17;542:27;532:55;;583:1;580;573:12;532:55;-1:-1:-1;606:20:16;;649:18;638:30;;635:50;;;681:1;678;671:12;635:50;718:4;710:6;706:17;694:29;;770:3;763:4;754:6;746;742:19;738:30;735:39;732:59;;;787:1;784;777:12;732:59;449:348;;;;;:::o;802:1437::-;953:6;961;969;977;985;993;1001;1009;1017;1025;1078:3;1066:9;1057:7;1053:23;1049:33;1046:53;;;1095:1;1092;1085:12;1046:53;1131:9;1118:23;1108:33;;1192:2;1181:9;1177:18;1164:32;1215:18;1256:2;1248:6;1245:14;1242:34;;;1272:1;1269;1262:12;1242:34;1311:59;1362:7;1353:6;1342:9;1338:22;1311:59;:::i;:::-;1389:8;;-1:-1:-1;1285:85:16;-1:-1:-1;1477:2:16;1462:18;;1449:32;;-1:-1:-1;1493:16:16;;;1490:36;;;1522:1;1519;1512:12;1490:36;1561:61;1614:7;1603:8;1592:9;1588:24;1561:61;:::i;:::-;1641:8;;-1:-1:-1;1535:87:16;-1:-1:-1;1729:2:16;1714:18;;1701:32;;-1:-1:-1;1745:16:16;;;1742:36;;;1774:1;1771;1764:12;1742:36;1813:61;1866:7;1855:8;1844:9;1840:24;1813:61;:::i;:::-;1893:8;;-1:-1:-1;1787:87:16;-1:-1:-1;1981:3:16;1966:19;;1953:33;;-1:-1:-1;1998:16:16;;;1995:36;;;2027:1;2024;2017:12;1995:36;;2066:61;2119:7;2108:8;2097:9;2093:24;2066:61;:::i;:::-;2040:87;;2146:8;2136:18;;;2173:8;2163:18;;;2228:3;2217:9;2213:19;2200:33;2190:43;;802:1437;;;;;;;;;;;;;:::o;2244:721::-;2336:6;2344;2352;2360;2413:2;2401:9;2392:7;2388:23;2384:32;2381:52;;;2429:1;2426;2419:12;2381:52;2469:9;2456:23;2498:18;2539:2;2531:6;2528:14;2525:34;;;2555:1;2552;2545:12;2525:34;2594:59;2645:7;2636:6;2625:9;2621:22;2594:59;:::i;:::-;2672:8;;-1:-1:-1;2568:85:16;-1:-1:-1;2760:2:16;2745:18;;2732:32;;-1:-1:-1;2776:16:16;;;2773:36;;;2805:1;2802;2795:12;2773:36;;2844:61;2897:7;2886:8;2875:9;2871:24;2844:61;:::i;:::-;2244:721;;;;-1:-1:-1;2924:8:16;-1:-1:-1;;;;2244:721:16:o;2970:1078::-;3091:6;3099;3107;3115;3123;3131;3139;3192:3;3180:9;3171:7;3167:23;3163:33;3160:53;;;3209:1;3206;3199:12;3160:53;3245:9;3232:23;3222:33;;3306:2;3295:9;3291:18;3278:32;3329:18;3370:2;3362:6;3359:14;3356:34;;;3386:1;3383;3376:12;3356:34;3425:59;3476:7;3467:6;3456:9;3452:22;3425:59;:::i;:::-;3503:8;;-1:-1:-1;3399:85:16;-1:-1:-1;3591:2:16;3576:18;;3563:32;;-1:-1:-1;3607:16:16;;;3604:36;;;3636:1;3633;3626:12;3604:36;3675:61;3728:7;3717:8;3706:9;3702:24;3675:61;:::i;:::-;3755:8;;-1:-1:-1;3649:87:16;-1:-1:-1;3843:2:16;3828:18;;3815:32;;-1:-1:-1;3859:16:16;;;3856:36;;;3888:1;3885;3878:12;3856:36;;3927:61;3980:7;3969:8;3958:9;3954:24;3927:61;:::i;:::-;2970:1078;;;;-1:-1:-1;2970:1078:16;;-1:-1:-1;2970:1078:16;;;;3901:87;;-1:-1:-1;;;2970:1078:16:o;4053:411::-;4124:6;4132;4185:2;4173:9;4164:7;4160:23;4156:32;4153:52;;;4201:1;4198;4191:12;4153:52;4241:9;4228:23;4274:18;4266:6;4263:30;4260:50;;;4306:1;4303;4296:12;4260:50;4345:59;4396:7;4387:6;4376:9;4372:22;4345:59;:::i;:::-;4423:8;;4319:85;;-1:-1:-1;4053:411:16;-1:-1:-1;;;;4053:411:16:o;4725:250::-;4810:1;4820:113;4834:6;4831:1;4828:13;4820:113;;;4910:11;;;4904:18;4891:11;;;4884:39;4856:2;4849:10;4820:113;;;-1:-1:-1;;4967:1:16;4949:16;;4942:27;4725:250::o;4980:330::-;5022:3;5060:5;5054:12;5087:6;5082:3;5075:19;5103:76;5172:6;5165:4;5160:3;5156:14;5149:4;5142:5;5138:16;5103:76;:::i;:::-;5224:2;5212:15;5229:66;5208:88;5199:98;;;;5299:4;5195:109;;4980:330;-1:-1:-1;;4980:330:16:o;5315:220::-;5464:2;5453:9;5446:21;5427:4;5484:45;5525:2;5514:9;5510:18;5502:6;5484:45;:::i;:::-;5476:53;5315:220;-1:-1:-1;;;5315:220:16:o;5540:271::-;5723:6;5715;5710:3;5697:33;5679:3;5749:16;;5774:13;;;5749:16;5540:271;-1:-1:-1;5540:271:16:o;5816:326::-;5905:6;5900:3;5893:19;5957:6;5950:5;5943:4;5938:3;5934:14;5921:43;;6009:1;6002:4;5993:6;5988:3;5984:16;5980:27;5973:38;5875:3;6131:4;6061:66;6056:2;6048:6;6044:15;6040:88;6035:3;6031:98;6027:109;6020:116;;5816:326;;;;:::o;6147:844::-;6506:6;6495:9;6488:25;6549:3;6544:2;6533:9;6529:18;6522:31;6469:4;6576:63;6634:3;6623:9;6619:19;6611:6;6603;6576:63;:::i;:::-;6687:9;6679:6;6675:22;6670:2;6659:9;6655:18;6648:50;6721;6764:6;6756;6748;6721:50;:::i;:::-;6707:64;;6807:6;6802:2;6791:9;6787:18;6780:34;6863:9;6855:6;6851:22;6845:3;6834:9;6830:19;6823:51;6891:50;6934:6;6926;6918;6891:50;:::i;:::-;6883:58;;;6978:6;6972:3;6961:9;6957:19;6950:35;6147:844;;;;;;;;;;;;:::o;6996:277::-;7063:6;7116:2;7104:9;7095:7;7091:23;7087:32;7084:52;;;7132:1;7129;7122:12;7084:52;7164:9;7158:16;7217:5;7210:13;7203:21;7196:5;7193:32;7183:60;;7239:1;7236;7229:12;7278:581;7551:6;7540:9;7533:25;7594:3;7589:2;7578:9;7574:18;7567:31;7514:4;7621:63;7679:3;7668:9;7664:19;7656:6;7648;7621:63;:::i;:::-;7732:9;7724:6;7720:22;7715:2;7704:9;7700:18;7693:50;7760;7803:6;7795;7787;7760:50;:::i;:::-;7752:58;;;7846:6;7841:2;7830:9;7826:18;7819:34;7278:581;;;;;;;;;:::o;8195:437::-;8274:1;8270:12;;;;8317;;;8338:61;;8392:4;8384:6;8380:17;8370:27;;8338:61;8445:2;8437:6;8434:14;8414:18;8411:38;8408:218;;8482:77;8479:1;8472:88;8583:4;8580:1;8573:15;8611:4;8608:1;8601:15;8408:218;;8195:437;;;:::o;8637:247::-;8796:2;8785:9;8778:21;8759:4;8816:62;8874:2;8863:9;8859:18;8851:6;8843;8816:62;:::i;:::-;8808:70;8637:247;-1:-1:-1;;;;8637:247:16:o;8889:184::-;8941:77;8938:1;8931:88;9038:4;9035:1;9028:15;9062:4;9059:1;9052:15;9204:545;9306:2;9301:3;9298:11;9295:448;;;9342:1;9367:5;9363:2;9356:17;9412:4;9408:2;9398:19;9482:2;9470:10;9466:19;9463:1;9459:27;9453:4;9449:38;9518:4;9506:10;9503:20;9500:47;;;-1:-1:-1;9541:4:16;9500:47;9596:2;9591:3;9587:12;9584:1;9580:20;9574:4;9570:31;9560:41;;9651:82;9669:2;9662:5;9659:13;9651:82;;;9714:17;;;9695:1;9684:13;9651:82;;9295:448;9204:545;;;:::o;9985:1471::-;10111:3;10105:10;10138:18;10130:6;10127:30;10124:56;;;10160:18;;:::i;:::-;10189:97;10279:6;10239:38;10271:4;10265:11;10239:38;:::i;:::-;10233:4;10189:97;:::i;:::-;10341:4;;10405:2;10394:14;;10422:1;10417:782;;;;11243:1;11260:6;11257:89;;;-1:-1:-1;11312:19:16;;;11306:26;11257:89;9891:66;9882:1;9878:11;;;9874:84;9870:89;9860:100;9966:1;9962:11;;;9857:117;11359:81;;10387:1063;;10417:782;9151:1;9144:14;;;9188:4;9175:18;;10465:66;10453:79;;;10630:236;10644:7;10641:1;10638:14;10630:236;;;10733:19;;;10727:26;10712:42;;10825:27;;;;10793:1;10781:14;;;;10660:19;;10630:236;;;10634:3;10894:6;10885:7;10882:19;10879:261;;;10955:19;;;10949:26;11056:66;11038:1;11034:14;;;11050:3;11030:24;11026:97;11022:102;11007:118;10992:134;;10879:261;-1:-1:-1;;;;;11186:1:16;11170:14;;;11166:22;11153:36;;-1:-1:-1;9985:1471:16:o;11461:289::-;11592:3;11630:6;11624:13;11646:66;11705:6;11700:3;11693:4;11685:6;11681:17;11646:66;:::i;:::-;11728:16;;;;;11461:289;-1:-1:-1;;11461:289:16:o;11755:257::-;11827:4;11821:11;;;11859:17;;11906:18;11891:34;;11927:22;;;11888:62;11885:88;;;11953:18;;:::i;:::-;11989:4;11982:24;11755:257;:::o;12017:334::-;12088:2;12082:9;12144:2;12134:13;;12149:66;12130:86;12118:99;;12247:18;12232:34;;12268:22;;;12229:62;12226:88;;;12294:18;;:::i;:::-;12330:2;12323:22;12017:334;;-1:-1:-1;12017:334:16:o;12356:2605::-;12468:6;12499:2;12542;12530:9;12521:7;12517:23;12513:32;12510:52;;;12558:1;12555;12548:12;12510:52;12598:9;12585:23;12627:18;12668:2;12660:6;12657:14;12654:34;;;12684:1;12681;12674:12;12654:34;12722:6;12711:9;12707:22;12697:32;;12767:7;12760:4;12756:2;12752:13;12748:27;12738:55;;12789:1;12786;12779:12;12738:55;12825:2;12812:16;12847:2;12843;12840:10;12837:36;;;12853:18;;:::i;:::-;12899:2;12896:1;12892:10;12922:28;12946:2;12942;12938:11;12922:28;:::i;:::-;12984:15;;;13054:11;;;13050:20;;;13015:12;;;;13082:19;;;13079:39;;;13114:1;13111;13104:12;13079:39;13146:2;13142;13138:11;13127:22;;13158:1773;13174:6;13169:3;13166:15;13158:1773;;;13260:3;13247:17;13296:2;13283:11;13280:19;13277:109;;;13340:1;13369:2;13365;13358:14;13277:109;13409:20;;13452:4;13479:66;13569:16;;;13565:25;;13561:34;-1:-1:-1;13558:127:16;;;13637:1;13667:3;13662;13655:16;13558:127;13711:22;;:::i;:::-;13782:2;13778;13774:11;13761:25;13834:42;13825:7;13821:56;13812:7;13809:69;13799:170;;13921:1;13951:3;13946;13939:16;13799:170;13982:22;;14046:11;;;14033:25;14074:16;;;14071:109;;;14132:1;14162:3;14157;14150:16;14071:109;14212:8;14208:2;14204:17;14193:28;;;14262:7;14257:2;14252:3;14248:12;14244:26;14234:127;;14313:1;14343:3;14338;14331:16;14234:127;14407:2;14402:3;14398:12;14385:26;14435:2;14430:3;14427:11;14424:37;;;14441:18;;:::i;:::-;14487:49;14532:2;14527;14520:4;14515:3;14511:14;14507:23;14503:32;14487:49;:::i;:::-;14474:62;;14563:3;14556:5;14549:18;14610:7;14605:2;14599:3;14594;14590:13;14586:22;14583:35;14580:128;;;14660:1;14690:3;14685;14678:16;14580:128;14764:3;14759:2;14754:3;14750:12;14745:2;14738:5;14734:14;14721:47;14814:1;14792:15;;;14788:24;;14781:35;14836:14;;;14829:29;;;;14871:18;;-1:-1:-1;;13191:12:16;;;;14909;;;;13158:1773;;;14950:5;12356:2605;-1:-1:-1;;;;;;;;;12356:2605:16:o;14966:184::-;15018:77;15015:1;15008:88;15115:4;15112:1;15105:15;15139:4;15136:1;15129:15;15796:349;15835:3;15866:66;15859:5;15856:77;15853:257;;15966:77;15963:1;15956:88;16067:4;16064:1;16057:15;16095:4;16092:1;16085:15;15853:257;-1:-1:-1;16137:1:16;16126:13;;15796:349::o;16150:1108::-;16348:4;16377:2;16417;16406:9;16402:18;16447:2;16436:9;16429:21;16470:6;16505;16499:13;16536:6;16528;16521:22;16562:2;16552:12;;16595:2;16584:9;16580:18;16573:25;;16657:2;16647:6;16644:1;16640:14;16629:9;16625:30;16621:39;16695:2;16687:6;16683:15;16716:1;16726:503;16740:6;16737:1;16734:13;16726:503;;;16805:22;;;16829:66;16801:95;16789:108;;16920:13;;16975:9;;16968:17;16961:25;16946:41;;17026:11;;17020:18;17058:15;;;17051:27;;;17101:48;17133:15;;;17020:18;17101:48;:::i;:::-;17207:12;;;;17091:58;-1:-1:-1;;17172:15:16;;;;16762:1;16755:9;16726:503;;;-1:-1:-1;17246:6:16;;16150:1108;-1:-1:-1;;;;;;;;16150:1108:16:o" - }, - "methodIdentifiers": { - "execute(bytes32,string,string,bytes)": "49160658", - "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", - "gasService()": "6a22d8cc", - "gateway()": "116191b6", - "owner()": "8da5cb5b", - "renounceOwnership(string)": "4fdb7f44", - "transferOwnership(string,string)": "268ca07e" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"gateway_\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"gasReceiver_\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"owner_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"owner\",\"type\":\"string\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"account\",\"type\":\"string\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"executor\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"indexed\":false,\"internalType\":\"struct CallResult[]\",\"name\":\"results\",\"type\":\"tuple[]\"}],\"name\":\"MulticallExecuted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"previousOwner\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"newOwner\",\"type\":\"string\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Received\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasService\",\"outputs\":[{\"internalType\":\"contract IAxelarGasService\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"currentOwner\",\"type\":\"string\"}],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"oldOwner\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"newOwner\",\"type\":\"string\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"errors\":{\"OwnableInvalidOwner(string)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(string)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}]},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership(string)\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(string,string)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/__tests__/contracts/AgoricProxy.sol\":\"Wallet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":{\"keccak256\":\"0x2a88d046f9cdc664afc7b788d6c5b534d361b46fb45ab7abf721a58dd813359b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ac48adfa686aa78e2474bcb72f49791b631bd5dd15e0991ccd91b9660caacdb\",\"dweb:/ipfs/QmQ7uFDHagPUDq93T4vaeANzLE8J8Ch3jcdTAdNT7kkfEW\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":{\"keccak256\":\"0x7ad77d3af41f342e9032889a7b5aa224ab0c6dfaf9ce9350fe403d4a596c5eae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc2358f1f1138cd742a7cfdfc83420c488c19c3b3e39d703482e124e453953ee\",\"dweb:/ipfs/QmYki4j2yWrixJVs955DyS1ZmLD5zcxe8ss52w6DLBLRi4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol\":{\"keccak256\":\"0xb77ad755f4eade679279d5ca12b6926595e41e17387e143530f4fb57672d58d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b0d01d0810d12dba98839b084440ab9b52e04d94e9431a6ffadabb1651d0f100\",\"dweb:/ipfs/Qme9KLMtbmNvsAj2giGTzNFKAymkMJq88Ef445pLiawKWa\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]},\"src/__tests__/contracts/AgoricProxy.sol\":{\"keccak256\":\"0x1f89b022460ace074827cd232c5ea192b1b3192be4be264cb3563189c921943f\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://4fcdc4b827ef417d3e86c44c8b439a877899284d28636d17a8277a810fae54bc\",\"dweb:/ipfs/QmXXx3o6Tkx7T4fFDJRZayFfUMB1FwLuy4dzNHoEJ9HP1j\"]},\"src/__tests__/contracts/Ownable.sol\":{\"keccak256\":\"0xe58b7ff3c99e14494af44e1588a94bba12319b3ee559e5868a5a646036be0f31\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4e57d0fccf76dcdf1ef09a62138bf7810c95d3d721a942af11fd9496b2e58a1e\",\"dweb:/ipfs/QmQYSKgBPHumQ92NfQx4wkxj8rG2EzggNuj2pbBWYexxRo\"]}},\"version\":1}" - } - }, - "src/__tests__/contracts/Ownable.sol": { - "Ownable": { - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "owner", - "type": "string" - } - ], - "name": "OwnableInvalidOwner", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "account", - "type": "string" - } - ], - "name": "OwnableUnauthorizedAccount", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "string", - "name": "previousOwner", - "type": "string" - }, - { - "indexed": true, - "internalType": "string", - "name": "newOwner", - "type": "string" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "currentOwner", - "type": "string" - } - ], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "oldOwner", - "type": "string" - }, - { - "internalType": "string", - "name": "newOwner", - "type": "string" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": {}, - "generatedSources": [], - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "deployedBytecode": { - "functionDebugData": {}, - "generatedSources": [], - "immutableReferences": {}, - "linkReferences": {}, - "object": "", - "opcodes": "", - "sourceMap": "" - }, - "methodIdentifiers": { - "owner()": "8da5cb5b", - "renounceOwnership(string)": "4fdb7f44", - "transferOwnership(string,string)": "268ca07e" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"owner\",\"type\":\"string\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"account\",\"type\":\"string\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"string\",\"name\":\"previousOwner\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"string\",\"name\":\"newOwner\",\"type\":\"string\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"currentOwner\",\"type\":\"string\"}],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"oldOwner\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"newOwner\",\"type\":\"string\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. The initial owner is set to the address provided by the deployer. This can later be changed with {transferOwnership}. This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be applied to your functions to restrict their use to the owner.\",\"errors\":{\"OwnableInvalidOwner(string)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(string)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}]},\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes the contract setting the address provided by the deployer as the initial owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership(string)\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(string,string)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/__tests__/contracts/Ownable.sol\":\"Ownable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"src/__tests__/contracts/Ownable.sol\":{\"keccak256\":\"0xe58b7ff3c99e14494af44e1588a94bba12319b3ee559e5868a5a646036be0f31\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4e57d0fccf76dcdf1ef09a62138bf7810c95d3d721a942af11fd9496b2e58a1e\",\"dweb:/ipfs/QmQYSKgBPHumQ92NfQx4wkxj8rG2EzggNuj2pbBWYexxRo\"]}},\"version\":1}" - } - }, - "src/__tests__/contracts/SendReceive.sol": { - "SendReceive": { - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "gateway_", - "type": "address" - }, - { - "internalType": "address", - "name": "gasReceiver_", - "type": "address" - }, - { - "internalType": "string", - "name": "chainName_", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "InvalidAddress", - "type": "error" - }, - { - "inputs": [], - "name": "NotApprovedByGateway", - "type": "error" - }, - { - "inputs": [], - "name": "chainName", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - } - ], - "name": "execute", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "commandId", - "type": "bytes32" - }, - { - "internalType": "string", - "name": "sourceChain", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceAddress", - "type": "string" - }, - { - "internalType": "bytes", - "name": "payload", - "type": "bytes" - }, - { - "internalType": "string", - "name": "tokenSymbol", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "executeWithToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "gasService", - "outputs": [ - { - "internalType": "contract IAxelarGasService", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "gateway", - "outputs": [ - { - "internalType": "contract IAxelarGateway", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "destinationChain", - "type": "string" - }, - { - "internalType": "string", - "name": "destinationAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "message", - "type": "string" - } - ], - "name": "send", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "storedMessage", - "outputs": [ - { - "internalType": "string", - "name": "sender", - "type": "string" - }, - { - "internalType": "string", - "name": "message", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "evm": { - "bytecode": { - "functionDebugData": { - "@_2164": { - "entryPoint": null, - "id": 2164, - "parameterSlots": 3, - "returnSlots": 0 - }, - "@_32": { - "entryPoint": null, - "id": 32, - "parameterSlots": 1, - "returnSlots": 0 - }, - "abi_decode_address_fromMemory": { - "entryPoint": 136, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory": { - "entryPoint": 187, - "id": null, - "parameterSlots": 2, - "returnSlots": 3 - }, - "array_dataslot_string_storage": { - "entryPoint": null, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "clean_up_bytearray_end_slots_string_storage": { - "entryPoint": 497, - "id": null, - "parameterSlots": 3, - "returnSlots": 0 - }, - "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { - "entryPoint": 580, - "id": null, - "parameterSlots": 2, - "returnSlots": 0 - }, - "extract_byte_array_length": { - "entryPoint": 437, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "extract_used_part_and_set_length_of_short_byte_array": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "panic_error_0x41": { - "entryPoint": 165, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - } - }, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:4131:16", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:16", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "74:117:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "84:22:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "99:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "93:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "93:13:16" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "84:5:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "169:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "178:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "181:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "171:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "171:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "171:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "128:5:16" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "139:5:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "154:3:16", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "159:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "150:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "150:11:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "163:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "146:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "146:19:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "135:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "135:31:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "125:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "125:42:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "118:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "118:50:16" - }, - "nodeType": "YulIf", - "src": "115:70:16" - } - ] - }, - "name": "abi_decode_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "53:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "64:5:16", - "type": "" - } - ], - "src": "14:177:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "228:95:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "245:1:16", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "252:3:16", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "257:10:16", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "248:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "248:20:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "238:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "238:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "238:31:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "285:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "288:4:16", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "278:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "278:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "278:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "309:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "312:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "302:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "302:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "302:15:16" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "196:127:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "453:1087:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "499:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "508:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "511:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "501:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "501:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "501:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "474:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "483:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "470:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "470:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "495:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "466:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "466:32:16" - }, - "nodeType": "YulIf", - "src": "463:52:16" - }, - { - "nodeType": "YulAssignment", - "src": "524:50:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "564:9:16" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "534:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "534:40:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "524:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "583:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "593:2:16", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "587:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "604:59:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "648:9:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "659:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "644:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "644:18:16" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "614:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "614:49:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "604:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "672:39:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "696:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "707:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "692:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "692:18:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "686:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "686:25:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "676:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "720:28:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "738:2:16", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "742:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "734:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "734:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "746:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "730:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "730:18:16" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "724:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "775:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "784:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "787:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "777:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "777:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "777:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "763:6:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "771:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "760:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "760:14:16" - }, - "nodeType": "YulIf", - "src": "757:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "800:32:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "814:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "825:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "810:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "810:22:16" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "804:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "880:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "889:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "892:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "882:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "882:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "882:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "859:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "863:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "855:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "855:13:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "870:7:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "851:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "851:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "844:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "844:35:16" - }, - "nodeType": "YulIf", - "src": "841:55:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "905:19:16", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "921:2:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "915:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "915:9:16" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "909:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "947:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "949:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "949:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "949:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "939:2:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "943:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "936:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "936:10:16" - }, - "nodeType": "YulIf", - "src": "933:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "978:17:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "992:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "988:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "988:7:16" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "982:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1004:23:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1024:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1018:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "1018:9:16" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1008:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1036:71:16", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1058:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1082:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1086:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1078:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1078:13:16" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "1093:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1074:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1074:22:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1098:2:16", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1070:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1070:31:16" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "1103:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1066:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1066:40:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1054:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1054:53:16" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1040:10:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1166:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1168:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "1168:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1168:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1125:10:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1137:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1122:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1122:18:16" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1145:10:16" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1157:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1142:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1142:22:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1119:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1119:46:16" - }, - "nodeType": "YulIf", - "src": "1116:72:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1204:2:16", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1208:10:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1197:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1197:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1197:22:16" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1235:6:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1243:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1228:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1228:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1228:18:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1292:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1301:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1304:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1294:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1294:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1294:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1269:2:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1273:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1265:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1265:11:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1278:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1261:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1261:20:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1283:7:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1258:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1258:33:16" - }, - "nodeType": "YulIf", - "src": "1255:53:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1317:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1326:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "1321:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1382:83:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1411:6:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1419:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1407:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1407:14:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1423:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1403:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1403:23:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1442:2:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1446:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1438:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1438:10:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1450:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1434:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1434:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1428:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "1428:26:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1396:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1396:59:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1396:59:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1347:1:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1350:2:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1344:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1344:9:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "1354:19:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1356:15:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1365:1:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1368:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1361:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1361:10:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1356:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "1340:3:16", - "statements": [] - }, - "src": "1336:129:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1489:6:16" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1497:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1485:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1485:15:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1502:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1481:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1481:24:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1507:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1474:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1474:35:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1474:35:16" - }, - { - "nodeType": "YulAssignment", - "src": "1518:16:16", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1528:6:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1518:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "403:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "414:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "426:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "434:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "442:6:16", - "type": "" - } - ], - "src": "328:1212:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1600:325:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1610:22:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1624:1:16", - "type": "", - "value": "1" - }, - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "1627:4:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "1620:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1620:12:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1610:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1641:38:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "1671:4:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1677:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1667:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1667:12:16" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "1645:18:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1718:31:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1720:27:16", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1734:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1742:4:16", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1730:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1730:17:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1720:6:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "1698:18:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1691:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1691:26:16" - }, - "nodeType": "YulIf", - "src": "1688:61:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1808:111:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1829:1:16", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1836:3:16", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1841:10:16", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1832:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1832:20:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1822:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1822:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1822:31:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1873:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1876:4:16", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1866:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1866:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1866:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1901:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1904:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1894:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1894:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1894:15:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "1764:18:16" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1787:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1795:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1784:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1784:14:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "1761:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1761:38:16" - }, - "nodeType": "YulIf", - "src": "1758:161:16" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "1580:4:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1589:6:16", - "type": "" - } - ], - "src": "1545:380:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1986:65:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2003:1:16", - "type": "", - "value": "0" - }, - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "2006:3:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1996:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1996:14:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1996:14:16" - }, - { - "nodeType": "YulAssignment", - "src": "2019:26:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2037:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2040:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "2027:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "2027:18:16" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2019:4:16" - } - ] - } - ] - }, - "name": "array_dataslot_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "1969:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "1977:4:16", - "type": "" - } - ], - "src": "1930:121:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2137:464:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2170:425:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2184:11:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2194:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2188:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2215:2:16" - }, - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "2219:5:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2208:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2208:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2208:17:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2238:31:16", - "value": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2260:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2264:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "2250:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "2250:19:16" - }, - "variables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "2242:4:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2282:57:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2305:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2315:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "2322:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2334:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2318:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2318:19:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "2311:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2311:27:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2301:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2301:38:16" - }, - "variables": [ - { - "name": "deleteStart", - "nodeType": "YulTypedName", - "src": "2286:11:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2376:23:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2378:19:16", - "value": { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2393:4:16" - }, - "variableNames": [ - { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "2378:11:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "2358:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2370:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2355:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2355:20:16" - }, - "nodeType": "YulIf", - "src": "2352:47:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2412:41:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2426:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2436:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2443:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2448:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2439:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2439:12:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "2432:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2432:20:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2422:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2422:31:16" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "2416:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2466:24:16", - "value": { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "2479:11:16" - }, - "variables": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "2470:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2564:21:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2573:5:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2580:2:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "2566:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2566:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2566:17:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2514:5:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2521:2:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2511:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2511:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "2525:26:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2527:22:16", - "value": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2540:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2547:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2536:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2536:13:16" - }, - "variableNames": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "2527:5:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "2507:3:16", - "statements": [] - }, - "src": "2503:82:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2153:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2158:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2150:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2150:11:16" - }, - "nodeType": "YulIf", - "src": "2147:448:16" - } - ] - }, - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "2109:5:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "2116:3:16", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "2121:10:16", - "type": "" - } - ], - "src": "2056:545:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2691:81:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2701:65:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "2716:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2734:1:16", - "type": "", - "value": "3" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2737:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2730:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2730:11:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2747:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2743:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2743:6:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "2726:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2726:24:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2722:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2722:29:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2712:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2712:40:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2758:1:16", - "type": "", - "value": "1" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "2761:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2754:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2754:11:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "2709:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2709:57:16" - }, - "variableNames": [ - { - "name": "used", - "nodeType": "YulIdentifier", - "src": "2701:4:16" - } - ] - } - ] - }, - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "2668:4:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "2674:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "used", - "nodeType": "YulTypedName", - "src": "2682:4:16", - "type": "" - } - ], - "src": "2606:166:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2873:1256:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2883:24:16", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "2903:3:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2897:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "2897:10:16" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "2887:6:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2950:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "2952:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "2952:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2952:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "2922:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2938:2:16", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2942:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2934:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2934:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2946:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2930:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2930:18:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2919:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2919:30:16" - }, - "nodeType": "YulIf", - "src": "2916:56:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3025:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3063:4:16" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "3057:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3057:11:16" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "3031:25:16" - }, - "nodeType": "YulFunctionCall", - "src": "3031:38:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3071:6:16" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulIdentifier", - "src": "2981:43:16" - }, - "nodeType": "YulFunctionCall", - "src": "2981:97:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2981:97:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3087:18:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3104:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "3091:9:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3114:23:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3133:4:16", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "3118:11:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3146:24:16", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "3159:11:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3146:9:16" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3216:656:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3230:35:16", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3249:6:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3261:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3257:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3257:7:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3245:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3245:20:16" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "3234:7:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3278:49:16", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3322:4:16" - } - ], - "functionName": { - "name": "array_dataslot_string_storage", - "nodeType": "YulIdentifier", - "src": "3292:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "3292:35:16" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "3282:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3340:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3349:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "3344:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3427:172:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3452:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3470:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3475:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3466:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3466:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3460:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3460:26:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "3445:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3445:42:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3445:42:16" - }, - { - "nodeType": "YulAssignment", - "src": "3504:24:16", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3518:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3526:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3514:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3514:14:16" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3504:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3545:40:16", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3562:9:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "3573:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3558:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3558:27:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3545:9:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3374:1:16" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "3377:7:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "3371:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3371:14:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "3386:28:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3388:24:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3397:1:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "3400:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3393:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3393:19:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3388:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "3367:3:16", - "statements": [] - }, - "src": "3363:236:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3647:166:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3665:43:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3692:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3697:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3688:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3688:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3682:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3682:26:16" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "3669:9:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "3732:6:16" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "3744:9:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3771:1:16", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3774:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3767:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3767:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3783:3:16", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3763:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3763:24:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3793:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3789:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3789:6:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "3759:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3759:37:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3755:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3755:42:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3740:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3740:58:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "3725:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3725:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3725:74:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "3618:7:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3627:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "3615:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3615:19:16" - }, - "nodeType": "YulIf", - "src": "3612:201:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3833:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3847:1:16", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3850:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3843:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3843:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3859:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3839:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3839:22:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "3826:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3826:36:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3826:36:16" - } - ] - }, - "nodeType": "YulCase", - "src": "3209:663:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3214:1:16", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3889:234:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3903:14:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3916:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3907:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3952:67:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3970:35:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "3989:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "3994:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3985:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3985:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3979:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "3979:26:16" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3970:5:16" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3933:6:16" - }, - "nodeType": "YulIf", - "src": "3930:89:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "4039:4:16" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4098:5:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "4105:6:16" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "4045:52:16" - }, - "nodeType": "YulFunctionCall", - "src": "4045:67:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "4032:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4032:81:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4032:81:16" - } - ] - }, - "nodeType": "YulCase", - "src": "3881:242:16", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "3189:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3197:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3186:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3186:14:16" - }, - "nodeType": "YulSwitch", - "src": "3179:944:16" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "2858:4:16", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "2864:3:16", - "type": "" - } - ], - "src": "2777:1352:16" - } - ] - }, - "contents": "{\n { }\n function abi_decode_address_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_addresst_addresst_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := abi_decode_address_fromMemory(headStart)\n let _1 := 32\n value1 := abi_decode_address_fromMemory(add(headStart, _1))\n let offset := mload(add(headStart, 64))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n let _3 := add(headStart, offset)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := mload(_3)\n if gt(_4, _2) { panic_error_0x41() }\n let _5 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_4, 0x1f), _5), 63), _5))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _4)\n if gt(add(add(_3, _4), _1), dataEnd) { revert(0, 0) }\n let i := 0\n for { } lt(i, _4) { i := add(i, _1) }\n {\n mstore(add(add(memPtr, i), _1), mload(add(add(_3, i), _1)))\n }\n mstore(add(add(memPtr, _4), _1), 0)\n value2 := memPtr\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n}", - "id": 16, - "language": "Yul", - "name": "#utility.yul" - } - ], - "linkReferences": {}, - "object": "60c06040523480156200001157600080fd5b5060405162001b1d38038062001b1d8339810160408190526200003491620000bb565b826001600160a01b0381166200005d5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03908116608052821660a05260006200007e828262000244565b5050505062000310565b80516001600160a01b0381168114620000a057600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600060608486031215620000d157600080fd5b620000dc8462000088565b92506020620000ed81860162000088565b60408601519093506001600160401b03808211156200010b57600080fd5b818701915087601f8301126200012057600080fd5b815181811115620001355762000135620000a5565b604051601f8201601f19908116603f01168101908382118183101715620001605762000160620000a5565b816040528281528a868487010111156200017957600080fd5b600093505b828410156200019d57848401860151818501870152928501926200017e565b60008684830101528096505050505050509250925092565b600181811c90821680620001ca57607f821691505b602082108103620001eb57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023f57600081815260208120601f850160051c810160208610156200021a5750805b601f850160051c820191505b818110156200023b5782815560010162000226565b5050505b505050565b81516001600160401b03811115620002605762000260620000a5565b6200027881620002718454620001b5565b84620001f1565b602080601f831160018114620002b05760008415620002975750858301515b600019600386901b1c1916600185901b1785556200023b565b600085815260208120601f198616915b82811015620002e157888601518255948401946001909101908401620002c0565b5085821015620003005787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a0516117cc620003516000396000818161015c01526104b70152600081816087015281816101f8015281816103a8015261058701526117cc6000f3fe6080604052600436106100705760003560e01c8063491606581161004e57806349160658146101175780635615264d146101375780636a22d8cc1461014a578063b2f6cbbe1461017e57600080fd5b8063116191b6146100755780631a98b2e0146100d35780631c93b03a146100f5575b600080fd5b34801561008157600080fd5b506100a97f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156100df57600080fd5b506100f36100ee366004610dac565b6101a1565b005b34801561010157600080fd5b5061010a6102c3565b6040516100ca9190610ed6565b34801561012357600080fd5b506100f3610132366004610ef0565b610351565b6100f3610145366004610f94565b610478565b34801561015657600080fd5b506100a97f000000000000000000000000000000000000000000000000000000000000000081565b34801561018a57600080fd5b50610193610603565b6040516100ca92919061102e565b600085856040516101b392919061105c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed99061023d908e908e908e908e908e9089908d908d908d90600401611097565b6020604051808303816000875af115801561025c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028091906110f6565b6102b6576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600080546102d090611118565b80601f01602080910402602001604051908101604052809291908181526020018280546102fc90611118565b80156103495780601f1061031e57610100808354040283529160200191610349565b820191906000526020600020905b81548152906001019060200180831161032c57829003601f168201915b505050505081565b6000828260405161036392919061105c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906103e7908b908b908b908b908b90899060040161116b565b6020604051808303816000875af1158015610406573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061042a91906110f6565b610460576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61046e878787878787610723565b5050505050505050565b60006104833361076d565b8383604051602001610497939291906111ac565b604051602081830303815290604052905060006104b382610a6f565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16630c93e3bb34308b8b8b8b88336040518963ffffffff1660e01b815260040161051b97969594939291906111dc565b6000604051808303818588803b15801561053457600080fd5b505af1158015610548573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506105c791508b908b908b908b90889060040161124c565b600060405180830381600087803b1580156105e157600080fd5b505af11580156105f5573d6000803e3d6000fd5b505050505050505050505050565b60018054819061061290611118565b80601f016020809104026020016040519081016040528092919081815260200182805461063e90611118565b801561068b5780601f106106605761010080835404028352916020019161068b565b820191906000526020600020905b81548152906001019060200180831161066e57829003601f168201915b5050505050908060010180546106a090611118565b80601f01602080910402602001604051908101604052809291908181526020018280546106cc90611118565b80156107195780601f106106ee57610100808354040283529160200191610719565b820191906000526020600020905b8154815290600101906020018083116106fc57829003601f168201915b5050505050905082565b6000806107328385018561134f565b604080518082019091528281526020810182905291935091506001806107588582611402565b50602082015160018201906102b69082611402565b604051606082811b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660208301529060009060340160408051808303601f190181528282018252601083527f303132333435363738396162636465660000000000000000000000000000000060208401528151602a808252606082019093529093506000916020820181803683370190505090507f300000000000000000000000000000000000000000000000000000000000000081600081518110610836576108366114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110610899576108996114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060005b6014811015610a66578260048583815181106108e9576108e96114fe565b016020015182517fff0000000000000000000000000000000000000000000000000000000000000090911690911c60f81c908110610929576109296114fe565b01602001517fff00000000000000000000000000000000000000000000000000000000000000168261095c83600261155c565b610967906002611579565b81518110610977576109776114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350828482815181106109b9576109b96114fe565b602091010151815160f89190911c600f169081106109d9576109d96114fe565b01602001517fff000000000000000000000000000000000000000000000000000000000000001682610a0c83600261155c565b610a17906003611579565b81518110610a2757610a276114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610a5f8161158c565b90506108cb565b50949350505050565b6060600080610a7d3061076d565b84604051602001610a90939291906115c4565b60408051808303601f19018152600380845260808401909252925060009190816020015b6060815260200190600190039081610ab45790505090506040518060400160405280600c81526020017f736f757263655f636861696e000000000000000000000000000000000000000081525081600081518110610b1457610b146114fe565b60200260200101819052506040518060400160405280600e81526020017f736f757263655f6164647265737300000000000000000000000000000000000081525081600181518110610b6857610b686114fe565b60200260200101819052506040518060400160405280600781526020017f7061796c6f61640000000000000000000000000000000000000000000000000081525081600281518110610bbc57610bbc6114fe565b602090810291909101015260408051600380825260808201909252600091816020015b6060815260200190600190039081610bdf5790505090506040518060400160405280600681526020017f737472696e67000000000000000000000000000000000000000000000000000081525081600081518110610c3f57610c3f6114fe565b60200260200101819052506040518060400160405280600681526020017f737472696e67000000000000000000000000000000000000000000000000000081525081600181518110610c9357610c936114fe565b60200260200101819052506040518060400160405280600581526020017f627974657300000000000000000000000000000000000000000000000000000081525081600281518110610ce757610ce76114fe565b60200260200101819052506060828285604051602001610d09939291906116e1565b60408051601f19818403018152908290529150610d49907c010000000000000000000000000000000000000000000000000000000090839060200161174e565b604051602081830303815290604052945050505050919050565b60008083601f840112610d7557600080fd5b50813567ffffffffffffffff811115610d8d57600080fd5b602083019150836020828501011115610da557600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610dcb57600080fd5b8a35995060208b013567ffffffffffffffff80821115610dea57600080fd5b610df68e838f01610d63565b909b50995060408d0135915080821115610e0f57600080fd5b610e1b8e838f01610d63565b909950975060608d0135915080821115610e3457600080fd5b610e408e838f01610d63565b909750955060808d0135915080821115610e5957600080fd5b50610e668d828e01610d63565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b83811015610ea1578181015183820152602001610e89565b50506000910152565b60008151808452610ec2816020860160208601610e86565b601f01601f19169290920160200192915050565b602081526000610ee96020830184610eaa565b9392505050565b60008060008060008060006080888a031215610f0b57600080fd5b87359650602088013567ffffffffffffffff80821115610f2a57600080fd5b610f368b838c01610d63565b909850965060408a0135915080821115610f4f57600080fd5b610f5b8b838c01610d63565b909650945060608a0135915080821115610f7457600080fd5b50610f818a828b01610d63565b989b979a50959850939692959293505050565b60008060008060008060608789031215610fad57600080fd5b863567ffffffffffffffff80821115610fc557600080fd5b610fd18a838b01610d63565b90985096506020890135915080821115610fea57600080fd5b610ff68a838b01610d63565b9096509450604089013591508082111561100f57600080fd5b5061101c89828a01610d63565b979a9699509497509295939492505050565b6040815260006110416040830185610eaa565b82810360208401526110538185610eaa565b95945050505050565b8183823760009101908152919050565b818352818160208501375060006020828401015260006020601f19601f840116840101905092915050565b89815260c0602082015260006110b160c083018a8c61106c565b82810360408401526110c481898b61106c565b905086606084015282810360808401526110df81868861106c565b9150508260a08301529a9950505050505050505050565b60006020828403121561110857600080fd5b81518015158114610ee957600080fd5b600181811c9082168061112c57607f821691505b602082108103611165577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600061118560808301878961106c565b828103604084015261119881868861106c565b915050826060830152979650505050505050565b6040815260006111bf6040830186610eaa565b82810360208401526111d281858761106c565b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a0602084015261120d60a08401898b61106c565b838103604085015261122081888a61106c565b905083810360608501526112348187610eaa565b92505080841660808401525098975050505050505050565b60608152600061126060608301878961106c565b828103602084015261127381868861106c565b905082810360408401526112878185610eaa565b98975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f8301126112d357600080fd5b813567ffffffffffffffff808211156112ee576112ee611293565b604051601f8301601f19908116603f0116810190828211818310171561131657611316611293565b8160405283815286602085880101111561132f57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561136257600080fd5b823567ffffffffffffffff8082111561137a57600080fd5b611386868387016112c2565b9350602085013591508082111561139c57600080fd5b506113a9858286016112c2565b9150509250929050565b601f8211156113fd57600081815260208120601f850160051c810160208610156113da5750805b601f850160051c820191505b818110156113f9578281556001016113e6565b5050505b505050565b815167ffffffffffffffff81111561141c5761141c611293565b6114308161142a8454611118565b846113b3565b602080601f831160018114611483576000841561144d5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556113f9565b600085815260208120601f198616915b828110156114b257888601518255948401946001909101908401611493565b50858210156114ee57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176115735761157361152d565b92915050565b808201808211156115735761157361152d565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036115bd576115bd61152d565b5060010190565b6060815260008085546115d681611118565b80606086015260806001808416600081146115f8576001811461163057611661565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008516838901528284151560051b8901019550611661565b8a60005260208060002060005b868110156116585781548b820187015290840190820161163d565b8a018501975050505b505050505082810360208401526116788186610eaa565b905082810360408401526111d28185610eaa565b600081518084526020808501808196508360051b8101915082860160005b858110156116d45782840389526116c2848351610eaa565b988501989350908401906001016116aa565b5091979650505050505050565b60808152601360808201527f726563656976655f6d6573736167655f65766d0000000000000000000000000060a082015260c06020820152600061172860c083018661168c565b828103604084015261173a818661168c565b905082810360608401526111d28185610eaa565b7fffffffff000000000000000000000000000000000000000000000000000000008316815260008251611788816004850160208701610e86565b91909101600401939250505056fea2646970667358221220889273e6bea1307b8d9bac0f5ee0f7d320b227ded625d279374d9e4ebf1f931164736f6c63430008140033", - "opcodes": "PUSH1 0xC0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x1B1D CODESIZE SUB DUP1 PUSH3 0x1B1D DUP4 CODECOPY DUP2 ADD PUSH1 0x40 DUP2 SWAP1 MSTORE PUSH3 0x34 SWAP2 PUSH3 0xBB JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH3 0x5D JUMPI PUSH1 0x40 MLOAD PUSH4 0xE6C4247B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 DUP2 AND PUSH1 0x80 MSTORE DUP3 AND PUSH1 0xA0 MSTORE PUSH1 0x0 PUSH3 0x7E DUP3 DUP3 PUSH3 0x244 JUMP JUMPDEST POP POP POP POP PUSH3 0x310 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH3 0xA0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0xD1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0xDC DUP5 PUSH3 0x88 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 PUSH3 0xED DUP2 DUP7 ADD PUSH3 0x88 JUMP JUMPDEST PUSH1 0x40 DUP7 ADD MLOAD SWAP1 SWAP4 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH3 0x10B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP8 ADD SWAP2 POP DUP8 PUSH1 0x1F DUP4 ADD SLT PUSH3 0x120 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH3 0x135 JUMPI PUSH3 0x135 PUSH3 0xA5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP4 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH3 0x160 JUMPI PUSH3 0x160 PUSH3 0xA5 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP3 DUP2 MSTORE DUP11 DUP7 DUP5 DUP8 ADD ADD GT ISZERO PUSH3 0x179 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP4 POP JUMPDEST DUP3 DUP5 LT ISZERO PUSH3 0x19D JUMPI DUP5 DUP5 ADD DUP7 ADD MLOAD DUP2 DUP6 ADD DUP8 ADD MSTORE SWAP3 DUP6 ADD SWAP3 PUSH3 0x17E JUMP JUMPDEST PUSH1 0x0 DUP7 DUP5 DUP4 ADD ADD MSTORE DUP1 SWAP7 POP POP POP POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x1CA JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x1EB JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x23F JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x21A JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x23B JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x226 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x260 JUMPI PUSH3 0x260 PUSH3 0xA5 JUMP JUMPDEST PUSH3 0x278 DUP2 PUSH3 0x271 DUP5 SLOAD PUSH3 0x1B5 JUMP JUMPDEST DUP5 PUSH3 0x1F1 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x2B0 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x297 JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x23B JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x2E1 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x2C0 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x300 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH2 0x17CC PUSH3 0x351 PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x15C ADD MSTORE PUSH2 0x4B7 ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH1 0x87 ADD MSTORE DUP2 DUP2 PUSH2 0x1F8 ADD MSTORE DUP2 DUP2 PUSH2 0x3A8 ADD MSTORE PUSH2 0x587 ADD MSTORE PUSH2 0x17CC PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x70 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x117 JUMPI DUP1 PUSH4 0x5615264D EQ PUSH2 0x137 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x14A JUMPI DUP1 PUSH4 0xB2F6CBBE EQ PUSH2 0x17E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0x75 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0xD3 JUMPI DUP1 PUSH4 0x1C93B03A EQ PUSH2 0xF5 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x81 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA9 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xDF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF3 PUSH2 0xEE CALLDATASIZE PUSH1 0x4 PUSH2 0xDAC JUMP JUMPDEST PUSH2 0x1A1 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x101 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10A PUSH2 0x2C3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCA SWAP2 SWAP1 PUSH2 0xED6 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x123 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF3 PUSH2 0x132 CALLDATASIZE PUSH1 0x4 PUSH2 0xEF0 JUMP JUMPDEST PUSH2 0x351 JUMP JUMPDEST PUSH2 0xF3 PUSH2 0x145 CALLDATASIZE PUSH1 0x4 PUSH2 0xF94 JUMP JUMPDEST PUSH2 0x478 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x156 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA9 PUSH32 0x0 DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x193 PUSH2 0x603 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCA SWAP3 SWAP2 SWAP1 PUSH2 0x102E JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x1B3 SWAP3 SWAP2 SWAP1 PUSH2 0x105C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x23D SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x1097 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x25C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x10F6 JUMP JUMPDEST PUSH2 0x2B6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH2 0x2D0 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2FC SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x349 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x31E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x349 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x32C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x363 SWAP3 SWAP2 SWAP1 PUSH2 0x105C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x3E7 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x116B JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x406 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x42A SWAP2 SWAP1 PUSH2 0x10F6 JUMP JUMPDEST PUSH2 0x460 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x46E DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x723 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x483 CALLER PUSH2 0x76D JUMP JUMPDEST DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x497 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x11AC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH1 0x0 PUSH2 0x4B3 DUP3 PUSH2 0xA6F JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC93E3BB CALLVALUE ADDRESS DUP12 DUP12 DUP12 DUP12 DUP9 CALLER PUSH1 0x40 MLOAD DUP10 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x51B SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x11DC JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x534 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x548 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH32 0x1C92115F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP4 POP PUSH4 0x1C92115F SWAP3 POP PUSH2 0x5C7 SWAP2 POP DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x124C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5E1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x5F5 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP1 SLOAD DUP2 SWAP1 PUSH2 0x612 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x63E SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x68B JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x660 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x68B JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x66E JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 DUP1 PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x6A0 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x6CC SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x719 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x719 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x732 DUP4 DUP6 ADD DUP6 PUSH2 0x134F JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP3 SWAP1 MSTORE SWAP2 SWAP4 POP SWAP2 POP PUSH1 0x1 DUP1 PUSH2 0x758 DUP6 DUP3 PUSH2 0x1402 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH1 0x1 DUP3 ADD SWAP1 PUSH2 0x2B6 SWAP1 DUP3 PUSH2 0x1402 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x60 DUP3 DUP2 SHL PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000 AND PUSH1 0x20 DUP4 ADD MSTORE SWAP1 PUSH1 0x0 SWAP1 PUSH1 0x34 ADD PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB PUSH1 0x1F NOT ADD DUP2 MSTORE DUP3 DUP3 ADD DUP3 MSTORE PUSH1 0x10 DUP4 MSTORE PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0x20 DUP5 ADD MSTORE DUP2 MLOAD PUSH1 0x2A DUP1 DUP3 MSTORE PUSH1 0x60 DUP3 ADD SWAP1 SWAP4 MSTORE SWAP1 SWAP4 POP PUSH1 0x0 SWAP2 PUSH1 0x20 DUP3 ADD DUP2 DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP POP SWAP1 POP PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x836 JUMPI PUSH2 0x836 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH32 0x7800000000000000000000000000000000000000000000000000000000000000 DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x899 JUMPI PUSH2 0x899 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 JUMPDEST PUSH1 0x14 DUP2 LT ISZERO PUSH2 0xA66 JUMPI DUP3 PUSH1 0x4 DUP6 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x8E9 JUMPI PUSH2 0x8E9 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD DUP3 MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 SWAP1 SWAP2 AND SWAP1 SWAP2 SHR PUSH1 0xF8 SHR SWAP1 DUP2 LT PUSH2 0x929 JUMPI PUSH2 0x929 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 AND DUP3 PUSH2 0x95C DUP4 PUSH1 0x2 PUSH2 0x155C JUMP JUMPDEST PUSH2 0x967 SWAP1 PUSH1 0x2 PUSH2 0x1579 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x977 JUMPI PUSH2 0x977 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP3 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x9B9 JUMPI PUSH2 0x9B9 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 SWAP2 ADD ADD MLOAD DUP2 MLOAD PUSH1 0xF8 SWAP2 SWAP1 SWAP2 SHR PUSH1 0xF AND SWAP1 DUP2 LT PUSH2 0x9D9 JUMPI PUSH2 0x9D9 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 AND DUP3 PUSH2 0xA0C DUP4 PUSH1 0x2 PUSH2 0x155C JUMP JUMPDEST PUSH2 0xA17 SWAP1 PUSH1 0x3 PUSH2 0x1579 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0xA27 JUMPI PUSH2 0xA27 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH2 0xA5F DUP2 PUSH2 0x158C JUMP JUMPDEST SWAP1 POP PUSH2 0x8CB JUMP JUMPDEST POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0xA7D ADDRESS PUSH2 0x76D JUMP JUMPDEST DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xA90 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x15C4 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB PUSH1 0x1F NOT ADD DUP2 MSTORE PUSH1 0x3 DUP1 DUP5 MSTORE PUSH1 0x80 DUP5 ADD SWAP1 SWAP3 MSTORE SWAP3 POP PUSH1 0x0 SWAP2 SWAP1 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xAB4 JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xC DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x736F757263655F636861696E0000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xB14 JUMPI PUSH2 0xB14 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xE DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x736F757263655F61646472657373000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xB68 JUMPI PUSH2 0xB68 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x7061796C6F616400000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xBBC JUMPI PUSH2 0xBBC PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x40 DUP1 MLOAD PUSH1 0x3 DUP1 DUP3 MSTORE PUSH1 0x80 DUP3 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xBDF JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x737472696E670000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xC3F JUMPI PUSH2 0xC3F PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x737472696E670000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xC93 JUMPI PUSH2 0xC93 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x6279746573000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xCE7 JUMPI PUSH2 0xCE7 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x60 DUP3 DUP3 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xD09 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x16E1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1F NOT DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP1 DUP3 SWAP1 MSTORE SWAP2 POP PUSH2 0xD49 SWAP1 PUSH29 0x100000000000000000000000000000000000000000000000000000000 SWAP1 DUP4 SWAP1 PUSH1 0x20 ADD PUSH2 0x174E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP5 POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xD75 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0xDA5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xDCB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xDEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xDF6 DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE0F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xE1B DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE34 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xE40 DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE59 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xE66 DUP14 DUP3 DUP15 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xEA1 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xE89 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xEC2 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xE86 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xEE9 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xEAA JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xF0B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xF2A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF36 DUP12 DUP4 DUP13 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xF4F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF5B DUP12 DUP4 DUP13 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xF74 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF81 DUP11 DUP3 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP8 DUP10 SUB SLT ISZERO PUSH2 0xFAD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xFC5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFD1 DUP11 DUP4 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x20 DUP10 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xFEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFF6 DUP11 DUP4 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x40 DUP10 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x100F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x101C DUP10 DUP3 DUP11 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP8 SWAP11 SWAP7 SWAP10 POP SWAP5 SWAP8 POP SWAP3 SWAP6 SWAP4 SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP2 MSTORE PUSH1 0x0 PUSH2 0x1041 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0xEAA JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1053 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x10B1 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x10C4 DUP2 DUP10 DUP12 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x10DF DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1108 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xEE9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x112C JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1165 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1185 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x1198 DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP2 MSTORE PUSH1 0x0 PUSH2 0x11BF PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0xEAA JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 DUP8 PUSH2 0x106C JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP11 AND DUP4 MSTORE PUSH1 0xA0 PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x120D PUSH1 0xA0 DUP5 ADD DUP10 DUP12 PUSH2 0x106C JUMP JUMPDEST DUP4 DUP2 SUB PUSH1 0x40 DUP6 ADD MSTORE PUSH2 0x1220 DUP2 DUP9 DUP11 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP4 DUP2 SUB PUSH1 0x60 DUP6 ADD MSTORE PUSH2 0x1234 DUP2 DUP8 PUSH2 0xEAA JUMP JUMPDEST SWAP3 POP POP DUP1 DUP5 AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH2 0x1260 PUSH1 0x60 DUP4 ADD DUP8 DUP10 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1273 DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x1287 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x12D3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x12EE JUMPI PUSH2 0x12EE PUSH2 0x1293 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x1316 JUMPI PUSH2 0x1316 PUSH2 0x1293 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x132F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1362 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x137A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1386 DUP7 DUP4 DUP8 ADD PUSH2 0x12C2 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x139C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x13A9 DUP6 DUP3 DUP7 ADD PUSH2 0x12C2 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x13FD JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x13DA JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x13F9 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x13E6 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x141C JUMPI PUSH2 0x141C PUSH2 0x1293 JUMP JUMPDEST PUSH2 0x1430 DUP2 PUSH2 0x142A DUP5 SLOAD PUSH2 0x1118 JUMP JUMPDEST DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x1483 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x144D JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x13F9 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x14B2 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x1493 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x14EE JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0x1573 JUMPI PUSH2 0x1573 PUSH2 0x152D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH2 0x1573 JUMPI PUSH2 0x1573 PUSH2 0x152D JUMP JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x15BD JUMPI PUSH2 0x15BD PUSH2 0x152D JUMP JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 DUP1 DUP6 SLOAD PUSH2 0x15D6 DUP2 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x60 DUP7 ADD MSTORE PUSH1 0x80 PUSH1 0x1 DUP1 DUP5 AND PUSH1 0x0 DUP2 EQ PUSH2 0x15F8 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1630 JUMPI PUSH2 0x1661 JUMP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 DUP6 AND DUP4 DUP10 ADD MSTORE DUP3 DUP5 ISZERO ISZERO PUSH1 0x5 SHL DUP10 ADD ADD SWAP6 POP PUSH2 0x1661 JUMP JUMPDEST DUP11 PUSH1 0x0 MSTORE PUSH1 0x20 DUP1 PUSH1 0x0 KECCAK256 PUSH1 0x0 JUMPDEST DUP7 DUP2 LT ISZERO PUSH2 0x1658 JUMPI DUP2 SLOAD DUP12 DUP3 ADD DUP8 ADD MSTORE SWAP1 DUP5 ADD SWAP1 DUP3 ADD PUSH2 0x163D JUMP JUMPDEST DUP11 ADD DUP6 ADD SWAP8 POP POP POP JUMPDEST POP POP POP POP POP DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1678 DUP2 DUP7 PUSH2 0xEAA JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x20 DUP1 DUP6 ADD DUP1 DUP2 SWAP7 POP DUP4 PUSH1 0x5 SHL DUP2 ADD SWAP2 POP DUP3 DUP7 ADD PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x16D4 JUMPI DUP3 DUP5 SUB DUP10 MSTORE PUSH2 0x16C2 DUP5 DUP4 MLOAD PUSH2 0xEAA JUMP JUMPDEST SWAP9 DUP6 ADD SWAP9 SWAP4 POP SWAP1 DUP5 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x16AA JUMP JUMPDEST POP SWAP2 SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x80 DUP2 MSTORE PUSH1 0x13 PUSH1 0x80 DUP3 ADD MSTORE PUSH32 0x726563656976655F6D6573736167655F65766D00000000000000000000000000 PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1728 PUSH1 0xC0 DUP4 ADD DUP7 PUSH2 0x168C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x173A DUP2 DUP7 PUSH2 0x168C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 AND DUP2 MSTORE PUSH1 0x0 DUP3 MLOAD PUSH2 0x1788 DUP2 PUSH1 0x4 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0xE86 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD PUSH1 0x4 ADD SWAP4 SWAP3 POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP9 SWAP3 PUSH20 0xE6BEA1307B8D9BAC0F5EE0F7D320B227DED625D2 PUSH26 0x374D9E4EBF1F931164736F6C6343000814003300000000000000 ", - "sourceMap": "527:3163:15:-:0;;;927:228;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1052:8;-1:-1:-1;;;;;342:22:0;;338:51;;373:16;;-1:-1:-1;;;373:16:0;;;;;;;;;;;338:51;-1:-1:-1;;;;;400:34:0;;;;;1072:44:15;::::1;;::::0;1126:9:::1;:22;1138:10:::0;1126:9;:22:::1;:::i;:::-;;927:228:::0;;;527:3163;;14:177:16;93:13;;-1:-1:-1;;;;;135:31:16;;125:42;;115:70;;181:1;178;171:12;115:70;14:177;;;:::o;196:127::-;257:10;252:3;248:20;245:1;238:31;288:4;285:1;278:15;312:4;309:1;302:15;328:1212;426:6;434;442;495:2;483:9;474:7;470:23;466:32;463:52;;;511:1;508;501:12;463:52;534:40;564:9;534:40;:::i;:::-;524:50;;593:2;614:49;659:2;648:9;644:18;614:49;:::i;:::-;707:2;692:18;;686:25;604:59;;-1:-1:-1;;;;;;760:14:16;;;757:34;;;787:1;784;777:12;757:34;825:6;814:9;810:22;800:32;;870:7;863:4;859:2;855:13;851:27;841:55;;892:1;889;882:12;841:55;921:2;915:9;943:2;939;936:10;933:36;;;949:18;;:::i;:::-;1024:2;1018:9;992:2;1078:13;;-1:-1:-1;;1074:22:16;;;1098:2;1070:31;1066:40;1054:53;;;1122:18;;;1142:22;;;1119:46;1116:72;;;1168:18;;:::i;:::-;1208:10;1204:2;1197:22;1243:2;1235:6;1228:18;1283:7;1278:2;1273;1269;1265:11;1261:20;1258:33;1255:53;;;1304:1;1301;1294:12;1255:53;1326:1;1317:10;;1336:129;1350:2;1347:1;1344:9;1336:129;;;1438:10;;;1434:19;;1428:26;1407:14;;;1403:23;;1396:59;1361:10;;;;1336:129;;;1507:1;1502:2;1497;1489:6;1485:15;1481:24;1474:35;1528:6;1518:16;;;;;;;;328:1212;;;;;:::o;1545:380::-;1624:1;1620:12;;;;1667;;;1688:61;;1742:4;1734:6;1730:17;1720:27;;1688:61;1795:2;1787:6;1784:14;1764:18;1761:38;1758:161;;1841:10;1836:3;1832:20;1829:1;1822:31;1876:4;1873:1;1866:15;1904:4;1901:1;1894:15;1758:161;;1545:380;;;:::o;2056:545::-;2158:2;2153:3;2150:11;2147:448;;;2194:1;2219:5;2215:2;2208:17;2264:4;2260:2;2250:19;2334:2;2322:10;2318:19;2315:1;2311:27;2305:4;2301:38;2370:4;2358:10;2355:20;2352:47;;;-1:-1:-1;2393:4:16;2352:47;2448:2;2443:3;2439:12;2436:1;2432:20;2426:4;2422:31;2412:41;;2503:82;2521:2;2514:5;2511:13;2503:82;;;2566:17;;;2547:1;2536:13;2503:82;;;2507:3;;;2147:448;2056:545;;;:::o;2777:1352::-;2897:10;;-1:-1:-1;;;;;2919:30:16;;2916:56;;;2952:18;;:::i;:::-;2981:97;3071:6;3031:38;3063:4;3057:11;3031:38;:::i;:::-;3025:4;2981:97;:::i;:::-;3133:4;;3197:2;3186:14;;3214:1;3209:663;;;;3916:1;3933:6;3930:89;;;-1:-1:-1;3985:19:16;;;3979:26;3930:89;-1:-1:-1;;2734:1:16;2730:11;;;2726:24;2722:29;2712:40;2758:1;2754:11;;;2709:57;4032:81;;3179:944;;3209:663;2003:1;1996:14;;;2040:4;2027:18;;-1:-1:-1;;3245:20:16;;;3363:236;3377:7;3374:1;3371:14;3363:236;;;3466:19;;;3460:26;3445:42;;3558:27;;;;3526:1;3514:14;;;;3393:19;;3363:236;;;3367:3;3627:6;3618:7;3615:19;3612:201;;;3688:19;;;3682:26;-1:-1:-1;;3771:1:16;3767:14;;;3783:3;3763:24;3759:37;3755:42;3740:58;3725:74;;3612:201;-1:-1:-1;;;;;3859:1:16;3843:14;;;3839:22;3826:36;;-1:-1:-1;2777:1352:16:o;:::-;527:3163:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" - }, - "deployedBytecode": { - "functionDebugData": { - "@_encodePayloadToCosmWasm_2318": { - "entryPoint": 2671, - "id": 2318, - "parameterSlots": 1, - "returnSlots": 1 - }, - "@_executeWithToken_136": { - "entryPoint": null, - "id": 136, - "parameterSlots": 9, - "returnSlots": 0 - }, - "@_execute_2350": { - "entryPoint": 1827, - "id": 2350, - "parameterSlots": 6, - "returnSlots": 0 - }, - "@chainName_2133": { - "entryPoint": 707, - "id": 2133, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@executeWithToken_112": { - "entryPoint": 417, - "id": 112, - "parameterSlots": 10, - "returnSlots": 0 - }, - "@execute_68": { - "entryPoint": 849, - "id": 68, - "parameterSlots": 7, - "returnSlots": 0 - }, - "@gasService_2131": { - "entryPoint": null, - "id": 2131, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@gateway_10": { - "entryPoint": null, - "id": 10, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@send_2216": { - "entryPoint": 1144, - "id": 2216, - "parameterSlots": 6, - "returnSlots": 0 - }, - "@storedMessage_2141": { - "entryPoint": 1539, - "id": 2141, - "parameterSlots": 0, - "returnSlots": 0 - }, - "@toString_1496": { - "entryPoint": 1901, - "id": 1496, - "parameterSlots": 1, - "returnSlots": 1 - }, - "abi_decode_string": { - "entryPoint": 4802, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_decode_string_calldata": { - "entryPoint": 3427, - "id": null, - "parameterSlots": 2, - "returnSlots": 2 - }, - "abi_decode_tuple_t_bool_fromMemory": { - "entryPoint": 4342, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr": { - "entryPoint": 3824, - "id": null, - "parameterSlots": 2, - "returnSlots": 7 - }, - "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256": { - "entryPoint": 3500, - "id": null, - "parameterSlots": 2, - "returnSlots": 10 - }, - "abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptrt_string_calldata_ptr": { - "entryPoint": 3988, - "id": null, - "parameterSlots": 2, - "returnSlots": 6 - }, - "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr": { - "entryPoint": 4943, - "id": null, - "parameterSlots": 2, - "returnSlots": 2 - }, - "abi_encode_array_string_dyn": { - "entryPoint": 5772, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_string": { - "entryPoint": 3754, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_string_calldata": { - "entryPoint": 4204, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_address__to_t_address__nonPadded_inplace_fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": 5966, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": { - "entryPoint": 4188, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed": { - "entryPoint": 4572, - "id": null, - "parameterSlots": 8, - "returnSlots": 1 - }, - "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed": { - "entryPoint": 4459, - "id": null, - "parameterSlots": 7, - "returnSlots": 1 - }, - "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed": { - "entryPoint": 4247, - "id": null, - "parameterSlots": 10, - "returnSlots": 1 - }, - "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { - "entryPoint": 4684, - "id": null, - "parameterSlots": 6, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { - "entryPoint": 3798, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_memory_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed": { - "entryPoint": 4524, - "id": null, - "parameterSlots": 4, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed": { - "entryPoint": 4142, - "id": null, - "parameterSlots": 3, - "returnSlots": 1 - }, - "abi_encode_tuple_t_string_storage_t_string_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { - "entryPoint": 5572, - "id": null, - "parameterSlots": 4, - "returnSlots": 1 - }, - "abi_encode_tuple_t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed": { - "entryPoint": 5857, - "id": null, - "parameterSlots": 4, - "returnSlots": 1 - }, - "array_dataslot_string_storage": { - "entryPoint": null, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "checked_add_t_uint256": { - "entryPoint": 5497, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "checked_mul_t_uint256": { - "entryPoint": 5468, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "clean_up_bytearray_end_slots_string_storage": { - "entryPoint": 5043, - "id": null, - "parameterSlots": 3, - "returnSlots": 0 - }, - "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { - "entryPoint": 5122, - "id": null, - "parameterSlots": 2, - "returnSlots": 0 - }, - "copy_memory_to_memory_with_cleanup": { - "entryPoint": 3718, - "id": null, - "parameterSlots": 3, - "returnSlots": 0 - }, - "extract_byte_array_length": { - "entryPoint": 4376, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "extract_used_part_and_set_length_of_short_byte_array": { - "entryPoint": null, - "id": null, - "parameterSlots": 2, - "returnSlots": 1 - }, - "increment_t_uint256": { - "entryPoint": 5516, - "id": null, - "parameterSlots": 1, - "returnSlots": 1 - }, - "panic_error_0x11": { - "entryPoint": 5421, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - }, - "panic_error_0x32": { - "entryPoint": 5374, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - }, - "panic_error_0x41": { - "entryPoint": 4755, - "id": null, - "parameterSlots": 0, - "returnSlots": 0 - } - }, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:18576:16", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:16", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "137:125:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "147:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "159:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "170:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "155:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "155:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "147:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "189:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "204:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "212:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "200:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "200:55:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "182:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "182:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "182:74:16" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "106:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "117:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "128:4:16", - "type": "" - } - ], - "src": "14:248:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "340:275:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "389:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "398:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "401:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "391:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "391:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "391:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "368:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "376:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "364:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "364:17:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "383:3:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "360:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "360:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "353:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "353:35:16" - }, - "nodeType": "YulIf", - "src": "350:55:16" - }, - { - "nodeType": "YulAssignment", - "src": "414:30:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "437:6:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "424:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "424:20:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "414:6:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "487:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "496:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "499:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "489:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "489:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "489:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "459:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "467:18:16", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "456:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "456:30:16" - }, - "nodeType": "YulIf", - "src": "453:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "512:29:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "528:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "536:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "524:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "524:17:16" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "512:8:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "593:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "602:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "605:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "595:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "595:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "595:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "564:6:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "572:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "560:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "560:19:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "581:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "556:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "556:30:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "588:3:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "553:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "553:39:16" - }, - "nodeType": "YulIf", - "src": "550:59:16" - } - ] - }, - "name": "abi_decode_string_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "303:6:16", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "311:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "319:8:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "329:6:16", - "type": "" - } - ], - "src": "267:348:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "854:1203:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "901:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "910:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "913:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "903:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "903:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "903:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "875:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "884:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "871:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "871:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "896:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "867:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "867:33:16" - }, - "nodeType": "YulIf", - "src": "864:53:16" - }, - { - "nodeType": "YulAssignment", - "src": "926:33:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "949:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "936:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "936:23:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "926:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "968:46:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "999:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1010:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "995:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "995:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "982:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "982:32:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "972:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1023:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1033:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1027:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1078:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1087:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1090:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1080:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1080:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1080:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1066:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1074:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1063:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1063:14:16" - }, - "nodeType": "YulIf", - "src": "1060:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1103:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1160:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1171:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1156:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1156:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1180:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1129:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1129:59:16" - }, - "variables": [ - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "1107:8:16", - "type": "" - }, - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "1117:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1197:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "1207:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1197:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1224:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "1234:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1224:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1251:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1284:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1295:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1280:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1280:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1267:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1267:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "1255:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1328:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1337:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1340:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1330:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1330:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1330:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "1314:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1324:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1311:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1311:16:16" - }, - "nodeType": "YulIf", - "src": "1308:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1353:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1410:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "1421:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1406:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1406:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1432:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1379:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1379:61:16" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "1357:8:16", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "1367:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1449:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "1459:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "1449:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1476:18:16", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "1486:8:16" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "1476:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1503:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1536:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1547:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1532:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1532:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1519:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1519:32:16" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "1507:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1580:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1589:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1592:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1582:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1582:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1582:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "1566:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1576:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1563:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1563:16:16" - }, - "nodeType": "YulIf", - "src": "1560:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1605:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1662:9:16" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "1673:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1658:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1658:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1684:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1631:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1631:61:16" - }, - "variables": [ - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "1609:8:16", - "type": "" - }, - { - "name": "value6_1", - "nodeType": "YulTypedName", - "src": "1619:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1701:18:16", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "1711:8:16" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "1701:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1728:18:16", - "value": { - "name": "value6_1", - "nodeType": "YulIdentifier", - "src": "1738:8:16" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "1728:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1755:49:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1788:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1799:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1784:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1784:19:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1771:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "1771:33:16" - }, - "variables": [ - { - "name": "offset_3", - "nodeType": "YulTypedName", - "src": "1759:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1833:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1842:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1845:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1835:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "1835:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "1835:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "1819:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1829:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1816:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "1816:16:16" - }, - "nodeType": "YulIf", - "src": "1813:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1858:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1915:9:16" - }, - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "1926:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1911:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "1911:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1937:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "1884:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "1884:61:16" - }, - "variables": [ - { - "name": "value7_1", - "nodeType": "YulTypedName", - "src": "1862:8:16", - "type": "" - }, - { - "name": "value8_1", - "nodeType": "YulTypedName", - "src": "1872:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1954:18:16", - "value": { - "name": "value7_1", - "nodeType": "YulIdentifier", - "src": "1964:8:16" - }, - "variableNames": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "1954:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1981:18:16", - "value": { - "name": "value8_1", - "nodeType": "YulIdentifier", - "src": "1991:8:16" - }, - "variableNames": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "1981:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2008:43:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2035:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2046:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2031:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2031:19:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2018:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "2018:33:16" - }, - "variableNames": [ - { - "name": "value9", - "nodeType": "YulIdentifier", - "src": "2008:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "748:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "759:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "771:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "779:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "787:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "795:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "803:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "811:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "819:6:16", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "827:6:16", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "835:6:16", - "type": "" - }, - { - "name": "value9", - "nodeType": "YulTypedName", - "src": "843:6:16", - "type": "" - } - ], - "src": "620:1437:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2128:184:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2138:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2147:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "2142:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2207:63:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2232:3:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2237:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2228:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2228:11:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "2251:3:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2256:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2247:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2247:11:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2241:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "2241:18:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2221:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2221:39:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2221:39:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2168:1:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2171:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2165:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "2165:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "2179:19:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2181:15:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2190:1:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2193:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2186:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2186:10:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2181:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "2161:3:16", - "statements": [] - }, - "src": "2157:113:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2290:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2295:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2286:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2286:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2304:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2279:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2279:27:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2279:27:16" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "2106:3:16", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "2111:3:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2116:6:16", - "type": "" - } - ], - "src": "2062:250:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2367:280:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2377:26:16", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2397:5:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2391:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "2391:12:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2381:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2419:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2424:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2412:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2412:19:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2412:19:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2479:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2486:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2475:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2475:16:16" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2497:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2502:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2493:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2493:14:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2509:6:16" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "2440:34:16" - }, - "nodeType": "YulFunctionCall", - "src": "2440:76:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2440:76:16" - }, - { - "nodeType": "YulAssignment", - "src": "2525:116:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2540:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2553:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2561:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2549:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2549:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2566:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2545:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2545:88:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2536:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2536:98:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2636:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2532:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2532:109:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2525:3:16" - } - ] - } - ] - }, - "name": "abi_encode_string", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2344:5:16", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "2351:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2359:3:16", - "type": "" - } - ], - "src": "2317:330:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2773:99:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2790:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2801:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2783:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "2783:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "2783:21:16" - }, - { - "nodeType": "YulAssignment", - "src": "2813:53:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2839:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2851:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2862:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2847:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "2847:18:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "2821:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "2821:45:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2813:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2742:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2753:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2764:4:16", - "type": "" - } - ], - "src": "2652:220:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3057:898:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3104:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3113:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3116:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3106:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3106:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3106:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3078:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3087:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3074:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3074:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3099:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3070:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3070:33:16" - }, - "nodeType": "YulIf", - "src": "3067:53:16" - }, - { - "nodeType": "YulAssignment", - "src": "3129:33:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3152:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3139:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3139:23:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3129:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3171:46:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3202:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3213:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3198:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3198:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3185:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3185:32:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3175:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3226:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3236:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3230:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3281:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3290:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3293:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3283:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3283:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3283:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3269:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3277:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3266:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3266:14:16" - }, - "nodeType": "YulIf", - "src": "3263:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3306:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3363:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3374:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3359:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3359:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3383:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "3332:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "3332:59:16" - }, - "variables": [ - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "3310:8:16", - "type": "" - }, - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "3320:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3400:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "3410:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3400:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3427:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "3437:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "3427:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3454:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3487:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3498:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3483:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3483:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3470:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3470:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "3458:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3531:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3540:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3543:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3533:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3533:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3533:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3517:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3527:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3514:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3514:16:16" - }, - "nodeType": "YulIf", - "src": "3511:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3556:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3613:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3624:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3609:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3609:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3635:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "3582:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "3582:61:16" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "3560:8:16", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "3570:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3652:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "3662:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "3652:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3679:18:16", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "3689:8:16" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "3679:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3706:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3739:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3750:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3735:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3735:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3722:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "3722:32:16" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "3710:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3783:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3792:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3795:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3785:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "3785:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "3785:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3769:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3779:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3766:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "3766:16:16" - }, - "nodeType": "YulIf", - "src": "3763:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3808:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3865:9:16" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3876:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3861:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "3861:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3887:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "3834:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "3834:61:16" - }, - "variables": [ - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "3812:8:16", - "type": "" - }, - { - "name": "value6_1", - "nodeType": "YulTypedName", - "src": "3822:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3904:18:16", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "3914:8:16" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "3904:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3931:18:16", - "value": { - "name": "value6_1", - "nodeType": "YulIdentifier", - "src": "3941:8:16" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "3931:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2975:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2986:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2998:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3006:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "3014:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "3022:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "3030:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "3038:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "3046:6:16", - "type": "" - } - ], - "src": "2877:1078:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4124:846:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4170:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4179:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4182:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4172:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4172:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4172:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4145:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4154:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4141:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4141:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4166:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4137:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4137:32:16" - }, - "nodeType": "YulIf", - "src": "4134:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4195:37:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4222:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4209:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "4209:23:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4199:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4241:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4251:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "4245:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4296:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4305:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4308:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4298:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4298:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4298:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4284:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4292:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4281:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4281:14:16" - }, - "nodeType": "YulIf", - "src": "4278:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4321:85:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4378:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4389:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4374:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4374:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4398:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "4347:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "4347:59:16" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "4325:8:16", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "4335:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4415:18:16", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "4425:8:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4415:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4442:18:16", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "4452:8:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "4442:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4469:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4502:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4513:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4498:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4498:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4485:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "4485:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "4473:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4546:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4555:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4558:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4548:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4548:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4548:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4532:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4542:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4529:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4529:16:16" - }, - "nodeType": "YulIf", - "src": "4526:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4571:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4628:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4639:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4624:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4624:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4650:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "4597:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "4597:61:16" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "4575:8:16", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "4585:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4667:18:16", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "4677:8:16" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "4667:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4694:18:16", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "4704:8:16" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "4694:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4721:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4754:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4765:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4750:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4750:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4737:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "4737:32:16" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "4725:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4798:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4807:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4810:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4800:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "4800:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "4800:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "4784:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4794:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4781:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "4781:16:16" - }, - "nodeType": "YulIf", - "src": "4778:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4823:87:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4880:9:16" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "4891:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4876:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "4876:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4902:7:16" - } - ], - "functionName": { - "name": "abi_decode_string_calldata", - "nodeType": "YulIdentifier", - "src": "4849:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "4849:61:16" - }, - "variables": [ - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "4827:8:16", - "type": "" - }, - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "4837:8:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4919:18:16", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "4929:8:16" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "4919:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4946:18:16", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "4956:8:16" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "4946:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptrt_string_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4050:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4061:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4073:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "4081:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "4089:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "4097:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "4105:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "4113:6:16", - "type": "" - } - ], - "src": "3960:1010:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5101:125:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "5111:26:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5123:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5134:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5119:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5119:18:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5111:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5153:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5168:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5176:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5164:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5164:55:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5146:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5146:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5146:74:16" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5070:9:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5081:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5092:4:16", - "type": "" - } - ], - "src": "4975:251:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5400:214:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5417:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5428:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5410:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5410:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5410:21:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5440:59:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5472:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5484:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5495:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5480:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5480:18:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "5454:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "5454:45:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "5444:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5519:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5530:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5515:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5515:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "5539:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5547:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5535:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5535:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5508:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5508:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5508:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "5567:41:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5593:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "5601:6:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "5575:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "5575:33:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5567:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5361:9:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "5372:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5380:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5391:4:16", - "type": "" - } - ], - "src": "5231:383:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5766:124:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5789:3:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5794:6:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5802:6:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "5776:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "5776:33:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5776:33:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5818:26:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5832:3:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5837:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5828:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "5828:16:16" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "5822:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5860:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5864:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5853:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5853:13:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5853:13:16" - }, - { - "nodeType": "YulAssignment", - "src": "5875:9:16", - "value": { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5882:2:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "5875:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5734:3:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "5739:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5747:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "5758:3:16", - "type": "" - } - ], - "src": "5619:271:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5962:259:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5979:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5984:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5972:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "5972:19:16" - }, - "nodeType": "YulExpressionStatement", - "src": "5972:19:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6017:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6022:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6013:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6013:14:16" - }, - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "6029:5:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6036:6:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "6000:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "6000:43:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6000:43:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6067:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6072:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6063:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6063:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6081:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6059:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6059:27:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6088:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6052:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6052:38:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6052:38:16" - }, - { - "nodeType": "YulAssignment", - "src": "6099:116:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "6114:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "6127:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6135:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6123:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6123:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6140:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6119:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6119:88:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6110:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6110:98:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6210:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6106:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6106:109:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6099:3:16" - } - ] - } - ] - }, - "name": "abi_encode_string_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "5931:5:16", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "5938:6:16", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5946:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "5954:3:16", - "type": "" - } - ], - "src": "5895:326:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6557:513:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6574:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6585:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6567:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6567:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6567:25:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6612:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6623:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6608:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6608:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6628:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6601:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6601:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6601:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6641:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6682:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "6690:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6702:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6713:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6698:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6698:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "6655:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "6655:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "6645:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6738:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6749:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6734:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6734:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "6758:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6766:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6754:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6754:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6727:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6727:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6727:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6786:64:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "6827:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "6835:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "6843:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "6800:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "6800:50:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "6790:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6870:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6881:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6866:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6866:18:16" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "6886:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6859:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6859:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6859:34:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6913:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6924:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6909:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6909:19:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "6934:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6942:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6930:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "6930:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6902:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "6902:51:16" - }, - "nodeType": "YulExpressionStatement", - "src": "6902:51:16" - }, - { - "nodeType": "YulAssignment", - "src": "6962:58:16", - "value": { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "6997:6:16" - }, - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "7005:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "7013:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "6970:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "6970:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6962:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7040:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7051:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7036:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7036:19:16" - }, - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "7057:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7029:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7029:35:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7029:35:16" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6462:9:16", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "6473:6:16", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "6481:6:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "6489:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "6497:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "6505:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "6513:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "6521:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6529:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6537:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6548:4:16", - "type": "" - } - ], - "src": "6226:844:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7153:199:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "7199:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7208:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7211:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7201:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7201:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7201:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7174:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7183:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7170:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7170:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7195:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "7166:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7166:32:16" - }, - "nodeType": "YulIf", - "src": "7163:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7224:29:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7243:9:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "7237:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "7237:16:16" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7228:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7306:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7315:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7318:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7308:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7308:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7308:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7275:5:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7296:5:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7289:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7289:13:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7282:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7282:21:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "7272:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "7272:32:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7265:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7265:40:16" - }, - "nodeType": "YulIf", - "src": "7262:60:16" - }, - { - "nodeType": "YulAssignment", - "src": "7331:15:16", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7341:5:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7331:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bool_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7119:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "7130:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7142:6:16", - "type": "" - } - ], - "src": "7075:277:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7412:382:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7422:22:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7436:1:16", - "type": "", - "value": "1" - }, - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "7439:4:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "7432:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7432:12:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7422:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7453:38:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "7483:4:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7489:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7479:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7479:12:16" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "7457:18:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7530:31:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7532:27:16", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7546:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7554:4:16", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7542:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "7542:17:16" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7532:6:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "7510:18:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7503:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7503:26:16" - }, - "nodeType": "YulIf", - "src": "7500:61:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7620:168:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7641:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7644:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7634:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7634:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7634:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7742:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7745:4:16", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7735:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7735:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7735:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7770:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7773:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7763:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "7763:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "7763:15:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "7576:18:16" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7599:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7607:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "7596:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "7596:14:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "7573:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "7573:38:16" - }, - "nodeType": "YulIf", - "src": "7570:218:16" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "7392:4:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7401:6:16", - "type": "" - } - ], - "src": "7357:437:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8044:336:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8061:9:16" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8072:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8054:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8054:25:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8054:25:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8099:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8110:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8095:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8095:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8115:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8088:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8088:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8088:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8128:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "8169:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "8177:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8189:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8200:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8185:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8185:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "8142:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "8142:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "8132:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8225:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8236:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8221:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8221:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "8245:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8253:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8241:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8241:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8214:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8214:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8214:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "8273:58:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "8308:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "8316:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "8324:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "8281:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "8281:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8273:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8351:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8362:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8347:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8347:18:16" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "8367:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8340:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8340:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8340:34:16" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7973:9:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "7984:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "7992:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "8000:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "8008:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8016:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8024:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8035:4:16", - "type": "" - } - ], - "src": "7799:581:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8564:231:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8581:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8592:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8574:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8574:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8574:21:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8604:59:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8636:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8648:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8659:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8644:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8644:18:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "8618:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "8618:45:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "8608:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8683:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8694:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8679:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8679:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "8703:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8711:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8699:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "8699:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8672:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "8672:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "8672:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "8731:58:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "8766:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "8774:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "8782:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "8739:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "8739:50:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8731:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8517:9:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "8528:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8536:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8544:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8555:4:16", - "type": "" - } - ], - "src": "8385:410:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9091:531:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9101:52:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9111:42:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "9105:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9169:9:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9184:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9192:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "9180:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9180:15:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9162:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9162:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9162:34:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9216:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9227:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9212:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9212:18:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9232:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9205:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9205:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9205:31:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9245:77:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9286:6:16" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "9294:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9306:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9317:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9302:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9302:19:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "9259:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "9259:63:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "9249:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9342:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9353:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9338:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9338:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "9362:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9370:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9358:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9358:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9331:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9331:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9331:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9390:64:16", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "9431:6:16" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "9439:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "9447:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "9404:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "9404:50:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "9394:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9474:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9485:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9470:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9470:18:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "9494:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9502:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9490:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9490:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9463:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9463:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9463:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "9522:41:16", - "value": { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "9548:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "9556:6:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "9530:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "9530:33:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9522:4:16" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9583:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9594:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9579:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9579:19:16" - }, - { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "9604:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9612:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "9600:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9600:15:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9572:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9572:44:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9572:44:16" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9012:9:16", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "9023:6:16", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "9031:6:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "9039:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "9047:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "9055:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9063:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9071:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9082:4:16", - "type": "" - } - ], - "src": "8800:822:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9862:363:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9879:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9890:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9872:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9872:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9872:21:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9902:76:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9943:6:16" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9951:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9963:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9974:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9959:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9959:18:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "9916:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "9916:62:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "9906:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9998:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10009:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9994:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "9994:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10018:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10026:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10014:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10014:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9987:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "9987:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "9987:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10046:64:16", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "10087:6:16" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "10095:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10103:6:16" - } - ], - "functionName": { - "name": "abi_encode_string_calldata", - "nodeType": "YulIdentifier", - "src": "10060:26:16" - }, - "nodeType": "YulFunctionCall", - "src": "10060:50:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "10050:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10130:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10141:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10126:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10126:18:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "10150:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10158:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10146:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10146:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10119:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10119:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10119:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "10178:41:16", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "10204:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "10212:6:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "10186:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "10186:33:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10178:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9799:9:16", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "9810:6:16", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "9818:6:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "9826:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9834:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9842:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9853:4:16", - "type": "" - } - ], - "src": "9627:598:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10262:152:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10279:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10282:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10272:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10272:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10272:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10376:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10379:4:16", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10369:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10369:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10369:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10400:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10403:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10393:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10393:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10393:15:16" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "10230:184:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10472:725:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10521:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10530:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10533:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10523:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10523:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10523:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10500:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10508:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10496:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10496:17:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "10515:3:16" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "10492:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10492:27:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10485:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10485:35:16" - }, - "nodeType": "YulIf", - "src": "10482:55:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10546:30:16", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10569:6:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10556:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "10556:20:16" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "10550:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10585:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10595:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "10589:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10636:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "10638:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "10638:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10638:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10628:2:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10632:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10625:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "10625:10:16" - }, - "nodeType": "YulIf", - "src": "10622:36:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10667:76:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10677:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "10671:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10752:23:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10772:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10766:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "10766:9:16" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "10756:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10784:71:16", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "10806:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10830:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10834:4:16", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10826:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10826:13:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "10841:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10822:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10822:22:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10846:2:16", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10818:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10818:31:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "10851:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10814:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10814:40:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10802:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "10802:53:16" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "10788:10:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10914:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "10916:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "10916:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10916:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "10873:10:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10885:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10870:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "10870:18:16" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "10893:10:16" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "10905:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10890:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "10890:22:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "10867:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "10867:46:16" - }, - "nodeType": "YulIf", - "src": "10864:72:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10952:2:16", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "10956:10:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10945:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10945:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10945:22:16" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "10983:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10991:2:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10976:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "10976:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "10976:18:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11042:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11051:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11054:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11044:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11044:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11044:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11017:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11025:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11013:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11013:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11030:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11009:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11009:26:16" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "11037:3:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11006:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "11006:35:16" - }, - "nodeType": "YulIf", - "src": "11003:55:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "11084:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11092:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11080:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11080:17:16" - }, - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11103:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11111:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11099:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11099:17:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11118:2:16" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "11067:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "11067:54:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11067:54:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "11145:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11153:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11141:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11141:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11158:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11137:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11137:26:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11165:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11130:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11130:37:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11130:37:16" - }, - { - "nodeType": "YulAssignment", - "src": "11176:15:16", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "11185:6:16" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "11176:5:16" - } - ] - } - ] - }, - "name": "abi_decode_string", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10446:6:16", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "10454:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "10462:5:16", - "type": "" - } - ], - "src": "10419:778:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11309:436:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "11355:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11364:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11367:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11357:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11357:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11357:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11330:7:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11339:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11326:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11326:23:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11351:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "11322:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11322:32:16" - }, - "nodeType": "YulIf", - "src": "11319:52:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11380:37:16", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11407:9:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "11394:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "11394:23:16" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "11384:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11426:28:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11436:18:16", - "type": "", - "value": "0xffffffffffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "11430:2:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11481:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11490:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11493:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11483:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11483:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11483:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11469:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11477:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11466:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "11466:14:16" - }, - "nodeType": "YulIf", - "src": "11463:34:16" - }, - { - "nodeType": "YulAssignment", - "src": "11506:60:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11538:9:16" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11549:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11534:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11534:22:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11558:7:16" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "11516:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "11516:50:16" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11506:6:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11575:48:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11608:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11619:2:16", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11604:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11604:18:16" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "11591:12:16" - }, - "nodeType": "YulFunctionCall", - "src": "11591:32:16" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "11579:8:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11652:16:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11661:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11664:1:16", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11654:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11654:12:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11654:12:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "11638:8:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11648:2:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11635:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "11635:16:16" - }, - "nodeType": "YulIf", - "src": "11632:36:16" - }, - { - "nodeType": "YulAssignment", - "src": "11677:62:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11709:9:16" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "11720:8:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11705:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "11705:24:16" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11731:7:16" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "11687:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "11687:52:16" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11677:6:16" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11267:9:16", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "11278:7:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11290:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "11298:6:16", - "type": "" - } - ], - "src": "11202:543:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11806:65:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11823:1:16", - "type": "", - "value": "0" - }, - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "11826:3:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11816:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "11816:14:16" - }, - "nodeType": "YulExpressionStatement", - "src": "11816:14:16" - }, - { - "nodeType": "YulAssignment", - "src": "11839:26:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11857:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11860:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "11847:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "11847:18:16" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "11839:4:16" - } - ] - } - ] - }, - "name": "array_dataslot_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "11789:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "11797:4:16", - "type": "" - } - ], - "src": "11750:121:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11957:464:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "11990:425:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12004:11:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12014:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "12008:2:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12035:2:16" - }, - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "12039:5:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12028:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12028:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12028:17:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12058:31:16", - "value": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12080:2:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12084:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "12070:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "12070:19:16" - }, - "variables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "12062:4:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12102:57:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "12125:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12135:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "12142:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12154:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12138:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12138:19:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "12131:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12131:27:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12121:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12121:38:16" - }, - "variables": [ - { - "name": "deleteStart", - "nodeType": "YulTypedName", - "src": "12106:11:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12196:23:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12198:19:16", - "value": { - "name": "data", - "nodeType": "YulIdentifier", - "src": "12213:4:16" - }, - "variableNames": [ - { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "12198:11:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "12178:10:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12190:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12175:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "12175:20:16" - }, - "nodeType": "YulIf", - "src": "12172:47:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12232:41:16", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "12246:4:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12256:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "12263:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12268:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12259:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12259:12:16" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "12252:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12252:20:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12242:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12242:31:16" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "12236:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12286:24:16", - "value": { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "12299:11:16" - }, - "variables": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "12290:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12384:21:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "12393:5:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12400:2:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "12386:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "12386:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12386:17:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "12334:5:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12341:2:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12331:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "12331:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "12345:26:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12347:22:16", - "value": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "12360:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12367:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12356:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12356:13:16" - }, - "variableNames": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "12347:5:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "12327:3:16", - "statements": [] - }, - "src": "12323:82:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "11973:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11978:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11970:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "11970:11:16" - }, - "nodeType": "YulIf", - "src": "11967:448:16" - } - ] - }, - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "11929:5:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "11936:3:16", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "11941:10:16", - "type": "" - } - ], - "src": "11876:545:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12511:141:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12521:125:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "12536:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12554:1:16", - "type": "", - "value": "3" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "12557:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "12550:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12550:11:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12563:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "12546:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12546:84:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "12542:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12542:89:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12532:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12532:100:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12638:1:16", - "type": "", - "value": "1" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "12641:3:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "12634:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "12634:11:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "12529:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "12529:117:16" - }, - "variableNames": [ - { - "name": "used", - "nodeType": "YulIdentifier", - "src": "12521:4:16" - } - ] - } - ] - }, - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "12488:4:16", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "12494:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "used", - "nodeType": "YulTypedName", - "src": "12502:4:16", - "type": "" - } - ], - "src": "12426:226:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12753:1375:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12763:24:16", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "12783:3:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12777:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "12777:10:16" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "12767:6:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12830:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "12832:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "12832:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12832:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "12802:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12810:18:16", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12799:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "12799:30:16" - }, - "nodeType": "YulIf", - "src": "12796:56:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "12905:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "12943:4:16" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "12937:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "12937:11:16" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "12911:25:16" - }, - "nodeType": "YulFunctionCall", - "src": "12911:38:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "12951:6:16" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulIdentifier", - "src": "12861:43:16" - }, - "nodeType": "YulFunctionCall", - "src": "12861:97:16" - }, - "nodeType": "YulExpressionStatement", - "src": "12861:97:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12967:18:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12984:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "12971:9:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12994:23:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13013:4:16", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "12998:11:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "13026:24:16", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "13039:11:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "13026:9:16" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "13096:775:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13110:94:16", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "13129:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13137:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13125:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13125:79:16" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "13114:7:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13217:49:16", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "13261:4:16" - } - ], - "functionName": { - "name": "array_dataslot_string_storage", - "nodeType": "YulIdentifier", - "src": "13231:29:16" - }, - "nodeType": "YulFunctionCall", - "src": "13231:35:16" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "13221:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13279:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13288:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "13283:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13366:172:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "13391:6:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13409:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "13414:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13405:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13405:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13399:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "13399:26:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "13384:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "13384:42:16" - }, - "nodeType": "YulExpressionStatement", - "src": "13384:42:16" - }, - { - "nodeType": "YulAssignment", - "src": "13443:24:16", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "13457:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13465:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13453:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13453:14:16" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "13443:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "13484:40:16", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "13501:9:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "13512:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13497:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13497:27:16" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "13484:9:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "13313:1:16" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "13316:7:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "13310:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "13310:14:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "13325:28:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13327:24:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "13336:1:16" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "13339:11:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13332:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13332:19:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "13327:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "13306:3:16", - "statements": [] - }, - "src": "13302:236:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13586:226:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13604:43:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13631:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "13636:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13627:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13627:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13621:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "13621:26:16" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "13608:9:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "13671:6:16" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "13683:9:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13710:1:16", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "13713:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "13706:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13706:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13722:3:16", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13702:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13702:24:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13728:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "13698:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13698:97:16" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "13694:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13694:102:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13679:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13679:118:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "13664:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "13664:134:16" - }, - "nodeType": "YulExpressionStatement", - "src": "13664:134:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "13557:7:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "13566:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "13554:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "13554:19:16" - }, - "nodeType": "YulIf", - "src": "13551:261:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "13832:4:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13846:1:16", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "13849:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "13842:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13842:14:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13858:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13838:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13838:22:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "13825:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "13825:36:16" - }, - "nodeType": "YulExpressionStatement", - "src": "13825:36:16" - } - ] - }, - "nodeType": "YulCase", - "src": "13089:782:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13094:1:16", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13888:234:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13902:14:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13915:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13906:5:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13951:67:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13969:35:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "13988:3:16" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "13993:9:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13984:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "13984:19:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13978:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "13978:26:16" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13969:5:16" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "13932:6:16" - }, - "nodeType": "YulIf", - "src": "13929:89:16" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "14038:4:16" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14097:5:16" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "14104:6:16" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "14044:52:16" - }, - "nodeType": "YulFunctionCall", - "src": "14044:67:16" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "14031:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14031:81:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14031:81:16" - } - ] - }, - "nodeType": "YulCase", - "src": "13880:242:16", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "13069:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13077:2:16", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "13066:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "13066:14:16" - }, - "nodeType": "YulSwitch", - "src": "13059:1063:16" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "12738:4:16", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "12744:3:16", - "type": "" - } - ], - "src": "12657:1471:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14252:145:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "14269:3:16" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14282:2:16", - "type": "", - "value": "96" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14286:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "14278:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14278:15:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14295:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "14274:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14274:88:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14262:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14262:101:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14262:101:16" - }, - { - "nodeType": "YulAssignment", - "src": "14372:19:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "14383:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14388:2:16", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14379:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14379:12:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "14372:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_address__to_t_address__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "14228:3:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "14233:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "14244:3:16", - "type": "" - } - ], - "src": "14133:264:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14434:152:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14451:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14454:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14444:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14444:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14444:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14548:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14551:4:16", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14541:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14541:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14541:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14572:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14575:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14565:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14565:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14565:15:16" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "14402:184:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14623:152:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14640:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14643:77:16", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14633:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14633:88:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14633:88:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14737:1:16", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14740:4:16", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14730:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14730:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14730:15:16" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14761:1:16", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14764:4:16", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14754:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14754:15:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14754:15:16" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "14591:184:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14832:116:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14842:20:16", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "14857:1:16" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14860:1:16" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "14853:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14853:9:16" - }, - "variableNames": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "14842:7:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14920:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "14922:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "14922:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "14922:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "14891:1:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "14884:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14884:9:16" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14898:1:16" - }, - { - "arguments": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "14905:7:16" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "14914:1:16" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "14901:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "14901:15:16" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "14895:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "14895:22:16" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "14881:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "14881:37:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "14874:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "14874:45:16" - }, - "nodeType": "YulIf", - "src": "14871:71:16" - } - ] - }, - "name": "checked_mul_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "14811:1:16", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "14814:1:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "product", - "nodeType": "YulTypedName", - "src": "14820:7:16", - "type": "" - } - ], - "src": "14780:168:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15001:77:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "15011:16:16", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "15022:1:16" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "15025:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15018:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15018:9:16" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "15011:3:16" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15050:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "15052:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "15052:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15052:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "15042:1:16" - }, - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "15045:3:16" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "15039:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "15039:10:16" - }, - "nodeType": "YulIf", - "src": "15036:36:16" - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "14984:1:16", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "14987:1:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "14993:3:16", - "type": "" - } - ], - "src": "14953:125:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15130:148:16", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "15221:22:16", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "15223:16:16" - }, - "nodeType": "YulFunctionCall", - "src": "15223:18:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15223:18:16" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "15146:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15153:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "15143:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "15143:77:16" - }, - "nodeType": "YulIf", - "src": "15140:103:16" - }, - { - "nodeType": "YulAssignment", - "src": "15252:20:16", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "15263:5:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15270:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15259:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15259:13:16" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "15252:3:16" - } - ] - } - ] - }, - "name": "increment_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "15112:5:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "15122:3:16", - "type": "" - } - ], - "src": "15083:195:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15495:1110:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15512:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15523:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15505:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15505:21:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15505:21:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15535:12:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15546:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "15539:3:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15556:30:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "15579:6:16" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "15573:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "15573:13:16" - }, - "variables": [ - { - "name": "slotValue", - "nodeType": "YulTypedName", - "src": "15560:9:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15595:50:16", - "value": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "15635:9:16" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "15609:25:16" - }, - "nodeType": "YulFunctionCall", - "src": "15609:36:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "15599:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15665:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15676:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15661:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15661:18:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "15681:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15654:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15654:34:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15654:34:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15697:13:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15707:3:16", - "type": "", - "value": "128" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "15701:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15719:11:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15729:1:16", - "type": "", - "value": "1" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "15723:2:16", - "type": "" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "15780:209:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15805:9:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15816:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15801:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15801:18:16" - }, - { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "15825:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15836:66:16", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "15821:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15821:82:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15794:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15794:110:16" - }, - "nodeType": "YulExpressionStatement", - "src": "15794:110:16" - }, - { - "nodeType": "YulAssignment", - "src": "15917:62:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15932:9:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15947:1:16", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "15964:6:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "15957:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15957:14:16" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "15950:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "15950:22:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15943:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15943:30:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15928:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15928:46:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15976:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15924:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15924:55:16" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "15917:3:16" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "15773:216:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15778:1:16", - "type": "", - "value": "0" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16005:374:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16026:1:16", - "type": "", - "value": "0" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "16029:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16019:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16019:17:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16019:17:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16049:14:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16059:4:16", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "16053:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16076:31:16", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16101:1:16", - "type": "", - "value": "0" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "16104:2:16" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "16091:9:16" - }, - "nodeType": "YulFunctionCall", - "src": "16091:16:16" - }, - "variables": [ - { - "name": "dataPos", - "nodeType": "YulTypedName", - "src": "16080:7:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16120:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16129:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "16124:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16197:126:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16230:9:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16241:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16226:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16226:17:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16245:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16222:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16222:26:16" - }, - { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "16256:7:16" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "16250:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "16250:14:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16215:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16215:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16215:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "16282:27:16", - "value": { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "16297:7:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "16306:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16293:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16293:16:16" - }, - "variableNames": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "16282:7:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16154:1:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "16157:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "16151:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "16151:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "16165:19:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16167:15:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16176:1:16" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "16179:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16172:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16172:10:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16167:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "16147:3:16", - "statements": [] - }, - "src": "16143:180:16" - }, - { - "nodeType": "YulAssignment", - "src": "16336:33:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16351:9:16" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16362:1:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16347:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16347:17:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16366:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16343:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16343:26:16" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "16336:3:16" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "15998:381:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16003:1:16", - "type": "", - "value": "1" - } - } - ], - "expression": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "15750:9:16" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "15761:2:16" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "15746:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "15746:18:16" - }, - "nodeType": "YulSwitch", - "src": "15739:640:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16399:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16410:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16395:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16395:20:16" - }, - { - "arguments": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "16421:3:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16426:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16417:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16417:19:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16388:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16388:49:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16388:49:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16446:44:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "16478:6:16" - }, - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "16486:3:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "16460:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "16460:30:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "16450:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16510:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16521:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16506:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16506:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "16530:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16538:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16526:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16526:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16499:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16499:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16499:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "16558:41:16", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "16584:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "16592:6:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "16566:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "16566:33:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16558:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_storage_t_string_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15448:9:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "15459:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "15467:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "15475:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15486:4:16", - "type": "" - } - ], - "src": "15283:1322:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16670:556:16", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "16680:26:16", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16700:5:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "16694:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "16694:12:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "16684:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16722:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "16727:6:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16715:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "16715:19:16" - }, - "nodeType": "YulExpressionStatement", - "src": "16715:19:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16743:14:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16753:4:16", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "16747:2:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16766:31:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16789:3:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16794:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16785:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16785:12:16" - }, - "variables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "16770:11:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16806:24:16", - "value": { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "16819:11:16" - }, - "variables": [ - { - "name": "pos_1", - "nodeType": "YulTypedName", - "src": "16810:5:16", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "16839:18:16", - "value": { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "16846:11:16" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16839:3:16" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16866:38:16", - "value": { - "arguments": [ - { - "name": "pos_1", - "nodeType": "YulIdentifier", - "src": "16882:5:16" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16893:1:16", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "16896:6:16" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "16889:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16889:14:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16878:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16878:26:16" - }, - "variables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16870:4:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16913:28:16", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16931:5:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16938:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16927:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16927:14:16" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "16917:6:16", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16950:10:16", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16959:1:16", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "16954:1:16", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17018:182:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17039:3:16" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17048:4:16" - }, - { - "name": "pos_1", - "nodeType": "YulIdentifier", - "src": "17054:5:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17044:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17044:16:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17032:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "17032:29:16" - }, - "nodeType": "YulExpressionStatement", - "src": "17032:29:16" - }, - { - "nodeType": "YulAssignment", - "src": "17074:46:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "17106:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "17100:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "17100:13:16" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17115:4:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "17082:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "17082:38:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17074:4:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "17133:25:16", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "17147:6:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17155:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17143:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17143:15:16" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "17133:6:16" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "17171:19:16", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17182:3:16" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17187:2:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17178:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17178:12:16" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17171:3:16" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16980:1:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "16983:6:16" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "16977:2:16" - }, - "nodeType": "YulFunctionCall", - "src": "16977:13:16" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "16991:18:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16993:14:16", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "17002:1:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17005:1:16", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16998:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "16998:9:16" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "16993:1:16" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "16973:3:16", - "statements": [] - }, - "src": "16969:231:16" - }, - { - "nodeType": "YulAssignment", - "src": "17209:11:16", - "value": { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17216:4:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "17209:3:16" - } - ] - } - ] - }, - "name": "abi_encode_array_string_dyn", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "16647:5:16", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "16654:3:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "16662:3:16", - "type": "" - } - ], - "src": "16610:616:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17647:492:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17664:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17675:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17657:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "17657:22:16" - }, - "nodeType": "YulExpressionStatement", - "src": "17657:22:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17699:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17710:3:16", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17695:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17695:19:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17716:2:16", - "type": "", - "value": "19" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17688:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "17688:31:16" - }, - "nodeType": "YulExpressionStatement", - "src": "17688:31:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17739:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17750:3:16", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17735:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17735:19:16" - }, - { - "hexValue": "726563656976655f6d6573736167655f65766d", - "kind": "string", - "nodeType": "YulLiteral", - "src": "17756:21:16", - "type": "", - "value": "receive_message_evm" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17728:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "17728:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "17728:50:16" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17798:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17809:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17794:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17794:20:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17816:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17787:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "17787:33:16" - }, - "nodeType": "YulExpressionStatement", - "src": "17787:33:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17829:70:16", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "17871:6:16" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17883:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17894:3:16", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17879:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17879:19:16" - } - ], - "functionName": { - "name": "abi_encode_array_string_dyn", - "nodeType": "YulIdentifier", - "src": "17843:27:16" - }, - "nodeType": "YulFunctionCall", - "src": "17843:56:16" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "17833:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17919:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17930:2:16", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17915:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17915:18:16" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "17939:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17947:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17935:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "17935:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17908:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "17908:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "17908:50:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17967:57:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "18009:6:16" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "18017:6:16" - } - ], - "functionName": { - "name": "abi_encode_array_string_dyn", - "nodeType": "YulIdentifier", - "src": "17981:27:16" - }, - "nodeType": "YulFunctionCall", - "src": "17981:43:16" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "17971:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18044:9:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18055:2:16", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18040:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "18040:18:16" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "18064:6:16" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18072:9:16" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18060:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "18060:22:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18033:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "18033:50:16" - }, - "nodeType": "YulExpressionStatement", - "src": "18033:50:16" - }, - { - "nodeType": "YulAssignment", - "src": "18092:41:16", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "18118:6:16" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "18126:6:16" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "18100:17:16" - }, - "nodeType": "YulFunctionCall", - "src": "18100:33:16" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18092:4:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "17600:9:16", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "17611:6:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "17619:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "17627:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "17638:4:16", - "type": "" - } - ], - "src": "17231:908:16" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18307:267:16", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18324:3:16" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "18333:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18341:66:16", - "type": "", - "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "18329:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "18329:79:16" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18317:6:16" - }, - "nodeType": "YulFunctionCall", - "src": "18317:92:16" - }, - "nodeType": "YulExpressionStatement", - "src": "18317:92:16" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18418:27:16", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "18438:6:16" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "18432:5:16" - }, - "nodeType": "YulFunctionCall", - "src": "18432:13:16" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "18422:6:16", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "18493:6:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18501:4:16", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18489:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "18489:17:16" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18512:3:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18517:1:16", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18508:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "18508:11:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18521:6:16" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "18454:34:16" - }, - "nodeType": "YulFunctionCall", - "src": "18454:74:16" - }, - "nodeType": "YulExpressionStatement", - "src": "18454:74:16" - }, - { - "nodeType": "YulAssignment", - "src": "18537:31:16", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18552:3:16" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18557:6:16" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18548:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "18548:16:16" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18566:1:16", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18544:3:16" - }, - "nodeType": "YulFunctionCall", - "src": "18544:24:16" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "18537:3:16" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "18275:3:16", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "18280:6:16", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "18288:6:16", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "18299:3:16", - "type": "" - } - ], - "src": "18144:430:16" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_contract$_IAxelarGateway_$991__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_string_calldata(offset, end) -> arrayPos, length\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, length), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptrt_string_calldata_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7, value8, value9\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n let offset_3 := calldataload(add(headStart, 128))\n if gt(offset_3, _1) { revert(0, 0) }\n let value7_1, value8_1 := abi_decode_string_calldata(add(headStart, offset_3), dataEnd)\n value7 := value7_1\n value8 := value8_1\n value9 := calldataload(add(headStart, 160))\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_string(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes32t_string_calldata_ptrt_string_calldata_ptrt_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n let value5_1, value6_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value5 := value5_1\n value6 := value6_1\n }\n function abi_decode_tuple_t_string_calldata_ptrt_string_calldata_ptrt_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_string_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n let value2_1, value3_1 := abi_decode_string_calldata(add(headStart, offset_1), dataEnd)\n value2 := value2_1\n value3 := value3_1\n let offset_2 := calldataload(add(headStart, 64))\n if gt(offset_2, _1) { revert(0, 0) }\n let value4_1, value5_1 := abi_decode_string_calldata(add(headStart, offset_2), dataEnd)\n value4 := value4_1\n value5 := value5_1\n }\n function abi_encode_tuple_t_contract$_IAxelarGasService_$655__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string(value1, tail_1)\n }\n function abi_encode_tuple_packed_t_bytes_calldata_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n calldatacopy(pos, value0, value1)\n let _1 := add(pos, value1)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_string_calldata(start, length, pos) -> end\n {\n mstore(pos, length)\n calldatacopy(add(pos, 0x20), start, length)\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)), 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32_t_string_calldata_ptr_t_uint256__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32_t_string_memory_ptr_t_uint256__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 192)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n tail := abi_encode_string_calldata(value6, value7, tail_2)\n mstore(add(headStart, 160), value8)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_bytes32_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes32__to_t_bytes32_t_string_memory_ptr_t_string_memory_ptr_t_bytes32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 128)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 128))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), value5)\n }\n function abi_encode_tuple_t_string_memory_ptr_t_string_calldata_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string_calldata(value1, value2, tail_1)\n }\n function abi_encode_tuple_t_address_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr_t_address__to_t_address_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr_t_address__fromStack_reversed(headStart, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), 160)\n let tail_1 := abi_encode_string_calldata(value1, value2, add(headStart, 160))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value3, value4, tail_1)\n mstore(add(headStart, 96), sub(tail_2, headStart))\n tail := abi_encode_string(value5, tail_2)\n mstore(add(headStart, 128), and(value6, _1))\n }\n function abi_encode_tuple_t_string_calldata_ptr_t_string_calldata_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string_calldata(value0, value1, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n let tail_2 := abi_encode_string_calldata(value2, value3, tail_1)\n mstore(add(headStart, 64), sub(tail_2, headStart))\n tail := abi_encode_string(value4, tail_2)\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_string(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_string(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 32))\n if gt(offset_1, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset_1), dataEnd)\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function abi_encode_tuple_packed_t_address__to_t_address__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n mstore(pos, and(shl(96, value0), 0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000))\n end := add(pos, 20)\n }\n function panic_error_0x32()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function panic_error_0x11()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_string_storage_t_string_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let ret := 0\n let slotValue := sload(value0)\n let length := extract_byte_array_length(slotValue)\n mstore(add(headStart, 96), length)\n let _1 := 128\n let _2 := 1\n switch and(slotValue, _2)\n case 0 {\n mstore(add(headStart, _1), and(slotValue, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00))\n ret := add(add(headStart, shl(5, iszero(iszero(length)))), _1)\n }\n case 1 {\n mstore(0, value0)\n let _3 := 0x20\n let dataPos := keccak256(0, _3)\n let i := 0\n for { } lt(i, length) { i := add(i, _3) }\n {\n mstore(add(add(headStart, i), _1), sload(dataPos))\n dataPos := add(dataPos, _2)\n }\n ret := add(add(headStart, i), _1)\n }\n mstore(add(headStart, 0x20), sub(ret, headStart))\n let tail_1 := abi_encode_string(value1, ret)\n mstore(add(headStart, 64), sub(tail_1, headStart))\n tail := abi_encode_string(value2, tail_1)\n }\n function abi_encode_array_string_dyn(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let _1 := 0x20\n let updated_pos := add(pos, _1)\n let pos_1 := updated_pos\n pos := updated_pos\n let tail := add(pos_1, shl(5, length))\n let srcPtr := add(value, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, pos_1))\n tail := abi_encode_string(mload(srcPtr), tail)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n end := tail\n }\n function abi_encode_tuple_t_stringliteral_9aa6fb2b793e0f8ce3ced18b05d5a197fe23b8eecde92e91f594de50ca25333f_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_array$_t_string_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 128)\n mstore(add(headStart, 128), 19)\n mstore(add(headStart, 160), \"receive_message_evm\")\n mstore(add(headStart, 0x20), 192)\n let tail_1 := abi_encode_array_string_dyn(value0, add(headStart, 192))\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_array_string_dyn(value1, tail_1)\n mstore(add(headStart, 96), sub(tail_2, headStart))\n tail := abi_encode_string(value2, tail_2)\n }\n function abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr__to_t_bytes4_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, and(value0, 0xffffffff00000000000000000000000000000000000000000000000000000000))\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 4), length)\n end := add(add(pos, length), 4)\n }\n}", - "id": 16, - "language": "Yul", - "name": "#utility.yul" - } - ], - "immutableReferences": { - "10": [ - { - "length": 32, - "start": 135 - }, - { - "length": 32, - "start": 504 - }, - { - "length": 32, - "start": 936 - }, - { - "length": 32, - "start": 1415 - } - ], - "2131": [ - { - "length": 32, - "start": 348 - }, - { - "length": 32, - "start": 1207 - } - ] - }, - "linkReferences": {}, - "object": "6080604052600436106100705760003560e01c8063491606581161004e57806349160658146101175780635615264d146101375780636a22d8cc1461014a578063b2f6cbbe1461017e57600080fd5b8063116191b6146100755780631a98b2e0146100d35780631c93b03a146100f5575b600080fd5b34801561008157600080fd5b506100a97f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156100df57600080fd5b506100f36100ee366004610dac565b6101a1565b005b34801561010157600080fd5b5061010a6102c3565b6040516100ca9190610ed6565b34801561012357600080fd5b506100f3610132366004610ef0565b610351565b6100f3610145366004610f94565b610478565b34801561015657600080fd5b506100a97f000000000000000000000000000000000000000000000000000000000000000081565b34801561018a57600080fd5b50610193610603565b6040516100ca92919061102e565b600085856040516101b392919061105c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed99061023d908e908e908e908e908e9089908d908d908d90600401611097565b6020604051808303816000875af115801561025c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028091906110f6565b6102b6576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600080546102d090611118565b80601f01602080910402602001604051908101604052809291908181526020018280546102fc90611118565b80156103495780601f1061031e57610100808354040283529160200191610349565b820191906000526020600020905b81548152906001019060200180831161032c57829003601f168201915b505050505081565b6000828260405161036392919061105c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906103e7908b908b908b908b908b90899060040161116b565b6020604051808303816000875af1158015610406573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061042a91906110f6565b610460576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61046e878787878787610723565b5050505050505050565b60006104833361076d565b8383604051602001610497939291906111ac565b604051602081830303815290604052905060006104b382610a6f565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16630c93e3bb34308b8b8b8b88336040518963ffffffff1660e01b815260040161051b97969594939291906111dc565b6000604051808303818588803b15801561053457600080fd5b505af1158015610548573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506105c791508b908b908b908b90889060040161124c565b600060405180830381600087803b1580156105e157600080fd5b505af11580156105f5573d6000803e3d6000fd5b505050505050505050505050565b60018054819061061290611118565b80601f016020809104026020016040519081016040528092919081815260200182805461063e90611118565b801561068b5780601f106106605761010080835404028352916020019161068b565b820191906000526020600020905b81548152906001019060200180831161066e57829003601f168201915b5050505050908060010180546106a090611118565b80601f01602080910402602001604051908101604052809291908181526020018280546106cc90611118565b80156107195780601f106106ee57610100808354040283529160200191610719565b820191906000526020600020905b8154815290600101906020018083116106fc57829003601f168201915b5050505050905082565b6000806107328385018561134f565b604080518082019091528281526020810182905291935091506001806107588582611402565b50602082015160018201906102b69082611402565b604051606082811b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660208301529060009060340160408051808303601f190181528282018252601083527f303132333435363738396162636465660000000000000000000000000000000060208401528151602a808252606082019093529093506000916020820181803683370190505090507f300000000000000000000000000000000000000000000000000000000000000081600081518110610836576108366114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110610899576108996114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060005b6014811015610a66578260048583815181106108e9576108e96114fe565b016020015182517fff0000000000000000000000000000000000000000000000000000000000000090911690911c60f81c908110610929576109296114fe565b01602001517fff00000000000000000000000000000000000000000000000000000000000000168261095c83600261155c565b610967906002611579565b81518110610977576109776114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350828482815181106109b9576109b96114fe565b602091010151815160f89190911c600f169081106109d9576109d96114fe565b01602001517fff000000000000000000000000000000000000000000000000000000000000001682610a0c83600261155c565b610a17906003611579565b81518110610a2757610a276114fe565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610a5f8161158c565b90506108cb565b50949350505050565b6060600080610a7d3061076d565b84604051602001610a90939291906115c4565b60408051808303601f19018152600380845260808401909252925060009190816020015b6060815260200190600190039081610ab45790505090506040518060400160405280600c81526020017f736f757263655f636861696e000000000000000000000000000000000000000081525081600081518110610b1457610b146114fe565b60200260200101819052506040518060400160405280600e81526020017f736f757263655f6164647265737300000000000000000000000000000000000081525081600181518110610b6857610b686114fe565b60200260200101819052506040518060400160405280600781526020017f7061796c6f61640000000000000000000000000000000000000000000000000081525081600281518110610bbc57610bbc6114fe565b602090810291909101015260408051600380825260808201909252600091816020015b6060815260200190600190039081610bdf5790505090506040518060400160405280600681526020017f737472696e67000000000000000000000000000000000000000000000000000081525081600081518110610c3f57610c3f6114fe565b60200260200101819052506040518060400160405280600681526020017f737472696e67000000000000000000000000000000000000000000000000000081525081600181518110610c9357610c936114fe565b60200260200101819052506040518060400160405280600581526020017f627974657300000000000000000000000000000000000000000000000000000081525081600281518110610ce757610ce76114fe565b60200260200101819052506060828285604051602001610d09939291906116e1565b60408051601f19818403018152908290529150610d49907c010000000000000000000000000000000000000000000000000000000090839060200161174e565b604051602081830303815290604052945050505050919050565b60008083601f840112610d7557600080fd5b50813567ffffffffffffffff811115610d8d57600080fd5b602083019150836020828501011115610da557600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610dcb57600080fd5b8a35995060208b013567ffffffffffffffff80821115610dea57600080fd5b610df68e838f01610d63565b909b50995060408d0135915080821115610e0f57600080fd5b610e1b8e838f01610d63565b909950975060608d0135915080821115610e3457600080fd5b610e408e838f01610d63565b909750955060808d0135915080821115610e5957600080fd5b50610e668d828e01610d63565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b83811015610ea1578181015183820152602001610e89565b50506000910152565b60008151808452610ec2816020860160208601610e86565b601f01601f19169290920160200192915050565b602081526000610ee96020830184610eaa565b9392505050565b60008060008060008060006080888a031215610f0b57600080fd5b87359650602088013567ffffffffffffffff80821115610f2a57600080fd5b610f368b838c01610d63565b909850965060408a0135915080821115610f4f57600080fd5b610f5b8b838c01610d63565b909650945060608a0135915080821115610f7457600080fd5b50610f818a828b01610d63565b989b979a50959850939692959293505050565b60008060008060008060608789031215610fad57600080fd5b863567ffffffffffffffff80821115610fc557600080fd5b610fd18a838b01610d63565b90985096506020890135915080821115610fea57600080fd5b610ff68a838b01610d63565b9096509450604089013591508082111561100f57600080fd5b5061101c89828a01610d63565b979a9699509497509295939492505050565b6040815260006110416040830185610eaa565b82810360208401526110538185610eaa565b95945050505050565b8183823760009101908152919050565b818352818160208501375060006020828401015260006020601f19601f840116840101905092915050565b89815260c0602082015260006110b160c083018a8c61106c565b82810360408401526110c481898b61106c565b905086606084015282810360808401526110df81868861106c565b9150508260a08301529a9950505050505050505050565b60006020828403121561110857600080fd5b81518015158114610ee957600080fd5b600181811c9082168061112c57607f821691505b602082108103611165577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600061118560808301878961106c565b828103604084015261119881868861106c565b915050826060830152979650505050505050565b6040815260006111bf6040830186610eaa565b82810360208401526111d281858761106c565b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a0602084015261120d60a08401898b61106c565b838103604085015261122081888a61106c565b905083810360608501526112348187610eaa565b92505080841660808401525098975050505050505050565b60608152600061126060608301878961106c565b828103602084015261127381868861106c565b905082810360408401526112878185610eaa565b98975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f8301126112d357600080fd5b813567ffffffffffffffff808211156112ee576112ee611293565b604051601f8301601f19908116603f0116810190828211818310171561131657611316611293565b8160405283815286602085880101111561132f57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561136257600080fd5b823567ffffffffffffffff8082111561137a57600080fd5b611386868387016112c2565b9350602085013591508082111561139c57600080fd5b506113a9858286016112c2565b9150509250929050565b601f8211156113fd57600081815260208120601f850160051c810160208610156113da5750805b601f850160051c820191505b818110156113f9578281556001016113e6565b5050505b505050565b815167ffffffffffffffff81111561141c5761141c611293565b6114308161142a8454611118565b846113b3565b602080601f831160018114611483576000841561144d5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556113f9565b600085815260208120601f198616915b828110156114b257888601518255948401946001909101908401611493565b50858210156114ee57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176115735761157361152d565b92915050565b808201808211156115735761157361152d565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036115bd576115bd61152d565b5060010190565b6060815260008085546115d681611118565b80606086015260806001808416600081146115f8576001811461163057611661565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008516838901528284151560051b8901019550611661565b8a60005260208060002060005b868110156116585781548b820187015290840190820161163d565b8a018501975050505b505050505082810360208401526116788186610eaa565b905082810360408401526111d28185610eaa565b600081518084526020808501808196508360051b8101915082860160005b858110156116d45782840389526116c2848351610eaa565b988501989350908401906001016116aa565b5091979650505050505050565b60808152601360808201527f726563656976655f6d6573736167655f65766d0000000000000000000000000060a082015260c06020820152600061172860c083018661168c565b828103604084015261173a818661168c565b905082810360608401526111d28185610eaa565b7fffffffff000000000000000000000000000000000000000000000000000000008316815260008251611788816004850160208701610e86565b91909101600401939250505056fea2646970667358221220889273e6bea1307b8d9bac0f5ee0f7d320b227ded625d279374d9e4ebf1f931164736f6c63430008140033", - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x70 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x49160658 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x49160658 EQ PUSH2 0x117 JUMPI DUP1 PUSH4 0x5615264D EQ PUSH2 0x137 JUMPI DUP1 PUSH4 0x6A22D8CC EQ PUSH2 0x14A JUMPI DUP1 PUSH4 0xB2F6CBBE EQ PUSH2 0x17E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x116191B6 EQ PUSH2 0x75 JUMPI DUP1 PUSH4 0x1A98B2E0 EQ PUSH2 0xD3 JUMPI DUP1 PUSH4 0x1C93B03A EQ PUSH2 0xF5 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x81 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA9 PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xDF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF3 PUSH2 0xEE CALLDATASIZE PUSH1 0x4 PUSH2 0xDAC JUMP JUMPDEST PUSH2 0x1A1 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x101 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10A PUSH2 0x2C3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCA SWAP2 SWAP1 PUSH2 0xED6 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x123 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF3 PUSH2 0x132 CALLDATASIZE PUSH1 0x4 PUSH2 0xEF0 JUMP JUMPDEST PUSH2 0x351 JUMP JUMPDEST PUSH2 0xF3 PUSH2 0x145 CALLDATASIZE PUSH1 0x4 PUSH2 0xF94 JUMP JUMPDEST PUSH2 0x478 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x156 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA9 PUSH32 0x0 DUP2 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x18A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x193 PUSH2 0x603 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCA SWAP3 SWAP2 SWAP1 PUSH2 0x102E JUMP JUMPDEST PUSH1 0x0 DUP6 DUP6 PUSH1 0x40 MLOAD PUSH2 0x1B3 SWAP3 SWAP2 SWAP1 PUSH2 0x105C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x1876EED900000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x1876EED9 SWAP1 PUSH2 0x23D SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP15 SWAP1 DUP10 SWAP1 DUP14 SWAP1 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x1097 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x25C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x10F6 JUMP JUMPDEST PUSH2 0x2B6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH2 0x2D0 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2FC SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x349 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x31E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x349 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x32C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH2 0x363 SWAP3 SWAP2 SWAP1 PUSH2 0x105C JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB DUP2 KECCAK256 PUSH32 0x5F6970C300000000000000000000000000000000000000000000000000000000 DUP3 MSTORE SWAP2 POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP1 PUSH4 0x5F6970C3 SWAP1 PUSH2 0x3E7 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x116B JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 GAS CALL ISZERO DUP1 ISZERO PUSH2 0x406 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x42A SWAP2 SWAP1 PUSH2 0x10F6 JUMP JUMPDEST PUSH2 0x460 JUMPI PUSH1 0x40 MLOAD PUSH32 0x500C44B400000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x46E DUP8 DUP8 DUP8 DUP8 DUP8 DUP8 PUSH2 0x723 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x483 CALLER PUSH2 0x76D JUMP JUMPDEST DUP4 DUP4 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x497 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x11AC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH1 0x0 PUSH2 0x4B3 DUP3 PUSH2 0xA6F JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xC93E3BB CALLVALUE ADDRESS DUP12 DUP12 DUP12 DUP12 DUP9 CALLER PUSH1 0x40 MLOAD DUP10 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x51B SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x11DC JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x534 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x548 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP PUSH1 0x40 MLOAD PUSH32 0x1C92115F00000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND SWAP4 POP PUSH4 0x1C92115F SWAP3 POP PUSH2 0x5C7 SWAP2 POP DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x124C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5E1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x5F5 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP1 SLOAD DUP2 SWAP1 PUSH2 0x612 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x63E SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x68B JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x660 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x68B JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x66E JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 DUP1 PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x6A0 SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x6CC SWAP1 PUSH2 0x1118 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x719 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x719 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x732 DUP4 DUP6 ADD DUP6 PUSH2 0x134F JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP3 SWAP1 MSTORE SWAP2 SWAP4 POP SWAP2 POP PUSH1 0x1 DUP1 PUSH2 0x758 DUP6 DUP3 PUSH2 0x1402 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH1 0x1 DUP3 ADD SWAP1 PUSH2 0x2B6 SWAP1 DUP3 PUSH2 0x1402 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x60 DUP3 DUP2 SHL PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000 AND PUSH1 0x20 DUP4 ADD MSTORE SWAP1 PUSH1 0x0 SWAP1 PUSH1 0x34 ADD PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB PUSH1 0x1F NOT ADD DUP2 MSTORE DUP3 DUP3 ADD DUP3 MSTORE PUSH1 0x10 DUP4 MSTORE PUSH32 0x3031323334353637383961626364656600000000000000000000000000000000 PUSH1 0x20 DUP5 ADD MSTORE DUP2 MLOAD PUSH1 0x2A DUP1 DUP3 MSTORE PUSH1 0x60 DUP3 ADD SWAP1 SWAP4 MSTORE SWAP1 SWAP4 POP PUSH1 0x0 SWAP2 PUSH1 0x20 DUP3 ADD DUP2 DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP POP SWAP1 POP PUSH32 0x3000000000000000000000000000000000000000000000000000000000000000 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x836 JUMPI PUSH2 0x836 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH32 0x7800000000000000000000000000000000000000000000000000000000000000 DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x899 JUMPI PUSH2 0x899 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 JUMPDEST PUSH1 0x14 DUP2 LT ISZERO PUSH2 0xA66 JUMPI DUP3 PUSH1 0x4 DUP6 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x8E9 JUMPI PUSH2 0x8E9 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD DUP3 MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 SWAP1 SWAP2 AND SWAP1 SWAP2 SHR PUSH1 0xF8 SHR SWAP1 DUP2 LT PUSH2 0x929 JUMPI PUSH2 0x929 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 AND DUP3 PUSH2 0x95C DUP4 PUSH1 0x2 PUSH2 0x155C JUMP JUMPDEST PUSH2 0x967 SWAP1 PUSH1 0x2 PUSH2 0x1579 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0x977 JUMPI PUSH2 0x977 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP3 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x9B9 JUMPI PUSH2 0x9B9 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 SWAP2 ADD ADD MLOAD DUP2 MLOAD PUSH1 0xF8 SWAP2 SWAP1 SWAP2 SHR PUSH1 0xF AND SWAP1 DUP2 LT PUSH2 0x9D9 JUMPI PUSH2 0x9D9 PUSH2 0x14FE JUMP JUMPDEST ADD PUSH1 0x20 ADD MLOAD PUSH32 0xFF00000000000000000000000000000000000000000000000000000000000000 AND DUP3 PUSH2 0xA0C DUP4 PUSH1 0x2 PUSH2 0x155C JUMP JUMPDEST PUSH2 0xA17 SWAP1 PUSH1 0x3 PUSH2 0x1579 JUMP JUMPDEST DUP2 MLOAD DUP2 LT PUSH2 0xA27 JUMPI PUSH2 0xA27 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH2 0xA5F DUP2 PUSH2 0x158C JUMP JUMPDEST SWAP1 POP PUSH2 0x8CB JUMP JUMPDEST POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 PUSH2 0xA7D ADDRESS PUSH2 0x76D JUMP JUMPDEST DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xA90 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x15C4 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB PUSH1 0x1F NOT ADD DUP2 MSTORE PUSH1 0x3 DUP1 DUP5 MSTORE PUSH1 0x80 DUP5 ADD SWAP1 SWAP3 MSTORE SWAP3 POP PUSH1 0x0 SWAP2 SWAP1 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xAB4 JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xC DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x736F757263655F636861696E0000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xB14 JUMPI PUSH2 0xB14 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xE DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x736F757263655F61646472657373000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xB68 JUMPI PUSH2 0xB68 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x7061796C6F616400000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xBBC JUMPI PUSH2 0xBBC PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x40 DUP1 MLOAD PUSH1 0x3 DUP1 DUP3 MSTORE PUSH1 0x80 DUP3 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xBDF JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x737472696E670000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0xC3F JUMPI PUSH2 0xC3F PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x737472696E670000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xC93 JUMPI PUSH2 0xC93 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x6279746573000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xCE7 JUMPI PUSH2 0xCE7 PUSH2 0x14FE JUMP JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x60 DUP3 DUP3 DUP6 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xD09 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x16E1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1F NOT DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP1 DUP3 SWAP1 MSTORE SWAP2 POP PUSH2 0xD49 SWAP1 PUSH29 0x100000000000000000000000000000000000000000000000000000000 SWAP1 DUP4 SWAP1 PUSH1 0x20 ADD PUSH2 0x174E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP5 POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0xD75 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0xDA5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xC0 DUP12 DUP14 SUB SLT ISZERO PUSH2 0xDCB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP11 CALLDATALOAD SWAP10 POP PUSH1 0x20 DUP12 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xDEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xDF6 DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP12 POP SWAP10 POP PUSH1 0x40 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE0F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xE1B DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP10 POP SWAP8 POP PUSH1 0x60 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE34 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xE40 DUP15 DUP4 DUP16 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP8 POP SWAP6 POP PUSH1 0x80 DUP14 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xE59 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xE66 DUP14 DUP3 DUP15 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP2 POP DUP1 SWAP5 POP POP DUP1 SWAP3 POP POP PUSH1 0xA0 DUP12 ADD CALLDATALOAD SWAP1 POP SWAP3 SWAP6 SWAP9 SWAP12 SWAP2 SWAP5 SWAP8 SWAP11 POP SWAP3 SWAP6 SWAP9 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xEA1 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xE89 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH2 0xEC2 DUP2 PUSH1 0x20 DUP7 ADD PUSH1 0x20 DUP7 ADD PUSH2 0xE86 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP3 SWAP1 SWAP3 ADD PUSH1 0x20 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP2 MSTORE PUSH1 0x0 PUSH2 0xEE9 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0xEAA JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP9 DUP11 SUB SLT ISZERO PUSH2 0xF0B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP8 CALLDATALOAD SWAP7 POP PUSH1 0x20 DUP9 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xF2A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF36 DUP12 DUP4 DUP13 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x40 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xF4F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF5B DUP12 DUP4 DUP13 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x60 DUP11 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xF74 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF81 DUP11 DUP3 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP9 SWAP12 SWAP8 SWAP11 POP SWAP6 SWAP9 POP SWAP4 SWAP7 SWAP3 SWAP6 SWAP3 SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP8 DUP10 SUB SLT ISZERO PUSH2 0xFAD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP7 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0xFC5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFD1 DUP11 DUP4 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x20 DUP10 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0xFEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFF6 DUP11 DUP4 DUP12 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x40 DUP10 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x100F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x101C DUP10 DUP3 DUP11 ADD PUSH2 0xD63 JUMP JUMPDEST SWAP8 SWAP11 SWAP7 SWAP10 POP SWAP5 SWAP8 POP SWAP3 SWAP6 SWAP4 SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP2 MSTORE PUSH1 0x0 PUSH2 0x1041 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0xEAA JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1053 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP4 DUP3 CALLDATACOPY PUSH1 0x0 SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP2 DUP4 MSTORE DUP2 DUP2 PUSH1 0x20 DUP6 ADD CALLDATACOPY POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 ADD ADD MSTORE PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP5 ADD AND DUP5 ADD ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP10 DUP2 MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x10B1 PUSH1 0xC0 DUP4 ADD DUP11 DUP13 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x10C4 DUP2 DUP10 DUP12 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP7 PUSH1 0x60 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x10DF DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0xA0 DUP4 ADD MSTORE SWAP11 SWAP10 POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1108 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0xEE9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x112C JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x1165 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 MSTORE PUSH1 0x80 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1185 PUSH1 0x80 DUP4 ADD DUP8 DUP10 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x1198 DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP2 POP POP DUP3 PUSH1 0x60 DUP4 ADD MSTORE SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP2 MSTORE PUSH1 0x0 PUSH2 0x11BF PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0xEAA JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 DUP8 PUSH2 0x106C JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 DUP11 AND DUP4 MSTORE PUSH1 0xA0 PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x120D PUSH1 0xA0 DUP5 ADD DUP10 DUP12 PUSH2 0x106C JUMP JUMPDEST DUP4 DUP2 SUB PUSH1 0x40 DUP6 ADD MSTORE PUSH2 0x1220 DUP2 DUP9 DUP11 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP4 DUP2 SUB PUSH1 0x60 DUP6 ADD MSTORE PUSH2 0x1234 DUP2 DUP8 PUSH2 0xEAA JUMP JUMPDEST SWAP3 POP POP DUP1 DUP5 AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 PUSH2 0x1260 PUSH1 0x60 DUP4 ADD DUP8 DUP10 PUSH2 0x106C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1273 DUP2 DUP7 DUP9 PUSH2 0x106C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x1287 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x12D3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x12EE JUMPI PUSH2 0x12EE PUSH2 0x1293 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x1316 JUMPI PUSH2 0x1316 PUSH2 0x1293 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x132F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1362 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x137A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1386 DUP7 DUP4 DUP8 ADD PUSH2 0x12C2 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x139C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x13A9 DUP6 DUP3 DUP7 ADD PUSH2 0x12C2 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x13FD JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x13DA JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x13F9 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x13E6 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x141C JUMPI PUSH2 0x141C PUSH2 0x1293 JUMP JUMPDEST PUSH2 0x1430 DUP2 PUSH2 0x142A DUP5 SLOAD PUSH2 0x1118 JUMP JUMPDEST DUP5 PUSH2 0x13B3 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x1483 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x144D JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x13F9 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x14B2 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x1493 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x14EE JUMPI DUP8 DUP6 ADD MLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0x1573 JUMPI PUSH2 0x1573 PUSH2 0x152D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH2 0x1573 JUMPI PUSH2 0x1573 PUSH2 0x152D JUMP JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0x15BD JUMPI PUSH2 0x15BD PUSH2 0x152D JUMP JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x0 DUP1 DUP6 SLOAD PUSH2 0x15D6 DUP2 PUSH2 0x1118 JUMP JUMPDEST DUP1 PUSH1 0x60 DUP7 ADD MSTORE PUSH1 0x80 PUSH1 0x1 DUP1 DUP5 AND PUSH1 0x0 DUP2 EQ PUSH2 0x15F8 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1630 JUMPI PUSH2 0x1661 JUMP JUMPDEST PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 DUP6 AND DUP4 DUP10 ADD MSTORE DUP3 DUP5 ISZERO ISZERO PUSH1 0x5 SHL DUP10 ADD ADD SWAP6 POP PUSH2 0x1661 JUMP JUMPDEST DUP11 PUSH1 0x0 MSTORE PUSH1 0x20 DUP1 PUSH1 0x0 KECCAK256 PUSH1 0x0 JUMPDEST DUP7 DUP2 LT ISZERO PUSH2 0x1658 JUMPI DUP2 SLOAD DUP12 DUP3 ADD DUP8 ADD MSTORE SWAP1 DUP5 ADD SWAP1 DUP3 ADD PUSH2 0x163D JUMP JUMPDEST DUP11 ADD DUP6 ADD SWAP8 POP POP POP JUMPDEST POP POP POP POP POP DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x1678 DUP2 DUP7 PUSH2 0xEAA JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x20 DUP1 DUP6 ADD DUP1 DUP2 SWAP7 POP DUP4 PUSH1 0x5 SHL DUP2 ADD SWAP2 POP DUP3 DUP7 ADD PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x16D4 JUMPI DUP3 DUP5 SUB DUP10 MSTORE PUSH2 0x16C2 DUP5 DUP4 MLOAD PUSH2 0xEAA JUMP JUMPDEST SWAP9 DUP6 ADD SWAP9 SWAP4 POP SWAP1 DUP5 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x16AA JUMP JUMPDEST POP SWAP2 SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x80 DUP2 MSTORE PUSH1 0x13 PUSH1 0x80 DUP3 ADD MSTORE PUSH32 0x726563656976655F6D6573736167655F65766D00000000000000000000000000 PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH2 0x1728 PUSH1 0xC0 DUP4 ADD DUP7 PUSH2 0x168C JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x173A DUP2 DUP7 PUSH2 0x168C JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x11D2 DUP2 DUP6 PUSH2 0xEAA JUMP JUMPDEST PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP4 AND DUP2 MSTORE PUSH1 0x0 DUP3 MLOAD PUSH2 0x1788 DUP2 PUSH1 0x4 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0xE86 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD PUSH1 0x4 ADD SWAP4 SWAP3 POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DUP9 SWAP3 PUSH20 0xE6BEA1307B8D9BAC0F5EE0F7D320B227DED625D2 PUSH26 0x374D9E4EBF1F931164736F6C6343000814003300000000000000 ", - "sourceMap": "527:3163:15:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;252:39:0;;;;;;;;;;;;;;;;;;212:42:16;200:55;;;182:74;;170:2;155:18;252:39:0;;;;;;;;872:667;;;;;;;;;;-1:-1:-1;872:667:0;;;;;:::i;:::-;;:::i;:::-;;703:23:15;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;447:419:0:-;;;;;;;;;;-1:-1:-1;447:419:0;;;;;:::i;:::-;;:::i;1161:736:15:-;;;;;;:::i;:::-;;:::i;652:45::-;;;;;;;;;;;;;;;858:28;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;872:667:0:-;1119:19;1151:7;;1141:18;;;;;;;:::i;:::-;;;;;;;;;1188:218;;;1141:18;-1:-1:-1;1188:35:0;:7;:35;;;;:218;;1241:9;;1268:11;;;;1297:13;;;;1141:18;;1357:11;;;;1386:6;;1188:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1170:276;;1424:22;;;;;;;;;;;;;;1170:276;1109:430;872:667;;;;;;;;;;:::o;703:23:15:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;447:419:0:-;624:19;656:7;;646:18;;;;;;;:::i;:::-;;;;;;;;;680:80;;;646:18;-1:-1:-1;680:28:0;:7;:28;;;;:80;;709:9;;720:11;;;;733:13;;;;646:18;;680:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;675:128;;781:22;;;;;;;;;;;;;;675:128;814:45;823:11;;836:13;;851:7;;814:8;:45::i;:::-;614:252;447:419;;;;;;;:::o;1161:736:15:-;1362:30;1419:21;:10;:19;:21::i;:::-;1454:7;;1395:76;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1362:109;;1481:20;1504:43;1529:17;1504:24;:43::i;:::-;1481:66;;1584:10;:38;;;1630:9;1662:4;1681:16;;1711:18;;1743:7;1764:10;1584:200;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1823:67:15;;;;;:20;:7;:20;;-1:-1:-1;1823:20:15;;-1:-1:-1;1823:67:15;;-1:-1:-1;1844:16:15;;;;1862:18;;;;1882:7;;1823:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1317:580;;1161:736;;;;;;:::o;858:28::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3344:344::-;3513:20;;3560:71;;;;3584:7;3560:71;:::i;:::-;3657:24;;;;;;;;;;;;;;;;;;3512:119;;-1:-1:-1;3512:119:15;-1:-1:-1;3641:13:15;;:40;3512:119;3641:13;:40;:::i;:::-;-1:-1:-1;3641:40:15;;;;;;;;;;;;:::i;991:555:11:-;1103:26;;1050:13;14278:15:16;;;14295:66;14274:88;1103:26:11;;;14262:101:16;1050:13:11;1075:25;;14379:12:16;;1103:26:11;;;;;;-1:-1:-1;;1103:26:11;;;1139:44;;;;;;;;;1103:26;1139:44;;;1220:13;;1230:2;1220:13;;;;;;;;;1103:26;;-1:-1:-1;;;1220:13:11;;;;;;;;;;-1:-1:-1;1220:13:11;1193:40;;1244:20;:11;1256:1;1244:14;;;;;;;;:::i;:::-;;;;:20;;;;;;;;;;;1274;:11;1286:1;1274:14;;;;;;;;:::i;:::-;;;;:20;;;;;;;;;;;1310:9;1305:198;1325:2;1321:1;:6;1305:198;;;1373:10;1409:1;1390:12;1403:1;1390:15;;;;;;;;:::i;:::-;;;;;1373:39;;1390:15;;;;:20;;;:15;1384:27;;1373:39;;;;;;:::i;:::-;;;;;;;1348:11;1364:5;:1;1368;1364:5;:::i;:::-;1360:9;;:1;:9;:::i;:::-;1348:22;;;;;;;;:::i;:::-;;;;:64;;;;;;;;;;;1451:10;1468:12;1481:1;1468:15;;;;;;;;:::i;:::-;;;;;;1451:41;;1468:15;;;;;1486:4;1462:29;;1451:41;;;;;;:::i;:::-;;;;;;;1426:11;1442:5;:1;1446;1442:5;:::i;:::-;1438:9;;:1;:9;:::i;:::-;1426:22;;;;;;;;:::i;:::-;;;;:66;;;;;;;;;;-1:-1:-1;1329:3:11;;;:::i;:::-;;;1305:198;;;-1:-1:-1;1527:11:11;991:555;-1:-1:-1;;;;991:555:11:o;1903:1435:15:-;2006:12;2572:22;;2644:24;2652:4;2644:22;:24::i;:::-;2682:17;2597:112;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;2597:112:15;;;2769:1;2756:15;;;;;;;;;2597:112;-1:-1:-1;2720:33:15;;2597:112;2756:15;;;;;;;;;;;;;;;;;;;;2720:51;;2781:37;;;;;;;;;;;;;;;;;:17;2799:1;2781:20;;;;;;;;:::i;:::-;;;;;;:37;;;;2828:39;;;;;;;;;;;;;;;;;:17;2846:1;2828:20;;;;;;;;:::i;:::-;;;;;;:39;;;;2877:32;;;;;;;;;;;;;;;;;:17;2895:1;2877:20;;;;;;;;:::i;:::-;;;;;;;;;;:32;2951:15;;;2964:1;2951:15;;;;;;;;;2920:28;;2951:15;;;;;;;;;;;;;;;;;;;;2920:46;;2976:26;;;;;;;;;;;;;;;;;:12;2989:1;2976:15;;;;;;;;:::i;:::-;;;;;;:26;;;;3012;;;;;;;;;;;;;;;;;:12;3025:1;3012:15;;;;;;;;:::i;:::-;;;;;;:26;;;;3048:25;;;;;;;;;;;;;;;;;:12;3061:1;3048:15;;;;;;;;:::i;:::-;;;;;;:25;;;;3084:23;3189:17;3220:12;3246:9;3130:135;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;3130:135:15;;;;;;;;;;;-1:-1:-1;3283:48:15;;3300:18;;3130:135;;;3283:48;;:::i;:::-;;;;;;;;;;;;;3276:55;;;;;;1903:1435;;;:::o;267:348:16:-;319:8;329:6;383:3;376:4;368:6;364:17;360:27;350:55;;401:1;398;391:12;350:55;-1:-1:-1;424:20:16;;467:18;456:30;;453:50;;;499:1;496;489:12;453:50;536:4;528:6;524:17;512:29;;588:3;581:4;572:6;564;560:19;556:30;553:39;550:59;;;605:1;602;595:12;550:59;267:348;;;;;:::o;620:1437::-;771:6;779;787;795;803;811;819;827;835;843;896:3;884:9;875:7;871:23;867:33;864:53;;;913:1;910;903:12;864:53;949:9;936:23;926:33;;1010:2;999:9;995:18;982:32;1033:18;1074:2;1066:6;1063:14;1060:34;;;1090:1;1087;1080:12;1060:34;1129:59;1180:7;1171:6;1160:9;1156:22;1129:59;:::i;:::-;1207:8;;-1:-1:-1;1103:85:16;-1:-1:-1;1295:2:16;1280:18;;1267:32;;-1:-1:-1;1311:16:16;;;1308:36;;;1340:1;1337;1330:12;1308:36;1379:61;1432:7;1421:8;1410:9;1406:24;1379:61;:::i;:::-;1459:8;;-1:-1:-1;1353:87:16;-1:-1:-1;1547:2:16;1532:18;;1519:32;;-1:-1:-1;1563:16:16;;;1560:36;;;1592:1;1589;1582:12;1560:36;1631:61;1684:7;1673:8;1662:9;1658:24;1631:61;:::i;:::-;1711:8;;-1:-1:-1;1605:87:16;-1:-1:-1;1799:3:16;1784:19;;1771:33;;-1:-1:-1;1816:16:16;;;1813:36;;;1845:1;1842;1835:12;1813:36;;1884:61;1937:7;1926:8;1915:9;1911:24;1884:61;:::i;:::-;1858:87;;1964:8;1954:18;;;1991:8;1981:18;;;2046:3;2035:9;2031:19;2018:33;2008:43;;620:1437;;;;;;;;;;;;;:::o;2062:250::-;2147:1;2157:113;2171:6;2168:1;2165:13;2157:113;;;2247:11;;;2241:18;2228:11;;;2221:39;2193:2;2186:10;2157:113;;;-1:-1:-1;;2304:1:16;2286:16;;2279:27;2062:250::o;2317:330::-;2359:3;2397:5;2391:12;2424:6;2419:3;2412:19;2440:76;2509:6;2502:4;2497:3;2493:14;2486:4;2479:5;2475:16;2440:76;:::i;:::-;2561:2;2549:15;-1:-1:-1;;2545:88:16;2536:98;;;;2636:4;2532:109;;2317:330;-1:-1:-1;;2317:330:16:o;2652:220::-;2801:2;2790:9;2783:21;2764:4;2821:45;2862:2;2851:9;2847:18;2839:6;2821:45;:::i;:::-;2813:53;2652:220;-1:-1:-1;;;2652:220:16:o;2877:1078::-;2998:6;3006;3014;3022;3030;3038;3046;3099:3;3087:9;3078:7;3074:23;3070:33;3067:53;;;3116:1;3113;3106:12;3067:53;3152:9;3139:23;3129:33;;3213:2;3202:9;3198:18;3185:32;3236:18;3277:2;3269:6;3266:14;3263:34;;;3293:1;3290;3283:12;3263:34;3332:59;3383:7;3374:6;3363:9;3359:22;3332:59;:::i;:::-;3410:8;;-1:-1:-1;3306:85:16;-1:-1:-1;3498:2:16;3483:18;;3470:32;;-1:-1:-1;3514:16:16;;;3511:36;;;3543:1;3540;3533:12;3511:36;3582:61;3635:7;3624:8;3613:9;3609:24;3582:61;:::i;:::-;3662:8;;-1:-1:-1;3556:87:16;-1:-1:-1;3750:2:16;3735:18;;3722:32;;-1:-1:-1;3766:16:16;;;3763:36;;;3795:1;3792;3785:12;3763:36;;3834:61;3887:7;3876:8;3865:9;3861:24;3834:61;:::i;:::-;2877:1078;;;;-1:-1:-1;2877:1078:16;;-1:-1:-1;2877:1078:16;;;;3808:87;;-1:-1:-1;;;2877:1078:16:o;3960:1010::-;4073:6;4081;4089;4097;4105;4113;4166:2;4154:9;4145:7;4141:23;4137:32;4134:52;;;4182:1;4179;4172:12;4134:52;4222:9;4209:23;4251:18;4292:2;4284:6;4281:14;4278:34;;;4308:1;4305;4298:12;4278:34;4347:59;4398:7;4389:6;4378:9;4374:22;4347:59;:::i;:::-;4425:8;;-1:-1:-1;4321:85:16;-1:-1:-1;4513:2:16;4498:18;;4485:32;;-1:-1:-1;4529:16:16;;;4526:36;;;4558:1;4555;4548:12;4526:36;4597:61;4650:7;4639:8;4628:9;4624:24;4597:61;:::i;:::-;4677:8;;-1:-1:-1;4571:87:16;-1:-1:-1;4765:2:16;4750:18;;4737:32;;-1:-1:-1;4781:16:16;;;4778:36;;;4810:1;4807;4800:12;4778:36;;4849:61;4902:7;4891:8;4880:9;4876:24;4849:61;:::i;:::-;3960:1010;;;;-1:-1:-1;3960:1010:16;;-1:-1:-1;3960:1010:16;;4929:8;;3960:1010;-1:-1:-1;;;3960:1010:16:o;5231:383::-;5428:2;5417:9;5410:21;5391:4;5454:45;5495:2;5484:9;5480:18;5472:6;5454:45;:::i;:::-;5547:9;5539:6;5535:22;5530:2;5519:9;5515:18;5508:50;5575:33;5601:6;5593;5575:33;:::i;:::-;5567:41;5231:383;-1:-1:-1;;;;;5231:383:16:o;5619:271::-;5802:6;5794;5789:3;5776:33;5758:3;5828:16;;5853:13;;;5828:16;5619:271;-1:-1:-1;5619:271:16:o;5895:326::-;5984:6;5979:3;5972:19;6036:6;6029:5;6022:4;6017:3;6013:14;6000:43;;6088:1;6081:4;6072:6;6067:3;6063:16;6059:27;6052:38;5954:3;6210:4;-1:-1:-1;;6135:2:16;6127:6;6123:15;6119:88;6114:3;6110:98;6106:109;6099:116;;5895:326;;;;:::o;6226:844::-;6585:6;6574:9;6567:25;6628:3;6623:2;6612:9;6608:18;6601:31;6548:4;6655:63;6713:3;6702:9;6698:19;6690:6;6682;6655:63;:::i;:::-;6766:9;6758:6;6754:22;6749:2;6738:9;6734:18;6727:50;6800;6843:6;6835;6827;6800:50;:::i;:::-;6786:64;;6886:6;6881:2;6870:9;6866:18;6859:34;6942:9;6934:6;6930:22;6924:3;6913:9;6909:19;6902:51;6970:50;7013:6;7005;6997;6970:50;:::i;:::-;6962:58;;;7057:6;7051:3;7040:9;7036:19;7029:35;6226:844;;;;;;;;;;;;:::o;7075:277::-;7142:6;7195:2;7183:9;7174:7;7170:23;7166:32;7163:52;;;7211:1;7208;7201:12;7163:52;7243:9;7237:16;7296:5;7289:13;7282:21;7275:5;7272:32;7262:60;;7318:1;7315;7308:12;7357:437;7436:1;7432:12;;;;7479;;;7500:61;;7554:4;7546:6;7542:17;7532:27;;7500:61;7607:2;7599:6;7596:14;7576:18;7573:38;7570:218;;7644:77;7641:1;7634:88;7745:4;7742:1;7735:15;7773:4;7770:1;7763:15;7570:218;;7357:437;;;:::o;7799:581::-;8072:6;8061:9;8054:25;8115:3;8110:2;8099:9;8095:18;8088:31;8035:4;8142:63;8200:3;8189:9;8185:19;8177:6;8169;8142:63;:::i;:::-;8253:9;8245:6;8241:22;8236:2;8225:9;8221:18;8214:50;8281;8324:6;8316;8308;8281:50;:::i;:::-;8273:58;;;8367:6;8362:2;8351:9;8347:18;8340:34;7799:581;;;;;;;;;:::o;8385:410::-;8592:2;8581:9;8574:21;8555:4;8618:45;8659:2;8648:9;8644:18;8636:6;8618:45;:::i;:::-;8711:9;8703:6;8699:22;8694:2;8683:9;8679:18;8672:50;8739;8782:6;8774;8766;8739:50;:::i;:::-;8731:58;8385:410;-1:-1:-1;;;;;;8385:410:16:o;8800:822::-;9082:4;9111:42;9192:2;9184:6;9180:15;9169:9;9162:34;9232:3;9227:2;9216:9;9212:18;9205:31;9259:63;9317:3;9306:9;9302:19;9294:6;9286;9259:63;:::i;:::-;9370:9;9362:6;9358:22;9353:2;9342:9;9338:18;9331:50;9404;9447:6;9439;9431;9404:50;:::i;:::-;9390:64;;9502:9;9494:6;9490:22;9485:2;9474:9;9470:18;9463:50;9530:33;9556:6;9548;9530:33;:::i;:::-;9522:41;;;9612:2;9604:6;9600:15;9594:3;9583:9;9579:19;9572:44;;8800:822;;;;;;;;;;:::o;9627:598::-;9890:2;9879:9;9872:21;9853:4;9916:62;9974:2;9963:9;9959:18;9951:6;9943;9916:62;:::i;:::-;10026:9;10018:6;10014:22;10009:2;9998:9;9994:18;9987:50;10060;10103:6;10095;10087;10060:50;:::i;:::-;10046:64;;10158:9;10150:6;10146:22;10141:2;10130:9;10126:18;10119:50;10186:33;10212:6;10204;10186:33;:::i;:::-;10178:41;9627:598;-1:-1:-1;;;;;;;;9627:598:16:o;10230:184::-;10282:77;10279:1;10272:88;10379:4;10376:1;10369:15;10403:4;10400:1;10393:15;10419:778;10462:5;10515:3;10508:4;10500:6;10496:17;10492:27;10482:55;;10533:1;10530;10523:12;10482:55;10569:6;10556:20;10595:18;10632:2;10628;10625:10;10622:36;;;10638:18;;:::i;:::-;10772:2;10766:9;10834:4;10826:13;;-1:-1:-1;;10822:22:16;;;10846:2;10818:31;10814:40;10802:53;;;10870:18;;;10890:22;;;10867:46;10864:72;;;10916:18;;:::i;:::-;10956:10;10952:2;10945:22;10991:2;10983:6;10976:18;11037:3;11030:4;11025:2;11017:6;11013:15;11009:26;11006:35;11003:55;;;11054:1;11051;11044:12;11003:55;11118:2;11111:4;11103:6;11099:17;11092:4;11084:6;11080:17;11067:54;11165:1;11158:4;11153:2;11145:6;11141:15;11137:26;11130:37;11185:6;11176:15;;;;;;10419:778;;;;:::o;11202:543::-;11290:6;11298;11351:2;11339:9;11330:7;11326:23;11322:32;11319:52;;;11367:1;11364;11357:12;11319:52;11407:9;11394:23;11436:18;11477:2;11469:6;11466:14;11463:34;;;11493:1;11490;11483:12;11463:34;11516:50;11558:7;11549:6;11538:9;11534:22;11516:50;:::i;:::-;11506:60;;11619:2;11608:9;11604:18;11591:32;11575:48;;11648:2;11638:8;11635:16;11632:36;;;11664:1;11661;11654:12;11632:36;;11687:52;11731:7;11720:8;11709:9;11705:24;11687:52;:::i;:::-;11677:62;;;11202:543;;;;;:::o;11876:545::-;11978:2;11973:3;11970:11;11967:448;;;12014:1;12039:5;12035:2;12028:17;12084:4;12080:2;12070:19;12154:2;12142:10;12138:19;12135:1;12131:27;12125:4;12121:38;12190:4;12178:10;12175:20;12172:47;;;-1:-1:-1;12213:4:16;12172:47;12268:2;12263:3;12259:12;12256:1;12252:20;12246:4;12242:31;12232:41;;12323:82;12341:2;12334:5;12331:13;12323:82;;;12386:17;;;12367:1;12356:13;12323:82;;;12327:3;;;11967:448;11876:545;;;:::o;12657:1471::-;12783:3;12777:10;12810:18;12802:6;12799:30;12796:56;;;12832:18;;:::i;:::-;12861:97;12951:6;12911:38;12943:4;12937:11;12911:38;:::i;:::-;12905:4;12861:97;:::i;:::-;13013:4;;13077:2;13066:14;;13094:1;13089:782;;;;13915:1;13932:6;13929:89;;;-1:-1:-1;13984:19:16;;;13978:26;13929:89;12563:66;12554:1;12550:11;;;12546:84;12542:89;12532:100;12638:1;12634:11;;;12529:117;14031:81;;13059:1063;;13089:782;11823:1;11816:14;;;11860:4;11847:18;;-1:-1:-1;;13125:79:16;;;13302:236;13316:7;13313:1;13310:14;13302:236;;;13405:19;;;13399:26;13384:42;;13497:27;;;;13465:1;13453:14;;;;13332:19;;13302:236;;;13306:3;13566:6;13557:7;13554:19;13551:261;;;13627:19;;;13621:26;13728:66;13710:1;13706:14;;;13722:3;13702:24;13698:97;13694:102;13679:118;13664:134;;13551:261;-1:-1:-1;;;;;13858:1:16;13842:14;;;13838:22;13825:36;;-1:-1:-1;12657:1471:16:o;14402:184::-;14454:77;14451:1;14444:88;14551:4;14548:1;14541:15;14575:4;14572:1;14565:15;14591:184;14643:77;14640:1;14633:88;14740:4;14737:1;14730:15;14764:4;14761:1;14754:15;14780:168;14853:9;;;14884;;14901:15;;;14895:22;;14881:37;14871:71;;14922:18;;:::i;:::-;14780:168;;;;:::o;14953:125::-;15018:9;;;15039:10;;;15036:36;;;15052:18;;:::i;15083:195::-;15122:3;15153:66;15146:5;15143:77;15140:103;;15223:18;;:::i;:::-;-1:-1:-1;15270:1:16;15259:13;;15083:195::o;15283:1322::-;15523:2;15512:9;15505:21;15486:4;15546:1;15579:6;15573:13;15609:36;15635:9;15609:36;:::i;:::-;15681:6;15676:2;15665:9;15661:18;15654:34;15707:3;15729:1;15761:2;15750:9;15746:18;15778:1;15773:216;;;;16003:1;15998:381;;;;15739:640;;15773:216;15836:66;15825:9;15821:82;15816:2;15805:9;15801:18;15794:110;15976:2;15964:6;15957:14;15950:22;15947:1;15943:30;15932:9;15928:46;15924:55;15917:62;;15773:216;;15998:381;16029:6;16026:1;16019:17;16059:4;16104:2;16101:1;16091:16;16129:1;16143:180;16157:6;16154:1;16151:13;16143:180;;;16250:14;;16226:17;;;16222:26;;16215:50;16293:16;;;;16172:10;;16143:180;;;16347:17;;16343:26;;;-1:-1:-1;;;15739:640:16;;;;;;16426:9;16421:3;16417:19;16410:4;16399:9;16395:20;16388:49;16460:30;16486:3;16478:6;16460:30;:::i;:::-;16446:44;;16538:9;16530:6;16526:22;16521:2;16510:9;16506:18;16499:50;16566:33;16592:6;16584;16566:33;:::i;16610:616::-;16662:3;16700:5;16694:12;16727:6;16722:3;16715:19;16753:4;16794:2;16789:3;16785:12;16819:11;16846;16839:18;;16896:6;16893:1;16889:14;16882:5;16878:26;16866:38;;16938:2;16931:5;16927:14;16959:1;16969:231;16983:6;16980:1;16977:13;16969:231;;;17054:5;17048:4;17044:16;17039:3;17032:29;17082:38;17115:4;17106:6;17100:13;17082:38;:::i;:::-;17178:12;;;;17074:46;-1:-1:-1;17143:15:16;;;;17005:1;16998:9;16969:231;;;-1:-1:-1;17216:4:16;;16610:616;-1:-1:-1;;;;;;;16610:616:16:o;17231:908::-;17675:3;17664:9;17657:22;17716:2;17710:3;17699:9;17695:19;17688:31;17756:21;17750:3;17739:9;17735:19;17728:50;17816:3;17809:4;17798:9;17794:20;17787:33;17638:4;17843:56;17894:3;17883:9;17879:19;17871:6;17843:56;:::i;:::-;17947:9;17939:6;17935:22;17930:2;17919:9;17915:18;17908:50;17981:43;18017:6;18009;17981:43;:::i;:::-;17967:57;;18072:9;18064:6;18060:22;18055:2;18044:9;18040:18;18033:50;18100:33;18126:6;18118;18100:33;:::i;18144:430::-;18341:66;18333:6;18329:79;18324:3;18317:92;18299:3;18438:6;18432:13;18454:74;18521:6;18517:1;18512:3;18508:11;18501:4;18493:6;18489:17;18454:74;:::i;:::-;18548:16;;;;18566:1;18544:24;;18144:430;-1:-1:-1;;;18144:430:16:o" - }, - "methodIdentifiers": { - "chainName()": "1c93b03a", - "execute(bytes32,string,string,bytes)": "49160658", - "executeWithToken(bytes32,string,string,bytes,string,uint256)": "1a98b2e0", - "gasService()": "6a22d8cc", - "gateway()": "116191b6", - "send(string,string,string)": "5615264d", - "storedMessage()": "b2f6cbbe" - } - }, - "metadata": "{\"compiler\":{\"version\":\"0.8.20+commit.a1b79de6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"gateway_\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"gasReceiver_\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"chainName_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotApprovedByGateway\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"chainName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"}],\"name\":\"execute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"commandId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"sourceChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"sourceAddress\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"payload\",\"type\":\"bytes\"},{\"internalType\":\"string\",\"name\":\"tokenSymbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"executeWithToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gasService\",\"outputs\":[{\"internalType\":\"contract IAxelarGasService\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gateway\",\"outputs\":[{\"internalType\":\"contract IAxelarGateway\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"destinationChain\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"destinationAddress\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"message\",\"type\":\"string\"}],\"name\":\"send\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"storedMessage\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"sender\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"message\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/__tests__/contracts/SendReceive.sol\":\"SendReceive\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[]},\"sources\":{\"@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol\":{\"keccak256\":\"0x2a88d046f9cdc664afc7b788d6c5b534d361b46fb45ab7abf721a58dd813359b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ac48adfa686aa78e2474bcb72f49791b631bd5dd15e0991ccd91b9660caacdb\",\"dweb:/ipfs/QmQ7uFDHagPUDq93T4vaeANzLE8J8Ch3jcdTAdNT7kkfEW\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarExecutable.sol\":{\"keccak256\":\"0x4279ef3b4fe5e7082f39c665d4aeddc6d84fcc6fadaacd1d8ae604ba6146b8e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afee5b713aa8fb3bf1b467706701337461e71c12afe35bc2f8e5371674b9dbc5\",\"dweb:/ipfs/QmVT92dDB9eDVcwnVYEfofZ1az1b5Fy1MaqGBpSroSZjwB\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol\":{\"keccak256\":\"0x7ad77d3af41f342e9032889a7b5aa224ab0c6dfaf9ce9350fe403d4a596c5eae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc2358f1f1138cd742a7cfdfc83420c488c19c3b3e39d703482e124e453953ee\",\"dweb:/ipfs/QmYki4j2yWrixJVs955DyS1ZmLD5zcxe8ss52w6DLBLRi4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol\":{\"keccak256\":\"0x98a66ec4f5c9e1e444ed39be682195834417cf2cd160db0c56f60e225c826be4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b21a2f868801ae2a1ce06126060973e5786f8bf5a73d7efefc33433a7a6c332c\",\"dweb:/ipfs/QmYoS5da6wttPiwkfQ2XuxzBgKFuVwTM6ZQhKkdEqzNtR2\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IContractIdentifier.sol\":{\"keccak256\":\"0x21a94655f7f1ed3d7188bd38ce6187892c615b80f9a74e123cbc38113d855a35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e1f30e159d40a9f8431c26955a584507bc23a30f19380c723acdb4182ba7c1\",\"dweb:/ipfs/QmXb965di5pU3m3W36k19ZX8m6qCDaEi1jEt6NocqrGPXj\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IGovernable.sol\":{\"keccak256\":\"0x686c534975bfc4e00f89be5e4a779a41a63f7c5fc204429c839bcdbf09584fd0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62a095681384a2be0b6ecb31729ff6507d663559d1f3d0dd5d1f6ba8ac6a1c95\",\"dweb:/ipfs/Qmf8FZX4w3e49LsF1Vnn7u63w8KeuLiHVAKCmbgGdfuTG4\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IImplementation.sol\":{\"keccak256\":\"0xa7f275514d44bec3ab8ab8c768736329174d7cc6c5cd329c3509a66bce9cd468\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://983e8c97e4916b47244d71fa104fc368100991561fe8c28f1a6bae043763754d\",\"dweb:/ipfs/QmeFeJsCowShVsAe6RMiz3qjY2JTyRNYRRu1oYQcN9T6uV\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IInterchainGasEstimation.sol\":{\"keccak256\":\"0x5463c0d3632e53d3906796d4283a627bd7ebc63d0092685715d98340db9516ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9cd73f4b82b70f3e93b23ac591696de14b1cc88e1e60a5f66b1ac8b0e2ecd2ec\",\"dweb:/ipfs/Qmd8psz6tmcmop1iD6fqX8vCRfrkVm7aGMZCXEbsiVjBV8\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IOwnable.sol\":{\"keccak256\":\"0x5cb5691c9293e3011e1b133485411e8933ca1e110f2436a663df12991d134bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cdbeb0f7ec37155f976a3bdd9f13055c80f1b2d17043740d387403cb8d65a096\",\"dweb:/ipfs/QmXKLyWetJGgwUuEtexjPxfeZdgUywhrHS4898fQSFkC5y\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IUpgradable.sol\":{\"keccak256\":\"0x4e1f84c9711c3c15c77aee5fce8de99fcb49a902c7e6ff24626c924a60b8c22d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2f36d8fb4b365e78663579bfd0d3252a6e290f6dd763d9275f4c6f5f51577d9\",\"dweb:/ipfs/QmZjhnPbjqnRztwbYYs1BdxRbSsAmSLkCfE9SNRk4jMFMe\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/libs/AddressString.sol\":{\"keccak256\":\"0x4afddc49329b9a253af8066b60be50ed28c9fbeff2743ca4f3552d9e6738727c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf6d1c87672f45e9be580bda0962bae9accfce80535531d0940f66c690ea9ddb\",\"dweb:/ipfs/QmVDovpyQ5kRNb6KDMqmnKNq24GETB8PJdptKovy1a2sT7\"]},\"@axelar-network/axelar-gmp-sdk-solidity/contracts/types/GasEstimationTypes.sol\":{\"keccak256\":\"0x7da6d20700698dfae8f8252c442e4bebd29030ffcdac4fbbe986f1ddbcb6365c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://992662e49dbc87ab994d8b68c5183dcd5453c71d04f98816b68cb00589938058\",\"dweb:/ipfs/QmYiuEMnYZod1iRTaEcqbJcUp3LwdDPyt2M7KUaqECivau\"]},\"src/__tests__/contracts/SendReceive.sol\":{\"keccak256\":\"0x93308dc6308466686b0cd4328df8e90f27f2932298bd4a54019a92f991b60013\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3249470ad03e63b2e6062bea340d230578a3484287c040f04d356810e50431d6\",\"dweb:/ipfs/QmcDH2FKhrPJseuN39pzk6D3fyLs1kBFSR8ehhcw9xauxU\"]}},\"version\":1}" - } - } - } - } -} \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/deployed_addresses.json b/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/deployed_addresses.json deleted file mode 100644 index 594d570e..00000000 --- a/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/deployed_addresses.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "AgoricProxyModule#AgoricProxy": "0x41056e7dA76EE9e88f30895CFC17b72C69cd276E" -} diff --git a/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/journal.jsonl b/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/journal.jsonl deleted file mode 100644 index c1551033..00000000 --- a/packages/axelar-local-dev-cosmos/ignition/deployments/chain-84532/journal.jsonl +++ /dev/null @@ -1,8 +0,0 @@ - -{"chainId":84532,"type":"DEPLOYMENT_INITIALIZE"} -{"artifactId":"AgoricProxyModule#AgoricProxy","constructorArgs":["0xe432150cce91c13a887f7D836923d5597adD8E31","0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6","Avalanche"],"contractName":"AgoricProxy","dependencies":[],"from":"0x20e68f6c276ac6e297ac46c84ab260928276691d","futureId":"AgoricProxyModule#AgoricProxy","futureType":"NAMED_ARTIFACT_CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} -{"futureId":"AgoricProxyModule#AgoricProxy","networkInteraction":{"data":"0x60c06040523480156200001157600080fd5b5060405162002bf938038062002bf98339810160408190526200003491620000d3565b826001600160a01b0381166200005d5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0390811660805282811660a052600080546001600160a01b03191691851691909117905560016200009682826200025c565b5050505062000328565b80516001600160a01b0381168114620000b857600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600060608486031215620000e957600080fd5b620000f484620000a0565b9250602062000105818601620000a0565b60408601519093506001600160401b03808211156200012357600080fd5b818701915087601f8301126200013857600080fd5b8151818111156200014d576200014d620000bd565b604051601f8201601f19908116603f01168101908382118183101715620001785762000178620000bd565b816040528281528a868487010111156200019157600080fd5b600093505b82841015620001b5578484018601518185018701529285019262000196565b60008684830101528096505050505050509250925092565b600181811c90821680620001e257607f821691505b6020821081036200020357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200025757600081815260208120601f850160051c81016020861015620002325750805b601f850160051c820191505b8181101562000253578281556001016200023e565b5050505b505050565b81516001600160401b03811115620002785762000278620000bd565b6200029081620002898454620001cd565b8462000209565b602080601f831160018114620002c85760008415620002af5750858301515b600019600386901b1c1916600185901b17855562000253565b600085815260208120601f198616915b82811015620002f957888601518255948401946001909101908401620002d8565b5085821015620003185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a05161288962000370600039600081816101f001528181610525015261079f01526000818160f80152818161026b0152818161042b015261085901526128896000f3fe608060405260043610620000735760003560e01c80634916065811620000495780634916065814620001925780635e8846f614620001b75780636a22d8cc14620001dc57620000b1565b8063116191b614620000e45780631a98b2e014620001445780631c93b03a146200016b57620000b1565b36620000b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587490602001620000a7565b348015620000f157600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156200015157600080fd5b50620001696200016336600462000971565b62000212565b005b3480156200017857600080fd5b50620001836200033c565b6040516200013b919062000aca565b3480156200019f57600080fd5b5062000169620001b136600462000ae6565b620003d2565b348015620001c457600080fd5b506200011a620001d636600462000bc3565b62000503565b348015620001e957600080fd5b506200011a7f000000000000000000000000000000000000000000000000000000000000000081565b600085856040516200022692919062000c9c565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed990620002b2908e908e908e908e908e9089908d908d908d9060040162000cf5565b6020604051808303816000875af1158015620002d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f8919062000d5a565b6200032f576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050505050565b600180546200034b9062000d7e565b80601f0160208091040260200160405190810160405280929190818152602001828054620003799062000d7e565b8015620003ca5780601f106200039e57610100808354040283529160200191620003ca565b820191906000526020600020905b815481529060010190602001808311620003ac57829003601f168201915b505050505081565b60008282604051620003e692919062000c9c565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c3906200046c908b908b908b908b908b90899060040162000dd3565b6020604051808303816000875af11580156200048c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004b2919062000d5a565b620004e9576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620004f987878787878762000590565b5050505050505050565b60008054604051829173ffffffffffffffffffffffffffffffffffffffff16907f0000000000000000000000000000000000000000000000000000000000000000908590620005529062000917565b620005609392919062000e18565b604051809103906000f0801580156200057d573d6000803e3d6000fd5b509392505050565b505050505050505050565b6000620005d385858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506200050392505050565b90508073ffffffffffffffffffffffffffffffffffffffff167f9281645ccd9d592d9f6456fd9b95f6d2e0d36ebcc2f387399d5ac2b7c7ad7e6e86868a8a8a8a604051620006279695949392919062000e5c565b60405180910390a2604080516001808252818301909252600091816020015b604080518082019091526000815260606020820152815260200190600190039081620006465790505060408051808201825260018152815173ffffffffffffffffffffffffffffffffffffffff861660208281019190915293945090928301910160405160208183030381529060405281525081600081518110620006cf57620006cf62000eab565b602002602001018190525060008060e01b6040518060400160405280600015158152602001848152506040516020016200070a919062000eda565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905262000748929160200162000f88565b60405160208183030381529060405290506200058589898989856040517f0c93e3bb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690630c93e3bb9066038d7ea4c6800090620007eb9030908a908a908a908a908a90869060040162000fd2565b6000604051808303818588803b1580156200080557600080fd5b505af11580156200081a573d6000803e3d6000fd5b50506040517f1c92115f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169350631c92115f92506200089b91508890889088908890889060040162001048565b600060405180830381600087803b158015620008b657600080fd5b505af1158015620008cb573d6000803e3d6000fd5b505050507fea1a07f81079879fea1a2eabafefd6f25bc76921237faf7fce963aeaa53c7ea185858585856040516200090895949392919062001048565b60405180910390a15050505050565b6117be806200109683390190565b60008083601f8401126200093857600080fd5b50813567ffffffffffffffff8111156200095157600080fd5b6020830191508360208285010111156200096a57600080fd5b9250929050565b60008060008060008060008060008060c08b8d0312156200099157600080fd5b8a35995060208b013567ffffffffffffffff80821115620009b157600080fd5b620009bf8e838f0162000925565b909b50995060408d0135915080821115620009d957600080fd5b620009e78e838f0162000925565b909950975060608d013591508082111562000a0157600080fd5b62000a0f8e838f0162000925565b909750955060808d013591508082111562000a2957600080fd5b5062000a388d828e0162000925565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60005b8381101562000a7557818101518382015260200162000a5b565b50506000910152565b6000815180845262000a9881602086016020860162000a58565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600062000adf602083018462000a7e565b9392505050565b60008060008060008060006080888a03121562000b0257600080fd5b87359650602088013567ffffffffffffffff8082111562000b2257600080fd5b62000b308b838c0162000925565b909850965060408a013591508082111562000b4a57600080fd5b62000b588b838c0162000925565b909650945060608a013591508082111562000b7257600080fd5b5062000b818a828b0162000925565b989b979a50959850939692959293505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121562000bd657600080fd5b813567ffffffffffffffff8082111562000bef57600080fd5b818401915084601f83011262000c0457600080fd5b81358181111562000c195762000c1962000b94565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171562000c625762000c6262000b94565b8160405282815287602084870101111562000c7c57600080fd5b826020860160208301376000928101602001929092525095945050505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c06020820152600062000d1160c083018a8c62000cac565b828103604084015262000d2681898b62000cac565b9050866060840152828103608084015262000d4381868862000cac565b9150508260a08301529a9950505050505050505050565b60006020828403121562000d6d57600080fd5b8151801515811462000adf57600080fd5b600181811c9082168062000d9357607f821691505b60208210810362000dcd577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b86815260806020820152600062000def60808301878962000cac565b828103604084015262000e0481868862000cac565b915050826060830152979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff80861683528085166020840152506060604083015262000e53606083018462000a7e565b95945050505050565b60608152600062000e7260608301888a62000cac565b828103602084015262000e8781878962000cac565b9050828103604084015262000e9e81858762000cac565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006020808352606083018451151582850152818501516040808187015282825180855260808801915060808160051b8901019450858401935060005b8181101562000f7a578886037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80018352845180511515875287015187870185905262000f668588018262000a7e565b965050938601939186019160010162000f17565b509398975050505050505050565b7fffffffff00000000000000000000000000000000000000000000000000000000831681526000825162000fc481600485016020870162000a58565b919091016004019392505050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a060208401526200100560a08401898b62000cac565b83810360408501526200101a81888a62000cac565b9050838103606085015262001030818762000a7e565b92505080841660808401525098975050505050505050565b6060815260006200105e60608301878962000cac565b82810360208401526200107381868862000cac565b9050828103604084015262001089818562000a7e565b9897505050505050505056fe60a06040523480156200001157600080fd5b50604051620017be380380620017be8339810160408190526200003491620001fb565b80836001600160a01b0381166200005e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b031660805262000075816200009e565b5050600180546001600160a01b0319166001600160a01b03929092169190911790555062000454565b6000808054620000ae90620002db565b80601f0160208091040260200160405190810160405280929190818152602001828054620000dc90620002db565b80156200012d5780601f1062000101576101008083540402835291602001916200012d565b820191906000526020600020905b8154815290600101906020018083116200010f57829003601f168201915b5050505050905081600090816200014591906200036a565b508160405162000156919062000436565b6040518091039020816040516200016e919062000436565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b80516001600160a01b0381168114620001ba57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620001f2578181015183820152602001620001d8565b50506000910152565b6000806000606084860312156200021157600080fd5b6200021c84620001a2565b92506200022c60208501620001a2565b60408501519092506001600160401b03808211156200024a57600080fd5b818601915086601f8301126200025f57600080fd5b815181811115620002745762000274620001bf565b604051601f8201601f19908116603f011681019083821181831017156200029f576200029f620001bf565b81604052828152896020848701011115620002b957600080fd5b620002cc836020830160208801620001d5565b80955050505050509250925092565b600181811c90821680620002f057607f821691505b6020821081036200031157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200036557600081815260208120601f850160051c81016020861015620003405750805b601f850160051c820191505b8181101562000361578281556001016200034c565b5050505b505050565b81516001600160401b03811115620003865762000386620001bf565b6200039e81620003978454620002db565b8462000317565b602080601f831160018114620003d65760008415620003bd5750858301515b600019600386901b1c1916600185901b17855562000361565b600085815260208120601f198616915b828110156200040757888601518255948401946001909101908401620003e6565b5085821015620004265787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082516200044a818460208701620001d5565b9190910192915050565b6080516113416200047d6000396000818160f50152818161026901526103ef01526113416000f3fe6080604052600436106100745760003560e01c8063491606581161004e57806349160658146101835780634fdb7f44146101a35780636a22d8cc146101c35780638da5cb5b146101f0576100b1565b8063116191b6146100e35780631a98b2e014610141578063268ca07e14610163576100b1565b366100b15760405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020015b60405180910390a2005b60405134815233907f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874906020016100a7565b3480156100ef57600080fd5b506101177f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561014d57600080fd5b5061016161015c3660046109eb565b610212565b005b34801561016f57600080fd5b5061016161017e366004610ac5565b610345565b34801561018f57600080fd5b5061016161019e366004610b31565b610398565b3480156101af57600080fd5b506101616101be366004610bd5565b6104bf565b3480156101cf57600080fd5b506001546101179073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101fc57600080fd5b50610205610541565b6040516101389190610c85565b60008585604051610224929190610c9f565b6040519081900381207f1876eed9000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631876eed9906102ae908e908e908e908e908e9089908d908d908d90600401610cf8565b6020604051808303816000875af11580156102cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f19190610d57565b610327576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103388a8a8a8a8a8a8a8a8a6105d3565b5050505050505050505050565b838361035182826105e9565b61039084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061065892505050565b505050505050565b600082826040516103aa929190610c9f565b6040519081900381207f5f6970c3000000000000000000000000000000000000000000000000000000008252915073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690635f6970c39061042e908b908b908b908b908b908990600401610d79565b6020604051808303816000875af115801561044d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104719190610d57565b6104a7576040517f500c44b400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104b587878787878761074e565b5050505050505050565b81816104cb82826105e9565b61053b604051602001610527907f307830303030303030303030303030303030303030303030303030303030303081527f30303030303030303030000000000000000000000000000000000000000000006020820152602a0190565b604051602081830303815290604052610658565b50505050565b60606000805461055090610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461057c90610dba565b80156105c95780601f1061059e576101008083540402835291602001916105c9565b820191906000526020600020905b8154815290600101906020018083116105ac57829003601f168201915b5050505050905090565b6105dd858561076f565b50505050505050505050565b81816040516105f9929190610c9f565b6040518091039020610609610541565b80519060200120146106545781816040517fde6a3cbf00000000000000000000000000000000000000000000000000000000815260040161064b929190610e0d565b60405180910390fd5b5050565b600080805461066690610dba565b80601f016020809104026020016040519081016040528092919081815260200182805461069290610dba565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b5050505050905081600090816106f59190610ea3565b50816040516107049190610fbd565b60405180910390208160405161071a9190610fbd565b604051908190038120907f389b68744f66ab26b44498e30dc68a44d33e15738476faa4017fd247ce75269d90600090a35050565b838361075a82826105e9565b610764848461076f565b505050505050505050565b6060600061077f83850185611051565b90506000815167ffffffffffffffff81111561079d5761079d610e29565b6040519080825280602002602001820160405280156107e357816020015b6040805180820190915260008152606060208201528152602001906001900390816107bb5790505b50905060005b825181101561094b57600080848381518110610807576108076111e9565b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1685848151811061083b5761083b6111e9565b6020026020010151602001516040516108549190610fbd565b6000604051808303816000865af19150503d8060008114610891576040519150601f19603f3d011682016040523d82523d6000602084013e610896565b606091505b509150915081610902576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742063616c6c206661696c6564000000000000000000000000604482015260640161064b565b604051806040016040528083151581526020018281525084848151811061092b5761092b6111e9565b60200260200101819052505050808061094390611218565b9150506107e9565b503373ffffffffffffffffffffffffffffffffffffffff167f1fc27c8074ee9ba6d8a94064cdee28ddcbc36e7b0a4c730262cb845ca06332b2826040516109929190611277565b60405180910390a2949350505050565b60008083601f8401126109b457600080fd5b50813567ffffffffffffffff8111156109cc57600080fd5b6020830191508360208285010111156109e457600080fd5b9250929050565b60008060008060008060008060008060c08b8d031215610a0a57600080fd5b8a35995060208b013567ffffffffffffffff80821115610a2957600080fd5b610a358e838f016109a2565b909b50995060408d0135915080821115610a4e57600080fd5b610a5a8e838f016109a2565b909950975060608d0135915080821115610a7357600080fd5b610a7f8e838f016109a2565b909750955060808d0135915080821115610a9857600080fd5b50610aa58d828e016109a2565b9150809450508092505060a08b013590509295989b9194979a5092959850565b60008060008060408587031215610adb57600080fd5b843567ffffffffffffffff80821115610af357600080fd5b610aff888389016109a2565b90965094506020870135915080821115610b1857600080fd5b50610b25878288016109a2565b95989497509550505050565b60008060008060008060006080888a031215610b4c57600080fd5b87359650602088013567ffffffffffffffff80821115610b6b57600080fd5b610b778b838c016109a2565b909850965060408a0135915080821115610b9057600080fd5b610b9c8b838c016109a2565b909650945060608a0135915080821115610bb557600080fd5b50610bc28a828b016109a2565b989b979a50959850939692959293505050565b60008060208385031215610be857600080fd5b823567ffffffffffffffff811115610bff57600080fd5b610c0b858286016109a2565b90969095509350505050565b60005b83811015610c32578181015183820152602001610c1a565b50506000910152565b60008151808452610c53816020860160208601610c17565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610c986020830184610c3b565b9392505050565b8183823760009101908152919050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b89815260c060208201526000610d1260c083018a8c610caf565b8281036040840152610d2581898b610caf565b90508660608401528281036080840152610d40818688610caf565b9150508260a08301529a9950505050505050505050565b600060208284031215610d6957600080fd5b81518015158114610c9857600080fd5b868152608060208201526000610d93608083018789610caf565b8281036040840152610da6818688610caf565b915050826060830152979650505050505050565b600181811c90821680610dce57607f821691505b602082108103610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b602081526000610e21602083018486610caf565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f821115610e9e57600081815260208120601f850160051c81016020861015610e7f5750805b601f850160051c820191505b8181101561039057828155600101610e8b565b505050565b815167ffffffffffffffff811115610ebd57610ebd610e29565b610ed181610ecb8454610dba565b84610e58565b602080601f831160018114610f245760008415610eee5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610390565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015610f7157888601518255948401946001909101908401610f52565b5085821015610fad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b60008251610fcf818460208701610c17565b9190910192915050565b6040805190810167ffffffffffffffff81118282101715610ffc57610ffc610e29565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561104957611049610e29565b604052919050565b6000602080838503121561106457600080fd5b823567ffffffffffffffff8082111561107c57600080fd5b818501915085601f83011261109057600080fd5b8135818111156110a2576110a2610e29565b8060051b6110b1858201611002565b91825283810185019185810190898411156110cb57600080fd5b86860192505b838310156111dc578235858111156110e95760008081fd5b860160407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0828d0381018213156111205760008081fd5b611128610fd9565b8a84013573ffffffffffffffffffffffffffffffffffffffff8116811461114f5760008081fd5b815283830135898111156111635760008081fd5b8085019450508d603f8501126111795760008081fd5b8a8401358981111561118d5761118d610e29565b61119d8c84601f84011601611002565b92508083528e848287010111156111b45760008081fd5b808486018d85013760009083018c0152808b01919091528452505091860191908601906110d1565b9998505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611270577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112fd578883037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc001855281518051151584528701518784018790526112ea87850182610c3b565b958801959350509086019060010161129e565b50909897505050505050505056fea2646970667358221220b08f19b27c5b96e2196bcc61c4069dc8fac27e30816ac61ff2278165fdda761b64736f6c63430008140033a2646970667358221220d76f009a2c0afdd386344cb8d04f1e72dbd4b3faf6896e63f6f1e3d3eb0c805964736f6c63430008140033000000000000000000000000e432150cce91c13a887f7d836923d5597add8e31000000000000000000000000be406f0189a0b4cf3a05c286473d23791dd44cc6000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000094176616c616e6368650000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} -{"futureId":"AgoricProxyModule#AgoricProxy","networkInteractionId":1,"nonce":51,"type":"TRANSACTION_PREPARE_SEND"} -{"futureId":"AgoricProxyModule#AgoricProxy","networkInteractionId":1,"nonce":51,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"1000612"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"1000000"}},"hash":"0xe4523506fa590dcef2d606a0e10e4af573d2f9dedde546183c444a45eb18d853"},"type":"TRANSACTION_SEND"} -{"futureId":"AgoricProxyModule#AgoricProxy","hash":"0xe4523506fa590dcef2d606a0e10e4af573d2f9dedde546183c444a45eb18d853","networkInteractionId":1,"receipt":{"blockHash":"0x5f10a59910d071bb8cb47b6ced4e0723b810fd111caa0c0fddaf873a46b7def1","blockNumber":27879386,"contractAddress":"0x41056e7dA76EE9e88f30895CFC17b72C69cd276E","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} -{"futureId":"AgoricProxyModule#AgoricProxy","result":{"address":"0x41056e7dA76EE9e88f30895CFC17b72C69cd276E","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol index c7884181..e70a74b5 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol @@ -149,7 +149,8 @@ contract AgoricProxy is AxelarExecutable { string calldata destinationAddress, bytes memory payload ) internal { - gasService.payNativeGasForContractCall{value: 1000000000000000}( + // TODO: come up with a better strategy to pay for gas + gasService.payNativeGasForContractCall{value: msg.value}( address(this), destinationChain, destinationAddress, diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol index 0e930392..9f257b71 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/ContractCallWithToken.sol @@ -1,5 +1,5 @@ //SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; +pragma solidity ^0.8.0; import {AxelarExecutableWithToken} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutableWithToken.sol"; import {IERC20} from "@updated-axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IERC20.sol"; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol index e9f3e0dc..37a4dbcc 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Multicall.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; +pragma solidity ^0.8.0; contract Multicall { uint256 private value; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/SendReceive.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/SendReceive.sol index 23f64455..36584000 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/SendReceive.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/SendReceive.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; +pragma solidity ^0.8.9; import {AxelarExecutable} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol"; import {IAxelarGateway} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol"; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol index 07821577..3c57a8f4 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/StakingContract.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; +pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; From 32202e13efe9224942b60517c18645e1eed85dc8 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 3 Jul 2025 13:54:05 +0500 Subject: [PATCH 56/93] chore: update hardhat config --- .../axelar-local-dev-cosmos/hardhat.config.ts | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index cc9d8a3c..fd002ba1 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -6,6 +6,21 @@ envConfig(); const { PRIVATE_KEY } = process.env; +const testnets = { + fuji: { + url: "https://api.avax-test.network/ext/bc/C/rpc", + gasPrice: 225000000000, + chainId: 43113, + accounts: [`0x${PRIVATE_KEY}`], + }, + base: { + url: "https://sepolia.base.org/", + gasPrice: 225000000000, + chainId: 84532, + accounts: [`0x${PRIVATE_KEY}`], + }, +}; + const config: HardhatUserConfig = { solidity: { compilers: [ @@ -43,18 +58,7 @@ const config: HardhatUserConfig = { url: "http://127.0.0.1:8545", chainId: 31337, }, - fuji: { - url: "https://api.avax-test.network/ext/bc/C/rpc", - gasPrice: 225000000000, - chainId: 43113, - accounts: [`0x${PRIVATE_KEY}`], - }, - base: { - url: "https://sepolia.base.org/", - gasPrice: 225000000000, - chainId: 84532, - accounts: [`0x${PRIVATE_KEY}`], - }, + ...(PRIVATE_KEY ? testnets : {}), }, paths: { sources: "./src/__tests__/contracts", From c02d388efd56eaabfea1bc55c3f4eca011809f8b Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 3 Jul 2025 14:00:45 +0500 Subject: [PATCH 57/93] ci: update when workflows are triggered --- .github/workflows/test-aptos.yml | 2 +- .github/workflows/test-cosmos.yml | 6 +++++- .github/workflows/test-evm.yml | 6 +++++- .github/workflows/test-multiversex.yml | 2 +- .github/workflows/test-sui.yml | 2 +- 5 files changed, 13 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test-aptos.yml b/.github/workflows/test-aptos.yml index 8f9d2bc5..0c88eb55 100644 --- a/.github/workflows/test-aptos.yml +++ b/.github/workflows/test-aptos.yml @@ -1,6 +1,6 @@ name: Run Tests for Aptos -on: pull_request +on: workflow_dispatch jobs: test: diff --git a/.github/workflows/test-cosmos.yml b/.github/workflows/test-cosmos.yml index dbb16145..bf21cf3b 100644 --- a/.github/workflows/test-cosmos.yml +++ b/.github/workflows/test-cosmos.yml @@ -1,5 +1,9 @@ name: Run Tests for Cosmos -on: pull_request +on: + pull_request: + push: + branches: + - main jobs: test: diff --git a/.github/workflows/test-evm.yml b/.github/workflows/test-evm.yml index 57b815c0..289fb5f7 100644 --- a/.github/workflows/test-evm.yml +++ b/.github/workflows/test-evm.yml @@ -1,5 +1,9 @@ name: Run Tests for EVM -on: pull_request +on: + pull_request: + push: + branches: + - main jobs: test: diff --git a/.github/workflows/test-multiversex.yml b/.github/workflows/test-multiversex.yml index 41d66d0c..743e74f9 100644 --- a/.github/workflows/test-multiversex.yml +++ b/.github/workflows/test-multiversex.yml @@ -1,6 +1,6 @@ name: Run Tests for MultiVersX -on: pull_request +on: workflow_dispatch jobs: test: diff --git a/.github/workflows/test-sui.yml b/.github/workflows/test-sui.yml index 027824d3..b74d6aaf 100644 --- a/.github/workflows/test-sui.yml +++ b/.github/workflows/test-sui.yml @@ -1,6 +1,6 @@ name: Run Tests for Sui -on: pull_request +on: workflow_dispatch jobs: test: From 193b166dccf945939bf455d19e03ea2a01c28e19 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 2 Jul 2025 20:13:37 +0500 Subject: [PATCH 58/93] feat(ci): run local-dev with axelar-gmp --- .github/workflows/agoric-integration.yml | 51 +++++ .gitignore | 1 + integration/agoric-sdk | 1 + integration/package.json | 26 +++ integration/scripts/deploy.mjs | 81 ++++++++ integration/scripts/setup-gmp.mjs | 80 ++++++++ integration/scripts/utils.mjs | 112 +++++++++++ integration/yarn.lock | 241 +++++++++++++++++++++++ 8 files changed, 593 insertions(+) create mode 100644 .github/workflows/agoric-integration.yml create mode 160000 integration/agoric-sdk create mode 100644 integration/package.json create mode 100755 integration/scripts/deploy.mjs create mode 100755 integration/scripts/setup-gmp.mjs create mode 100755 integration/scripts/utils.mjs create mode 100644 integration/yarn.lock diff --git a/.github/workflows/agoric-integration.yml b/.github/workflows/agoric-integration.yml new file mode 100644 index 00000000..60133b07 --- /dev/null +++ b/.github/workflows/agoric-integration.yml @@ -0,0 +1,51 @@ +name: Axelar GMP Integration Tests + +on: + pull_request: + push: + branches: + - main + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref }} + cancel-in-progress: true + +jobs: + integration: + runs-on: ubuntu-latest + env: + HOME: /home/runner/work + + steps: + - name: Checkout this repo + uses: actions/checkout@v4 + + - name: Use Node 20 + uses: actions/setup-node@v4 + with: + node-version: "20" + + - name: Install dependencies + run: npm install && cd integration && yarn install + + - name: Install Docker Compose + run: | + sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose + sudo chmod +x /usr/local/bin/docker-compose + docker-compose --version + + - name: Setup Rust + run: | + curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y + source $HOME/.cargo/env + rustup default stable + + - name: Build packages + run: npm run build + + - name: Start Chains and set Relayer + run: npm run start:cosmos + + - name: Deploy contracts on Agoric chain + run: ./integration/scripts/setup-gmp.mjs diff --git a/.gitignore b/.gitignore index d91adc75..879ac6e8 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ **/examples/metamask/abi/**.json **/.DS_Store local.json +offer.json src/types diff --git a/integration/agoric-sdk b/integration/agoric-sdk new file mode 160000 index 00000000..4dd330d2 --- /dev/null +++ b/integration/agoric-sdk @@ -0,0 +1 @@ +Subproject commit 4dd330d215bd9a229f39e2f9532aa1f6b29acc40 diff --git a/integration/package.json b/integration/package.json new file mode 100644 index 00000000..ffb7a872 --- /dev/null +++ b/integration/package.json @@ -0,0 +1,26 @@ +{ + "name": "integration", + "version": "1.0.0", + "type": "module", + "scripts": { + "prepare-env": "CONTRACT_FOLDER=../contract DEPLOY_FOLDER=../deploy node scripts/prepare-env.mjs", + "register:token": "script=/usr/src/agoric-sdk/multichain-testing/src/register-interchain-bank-assets.builder.js plan=/usr/src/upgrade-test-scripts/eval-register-interchain-bank-assets-plan.json assets='[{\"denom\":\"ibc/2CC0B1B7A981ACC74854717F221008484603BB8360E81B262411B0D830EDE9B0\",\"issuerName\":\"AXL\",\"decimalPlaces\":6}]' node scripts/deploy-contract.mjs", + "check-token": "vStorageUrl=http://localhost/agoric-lcd/agoric/vstorage/data/published.agoricNames.vbankAsset valueToFind=ibc/2CC0B1B7A981ACC74854717F221008484603BB8360E81B262411B0D830EDE9B0 waitInSeconds=30 node scripts/check-vstorage.mjs", + "deploy:contract": "script=scripts/init-contract.js plan=scripts/startAxelarGmp-plan.json node scripts/deploy-contract.mjs", + "check-axelar-gmp": "vStorageUrl=http://localhost/agoric-lcd/agoric/vstorage/data/published.agoricNames.instance valueToFind=axelarGmp waitInSeconds=30 node scripts/check-vstorage.mjs", + "make-account": "makeAccount=true node scripts/make-account.mjs", + "evm-address": "node scripts/make-account.mjs", + "send-gmp": "node scripts/gmp-via-lca.mjs", + "multicall": "node scripts/multicall.mjs" + }, + "devDependencies": { + "execa": "^9.5.2" + }, + "keywords": [], + "author": "", + "license": "ISC", + "description": "", + "dependencies": { + "viem": "^2.28.1" + } +} diff --git a/integration/scripts/deploy.mjs b/integration/scripts/deploy.mjs new file mode 100755 index 00000000..a0534cbb --- /dev/null +++ b/integration/scripts/deploy.mjs @@ -0,0 +1,81 @@ +// @ts-check +import { runCommand } from "./utils.mjs"; + +const CHAINID = "agoriclocal"; +const GAS_ADJUSTMENT = "1.2"; +const SIGN_BROADCAST_OPTS = `--keyring-backend=test --chain-id=${CHAINID} --gas=auto --gas-adjustment=${GAS_ADJUSTMENT} --yes -b block`; +const walletName = "gov1"; + +const extractFromPlan = async ({ jqCmd, planFile }) => { + const fullCmd = `jq -r '${jqCmd}' ${planFile}`; + const output = await runCommand(fullCmd, { + captureOutput: true, + }); + return output?.stdout; +}; + +const setBundles = async ({ planFile }) => { + const sourceKey = ".bundles[].fileName"; + + const result = await extractFromPlan({ jqCmd: sourceKey, planFile }); + const bundleFiles = result + ?.split("\n") + .filter(Boolean) + .map((line) => `${line}`); + return bundleFiles; +}; + +const installBundles = async ({ bundles }) => { + for (const b of bundles) { + let cmd = `echo 'Installing ${b}' && ls -sh '${b}' && agd tx swingset install-bundle --compress '@${b}' --from ${walletName} -bblock ${SIGN_BROADCAST_OPTS}`; + console.log(`Executing installation for bundle ${b}`); + await runCommand(`bash -c "${cmd}"`); + await new Promise((resolve) => setTimeout(resolve, 5000)); + } +}; + +const acceptProposal = async ({ script, permit }) => { + console.log(`Submitting proposal to evaluate ${script}`); + + const submitCommand = `agd tx gov submit-proposal swingset-core-eval ${permit} ${script} --title='Install ${script}' --description='Evaluate ${script}' --deposit=10000000ubld --from ${walletName} ${SIGN_BROADCAST_OPTS} -o json`; + await runCommand(submitCommand); + + await new Promise((resolve) => setTimeout(resolve, 5000)); + + const queryCmd = `agd query gov proposals --output json | jq -c '[.proposals[] | if .proposal_id == null then .id else .proposal_id end | tonumber] | max'`; + + const result = await runCommand(`bash -c "${queryCmd}"`, { + captureOutput: true, + }); + const proposalId = result?.stdout; + + console.log(`Voting on proposal ID ${proposalId}`); + await runCommand( + `agd tx gov vote ${proposalId} yes --from=validator ${SIGN_BROADCAST_OPTS}`, + ); + + console.log(`Fetching details for proposal ID ${proposalId}`); + const detailsCommand = `agd query gov proposals --output json | jq -c '.proposals[] | select(.proposal_id == "${proposalId}" or .id == "${proposalId}") | [.proposal_id or .id, .voting_end_time, .status]'`; + await runCommand(detailsCommand); +}; + +export const deployContract = async ({ planFile, dir }) => { + try { + const scriptName = await extractFromPlan({ jqCmd: ".script", planFile }); + const script = `${dir}/${scriptName}`; + const permitName = await extractFromPlan({ jqCmd: ".permit", planFile }); + const permit = `${dir}/${permitName}`; + + const bundles = await setBundles({ planFile }); + + console.log("script:", script); + console.log("permit:", permit); + console.log("bundles:", bundles); + + await installBundles({ bundles }); + await acceptProposal({ permit, script }); + } catch (err) { + console.error("Error:", err.message); + process.exit(1); + } +}; diff --git a/integration/scripts/setup-gmp.mjs b/integration/scripts/setup-gmp.mjs new file mode 100755 index 00000000..b02bbd70 --- /dev/null +++ b/integration/scripts/setup-gmp.mjs @@ -0,0 +1,80 @@ +#!/usr/bin/env node +// @ts-check +import { deployContract } from "./deploy.mjs"; +import { checkVStorage, runCommand } from "./utils.mjs"; +const { log } = console; + +const SDK_REPO = "https://github.com/Agoric/agoric-sdk.git"; +const SDK_DIR = "/usr/src/agoric-sdk-cp"; +const PLAN_FILE_DIR = "/usr/src/upgrade-test-scripts"; +const vbankAssetUrl = + "http://localhost/agoric-lcd/agoric/vstorage/data/published.agoricNames.vbankAsset"; +const AXL_DENOM = + "ibc/2CC0B1B7A981ACC74854717F221008484603BB8360E81B262411B0D830EDE9B0"; +const agoricNamesUrl = + "http://localhost/agoric-lcd/agoric/vstorage/data/published.agoricNames.instance"; +const contractName = "axelarGmp"; +const assets = JSON.stringify([ + { + denom: AXL_DENOM, + issuerName: "AXL", + decimalPlaces: 6, + }, +]); + +log("Step 1: Check SDK directory"); +const output = await runCommand(`[ -d ${SDK_DIR} ] && echo EXISTS || true`, { + captureOutput: true, +}); + +const sdkExists = output?.stdout?.trim() === "EXISTS"; +log("sdkExists:", sdkExists); + +if (!sdkExists) { + log("Clone agoric-sdk with --depth=1..."); + await runCommand(`bash -c "git clone --depth=1 ${SDK_REPO} ${SDK_DIR}"`); + + log("Install dependencies..."); + await runCommand(`bash -c "cd ${SDK_DIR} && yarn install"`); + + log("Build agoric-sdk..."); + await runCommand(`bash -c "cd ${SDK_DIR} && yarn build"`); +} else { + log("✅ Agoric SDK already exists. Skipping clone, install, and build."); +} + +log("Step 2: Generate bundles for AXL token"); +await runCommand( + `agoric run /usr/src/agoric-sdk-cp/multichain-testing/src/register-interchain-bank-assets.builder.js --assets='${assets}'`, +); + +log("Step 3: Register AXL in vBank assets"); +await deployContract({ + dir: PLAN_FILE_DIR, + planFile: `${PLAN_FILE_DIR}/eval-register-interchain-bank-assets-plan.json`, +}); + +log("Step 4: Verify AXL registration from vStorage"); +await checkVStorage({ vStorageUrl: vbankAssetUrl, valueToFind: AXL_DENOM }); + +log("Step 5: Build AxelarGmp contract"); +await runCommand( + `bash -c "cd ${SDK_DIR}/packages/orchestration && yarn esbuild:axelar"`, +); + +// Make sure relayer is connected at this point b/w axelar and agoric +log("Step 6: Generate bunldes for AxelarGmp contract"); +await runCommand( + `agoric run ${SDK_DIR}/packages/builders/scripts/orchestration/axelar-gmp.build.js --net=localhost --peer=axelar:connection-0:channel-0:uaxl`, +); + +log("Step 7: Deploy AxelarGmp contract"); +await deployContract({ + dir: PLAN_FILE_DIR, + planFile: `${PLAN_FILE_DIR}/startAxelarGmp-plan.json`, +}); + +log("Step 8: Verify AxelarGmp deployment from vStorage"); +await checkVStorage({ vStorageUrl: agoricNamesUrl, valueToFind: contractName }); + +log("✅ All steps completed"); diff --git a/integration/scripts/utils.mjs b/integration/scripts/utils.mjs new file mode 100755 index 00000000..5e7b1332 --- /dev/null +++ b/integration/scripts/utils.mjs @@ -0,0 +1,112 @@ +// @ts-check +import { execa } from "execa"; +import fs from "fs/promises"; + +export const fetchFromVStorage = async (vStorageUrl) => { + const response = await fetch(vStorageUrl); + + if (!response.ok) { + throw new Error( + `Failed to fetch: ${response.status} ${response.statusText}`, + ); + } + + const { value } = await response.json(); + + const rawValue = JSON.parse(value)?.values?.[0]; + if (!rawValue) { + throw new Error("Missing expected data in vStorage response"); + } + + const bodyString = JSON.parse(rawValue).body; + return JSON.parse(bodyString.slice(1)); +}; + +export const writeOfferToFile = async ({ OFFER_FILE, offer }) => { + await fs.writeFile(OFFER_FILE, JSON.stringify(offer, null, 2)); + console.log(`Written ${OFFER_FILE}`); +}; + +/** + * A generic polling function. + * + * @typedef {Object} pollingParams + * @property {() => Promise} checkFn - The async function that returns true when the condition is met. + * @property {number} pollIntervalMs - Polling interval in milliseconds. + * @property {number} maxWaitMs - Max wait time in milliseconds. + * @returns {Promise} - Resolves true if condition met, false if timeout. + */ +export const poll = async ({ checkFn, pollIntervalMs, maxWaitMs }) => { + const start = Date.now(); + + while (Date.now() - start < maxWaitMs) { + try { + const result = await checkFn(); + if (result) return true; + } catch (err) { + console.error("Polling error:", err); + } + + console.log(`Waiting ${pollIntervalMs / 1000} seconds...`); + await new Promise((res) => setTimeout(res, pollIntervalMs)); + } + + return false; +}; + +export const checkVStorage = async ({ vStorageUrl, valueToFind }) => { + try { + const pollIntervalMs = 5000; // 5 seconds + const maxWaitMs = 2 * 60 * 1000; // 2 minutes + + const found = await poll({ + checkFn: async () => { + const data = await fetchFromVStorage(vStorageUrl); + + for (const val of data) { + if (val[0] === valueToFind) { + return true; + } + } + + return false; + }, + pollIntervalMs, + maxWaitMs, + }); + + if (found) { + console.log(`✅ Test passed: ${valueToFind} was found.`); + } else { + console.error(`❌ Test failed: ${valueToFind} was not found.`); + process.exit(1); + } + } catch (error) { + console.error("Failed to fetch or parse vStorage data:", error); + process.exit(1); + } +}; + +/** + * Run a command inside the 'agoric' container. + * + * @param {string} command - Shell command to execute. + * @param {Object} [options] + * @param {boolean} [options.captureOutput=false] - If true, captures stdout/stderr instead of streaming. + * @returns {Promise<{ stdout?: string, stderr?: string }|void>} + */ +export const runCommand = async (command, { captureOutput = false } = {}) => { + try { + const result = await execa(`docker exec agoric ${command}`, { + shell: true, + stdio: captureOutput ? "pipe" : "inherit", + }); + + return captureOutput + ? { stdout: result.stdout, stderr: result.stderr } + : undefined; + } catch (err) { + console.error("❌ ERROR:", err); + process.exit(1); + } +}; diff --git a/integration/yarn.lock b/integration/yarn.lock new file mode 100644 index 00000000..167a1218 --- /dev/null +++ b/integration/yarn.lock @@ -0,0 +1,241 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@adraffy/ens-normalize@^1.11.0": + version "1.11.0" + resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.11.0.tgz#42cc67c5baa407ac25059fcd7d405cc5ecdb0c33" + integrity sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg== + +"@noble/ciphers@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@noble/ciphers/-/ciphers-1.3.0.tgz#f64b8ff886c240e644e5573c097f86e5b43676dc" + integrity sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw== + +"@noble/curves@1.9.2", "@noble/curves@^1.9.1", "@noble/curves@~1.9.0": + version "1.9.2" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.9.2.tgz#73388356ce733922396214a933ff7c95afcef911" + integrity sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g== + dependencies: + "@noble/hashes" "1.8.0" + +"@noble/hashes@1.8.0", "@noble/hashes@^1.8.0", "@noble/hashes@~1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.8.0.tgz#cee43d801fcef9644b11b8194857695acd5f815a" + integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== + +"@scure/base@~1.2.5": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.2.6.tgz#ca917184b8231394dd8847509c67a0be522e59f6" + integrity sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg== + +"@scure/bip32@1.7.0", "@scure/bip32@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.7.0.tgz#b8683bab172369f988f1589640e53c4606984219" + integrity sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw== + dependencies: + "@noble/curves" "~1.9.0" + "@noble/hashes" "~1.8.0" + "@scure/base" "~1.2.5" + +"@scure/bip39@1.6.0", "@scure/bip39@^1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.6.0.tgz#475970ace440d7be87a6086cbee77cb8f1a684f9" + integrity sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A== + dependencies: + "@noble/hashes" "~1.8.0" + "@scure/base" "~1.2.5" + +"@sec-ant/readable-stream@^0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz#60de891bb126abfdc5410fdc6166aca065f10a0c" + integrity sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg== + +"@sindresorhus/merge-streams@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz#abb11d99aeb6d27f1b563c38147a72d50058e339" + integrity sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ== + +abitype@1.0.8, abitype@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.0.8.tgz#3554f28b2e9d6e9f35eb59878193eabd1b9f46ba" + integrity sha512-ZeiI6h3GnW06uYDLx0etQtX/p8E24UaHHBj57RSjK7YBFe7iuVn07EDpOeP451D06sF27VOz9JJPlIKJmXgkEg== + +cross-spawn@^7.0.6: + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +eventemitter3@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" + integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== + +execa@^9.5.2: + version "9.6.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-9.6.0.tgz#38665530e54e2e018384108322f37f35ae74f3bc" + integrity sha512-jpWzZ1ZhwUmeWRhS7Qv3mhpOhLfwI+uAX4e5fOcXqwMR7EcJ0pj2kV1CVzHVMX/LphnKWD3LObjZCoJ71lKpHw== + dependencies: + "@sindresorhus/merge-streams" "^4.0.0" + cross-spawn "^7.0.6" + figures "^6.1.0" + get-stream "^9.0.0" + human-signals "^8.0.1" + is-plain-obj "^4.1.0" + is-stream "^4.0.1" + npm-run-path "^6.0.0" + pretty-ms "^9.2.0" + signal-exit "^4.1.0" + strip-final-newline "^4.0.0" + yoctocolors "^2.1.1" + +figures@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-6.1.0.tgz#935479f51865fa7479f6fa94fc6fc7ac14e62c4a" + integrity sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg== + dependencies: + is-unicode-supported "^2.0.0" + +get-stream@^9.0.0: + version "9.0.1" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-9.0.1.tgz#95157d21df8eb90d1647102b63039b1df60ebd27" + integrity sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA== + dependencies: + "@sec-ant/readable-stream" "^0.4.1" + is-stream "^4.0.1" + +human-signals@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-8.0.1.tgz#f08bb593b6d1db353933d06156cedec90abe51fb" + integrity sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ== + +is-plain-obj@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0" + integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg== + +is-stream@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-4.0.1.tgz#375cf891e16d2e4baec250b85926cffc14720d9b" + integrity sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A== + +is-unicode-supported@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz#09f0ab0de6d3744d48d265ebb98f65d11f2a9b3a" + integrity sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +isows@1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/isows/-/isows-1.0.7.tgz#1c06400b7eed216fbba3bcbd68f12490fc342915" + integrity sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg== + +npm-run-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-6.0.0.tgz#25cfdc4eae04976f3349c0b1afc089052c362537" + integrity sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA== + dependencies: + path-key "^4.0.0" + unicorn-magic "^0.3.0" + +ox@0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/ox/-/ox-0.8.1.tgz#c1328e4c890583b9c19d338126aef4b796d53543" + integrity sha512-e+z5epnzV+Zuz91YYujecW8cF01mzmrUtWotJ0oEPym/G82uccs7q0WDHTYL3eiONbTUEvcZrptAKLgTBD3u2A== + dependencies: + "@adraffy/ens-normalize" "^1.11.0" + "@noble/ciphers" "^1.3.0" + "@noble/curves" "^1.9.1" + "@noble/hashes" "^1.8.0" + "@scure/bip32" "^1.7.0" + "@scure/bip39" "^1.6.0" + abitype "^1.0.8" + eventemitter3 "5.0.1" + +parse-ms@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-4.0.0.tgz#c0c058edd47c2a590151a718990533fd62803df4" + integrity sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw== + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-key@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" + integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== + +pretty-ms@^9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-9.2.0.tgz#e14c0aad6493b69ed63114442a84133d7e560ef0" + integrity sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg== + dependencies: + parse-ms "^4.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +signal-exit@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + +strip-final-newline@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-4.0.0.tgz#35a369ec2ac43df356e3edd5dcebb6429aa1fa5c" + integrity sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw== + +unicorn-magic@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.3.0.tgz#4efd45c85a69e0dd576d25532fbfa22aa5c8a104" + integrity sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA== + +viem@^2.28.1: + version "2.31.6" + resolved "https://registry.yarnpkg.com/viem/-/viem-2.31.6.tgz#2a4e76b5e7201060a2a01820d1db4d87f420a0e0" + integrity sha512-2PPbXL/8bHQxUzaLFDk4R6WHifTcXxAqMC8/j6RBgXl/OexQ1HU8r9OukwfDTqrFoHtWWiYz5fktHATy7+U9nQ== + dependencies: + "@noble/curves" "1.9.2" + "@noble/hashes" "1.8.0" + "@scure/bip32" "1.7.0" + "@scure/bip39" "1.6.0" + abitype "1.0.8" + isows "1.0.7" + ox "0.8.1" + ws "8.18.2" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +ws@8.18.2: + version "8.18.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.2.tgz#42738b2be57ced85f46154320aabb51ab003705a" + integrity sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ== + +yoctocolors@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/yoctocolors/-/yoctocolors-2.1.1.tgz#e0167474e9fbb9e8b3ecca738deaa61dd12e56fc" + integrity sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ== From ce6417455a180d2bd2465ccccf0bf71f7e3bf933 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 3 Jul 2025 10:52:35 +0500 Subject: [PATCH 59/93] feat(ci): makeAccount on EVM --- .github/workflows/agoric-integration.yml | 13 + integration/agoric-sdk | 1 - integration/package.json | 17 +- integration/scripts/deploy.mjs | 1 + integration/scripts/lockdown.mjs | 10 + integration/scripts/make-account.mjs | 103 +++++ integration/scripts/setup-gmp.mjs | 1 + integration/scripts/utils.mjs | 183 ++++++++ integration/scripts/vstorage.mjs | 203 +++++++++ integration/yarn.lock | 504 +++++++++++++++++++---- package.json | 1 + 11 files changed, 938 insertions(+), 99 deletions(-) delete mode 160000 integration/agoric-sdk create mode 100755 integration/scripts/lockdown.mjs create mode 100755 integration/scripts/make-account.mjs create mode 100644 integration/scripts/vstorage.mjs diff --git a/.github/workflows/agoric-integration.yml b/.github/workflows/agoric-integration.yml index 60133b07..e737abc1 100644 --- a/.github/workflows/agoric-integration.yml +++ b/.github/workflows/agoric-integration.yml @@ -49,3 +49,16 @@ jobs: - name: Deploy contracts on Agoric chain run: ./integration/scripts/setup-gmp.mjs + + - name: Make offer for creating EVM Smart Wallet + run: ./integration/scripts/make-account.mjs + env: + makeAccount: true + + - name: Relay data from EVM chain + run: | + npm run relay:cosmos & + sleep 150 + + - name: Get EVM Smart wallet address + run: ./integration/scripts/make-account.mjs diff --git a/integration/agoric-sdk b/integration/agoric-sdk deleted file mode 160000 index 4dd330d2..00000000 --- a/integration/agoric-sdk +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4dd330d215bd9a229f39e2f9532aa1f6b29acc40 diff --git a/integration/package.json b/integration/package.json index ffb7a872..43a60cc2 100644 --- a/integration/package.json +++ b/integration/package.json @@ -3,15 +3,9 @@ "version": "1.0.0", "type": "module", "scripts": { - "prepare-env": "CONTRACT_FOLDER=../contract DEPLOY_FOLDER=../deploy node scripts/prepare-env.mjs", - "register:token": "script=/usr/src/agoric-sdk/multichain-testing/src/register-interchain-bank-assets.builder.js plan=/usr/src/upgrade-test-scripts/eval-register-interchain-bank-assets-plan.json assets='[{\"denom\":\"ibc/2CC0B1B7A981ACC74854717F221008484603BB8360E81B262411B0D830EDE9B0\",\"issuerName\":\"AXL\",\"decimalPlaces\":6}]' node scripts/deploy-contract.mjs", - "check-token": "vStorageUrl=http://localhost/agoric-lcd/agoric/vstorage/data/published.agoricNames.vbankAsset valueToFind=ibc/2CC0B1B7A981ACC74854717F221008484603BB8360E81B262411B0D830EDE9B0 waitInSeconds=30 node scripts/check-vstorage.mjs", - "deploy:contract": "script=scripts/init-contract.js plan=scripts/startAxelarGmp-plan.json node scripts/deploy-contract.mjs", - "check-axelar-gmp": "vStorageUrl=http://localhost/agoric-lcd/agoric/vstorage/data/published.agoricNames.instance valueToFind=axelarGmp waitInSeconds=30 node scripts/check-vstorage.mjs", - "make-account": "makeAccount=true node scripts/make-account.mjs", - "evm-address": "node scripts/make-account.mjs", - "send-gmp": "node scripts/gmp-via-lca.mjs", - "multicall": "node scripts/multicall.mjs" + "make-acc": "makeAccount=true node scripts/make-account.mjs", + "get-addr": "node scripts/make-account.mjs", + "setup": "node scripts/setup-gmp.mjs" }, "devDependencies": { "execa": "^9.5.2" @@ -21,6 +15,9 @@ "license": "ISC", "description": "", "dependencies": { - "viem": "^2.28.1" + "@agoric/cosmic-proto": "^0.5.0-u21.0", + "@agoric/internal": "^0.4.0-u21.0", + "@endo/base64": "^1.0.11", + "@endo/errors": "^1.2.12" } } diff --git a/integration/scripts/deploy.mjs b/integration/scripts/deploy.mjs index a0534cbb..7e7abeb7 100755 --- a/integration/scripts/deploy.mjs +++ b/integration/scripts/deploy.mjs @@ -1,4 +1,5 @@ // @ts-check +import "./lockdown.mjs"; import { runCommand } from "./utils.mjs"; const CHAINID = "agoriclocal"; diff --git a/integration/scripts/lockdown.mjs b/integration/scripts/lockdown.mjs new file mode 100755 index 00000000..76a83b63 --- /dev/null +++ b/integration/scripts/lockdown.mjs @@ -0,0 +1,10 @@ +import 'ses'; +import '@endo/eventual-send/shim.js'; + +const options = { + overrideTaming: 'severe', + stackFiltering: 'verbose', + errorTaming: 'unsafe', +}; + +lockdown(options); diff --git a/integration/scripts/make-account.mjs b/integration/scripts/make-account.mjs new file mode 100755 index 00000000..1cb4c879 --- /dev/null +++ b/integration/scripts/make-account.mjs @@ -0,0 +1,103 @@ +#!/usr/bin/env node +// @ts-check +import "./lockdown.mjs"; +import { + fetchFromVStorage, + poll, + prepareOffer, + processWalletOffer, + validateEvmAddress, +} from "./utils.mjs"; + +const OFFER_FILE = "offer.json"; +const CONTAINER_PATH = `/usr/src/${OFFER_FILE}`; +const FROM_ADDRESS = "agoric1rwwley550k9mmk6uq6mm6z4udrg8kyuyvfszjk"; +const vStorageUrl = `http://localhost/agoric-lcd/agoric/vstorage/data/published.wallet.${FROM_ADDRESS}`; +const { makeAccount } = process.env; +const { log, error } = console; + +try { + if (makeAccount) { + log("--- Creating and Monitoring LCA ---"); + + log("Preparing offer..."); + const offer = await prepareOffer({ + publicInvitationMaker: "createAndMonitorLCA", + instanceName: "axelarGmp", + brandName: "BLD", + amount: 1n, + source: "contract", + }); + + await processWalletOffer({ + offer, + OFFER_FILE, + CONTAINER_PATH, + FROM_ADDRESS, + }); + } else { + log("--- Getting EVM Smart Wallet Address ---"); + + const methodName = "getRemoteAddress"; + const invitationArgs = harden([methodName, []]); + + log(`Fetching previous offer from ${vStorageUrl}.current`); + const { offerToUsedInvitation } = await fetchFromVStorage( + `${vStorageUrl}.current`, + ); + const previousOffer = offerToUsedInvitation[0][0]; + log(`Previous offer found: ${JSON.stringify(previousOffer)}`); + + log("Preparing offer..."); + const offer = await prepareOffer({ + invitationMakerName: "makeEVMTransactionInvitation", + instanceName: "axelarGmp", + emptyProposal: true, + source: "continuing", + invitationArgs, + previousOffer, + }); + + await processWalletOffer({ + offer, + OFFER_FILE, + CONTAINER_PATH, + FROM_ADDRESS, + }); + + const pollIntervalMs = 5000; // 5 seconds + const maxWaitMs = 2 * 60 * 1000; // 2 minutes + const valid = await poll({ + checkFn: async () => { + log(`Fetching offer result from ${vStorageUrl}`); + const offerData = await fetchFromVStorage(vStorageUrl); + log(`Offer data received: ${JSON.stringify(offerData)}`); + + let smartWalletAddress; + try { + smartWalletAddress = offerData?.status?.result; + } catch (err) { + log("Failed to parse offerData.status.result as JSON:", err); + } + + log(`Validating smart wallet address: ${smartWalletAddress}`); + validateEvmAddress(smartWalletAddress); + + log(`Smart wallet address: ${smartWalletAddress}`); + return true; + }, + pollIntervalMs, + maxWaitMs, + }); + + if (valid) { + console.log(`✅ Test passed`); + } else { + console.error(`❌ Test failed`); + process.exit(1); + } + } +} catch (err) { + error("ERROR:", err.shortMessage || err.message); + process.exit(1); +} diff --git a/integration/scripts/setup-gmp.mjs b/integration/scripts/setup-gmp.mjs index b02bbd70..93641f58 100755 --- a/integration/scripts/setup-gmp.mjs +++ b/integration/scripts/setup-gmp.mjs @@ -1,6 +1,7 @@ #!/usr/bin/env node // @ts-check import { deployContract } from "./deploy.mjs"; +import "./lockdown.mjs"; import { checkVStorage, runCommand } from "./utils.mjs"; const { log } = console; diff --git a/integration/scripts/utils.mjs b/integration/scripts/utils.mjs index 5e7b1332..80329384 100755 --- a/integration/scripts/utils.mjs +++ b/integration/scripts/utils.mjs @@ -1,6 +1,11 @@ // @ts-check +import { + boardSlottingMarshaller, + makeBoardRemote, +} from "@agoric/internal/src/marshal.js"; import { execa } from "execa"; import fs from "fs/promises"; +import { makeVStorage } from "./vstorage.mjs"; export const fetchFromVStorage = async (vStorageUrl) => { const response = await fetch(vStorageUrl); @@ -110,3 +115,181 @@ export const runCommand = async (command, { captureOutput = false } = {}) => { process.exit(1); } }; + +export const executeWalletAction = async ({ OFFER_FILE, FROM_ADDRESS }) => { + const cmd = `agd tx swingset wallet-action "$(cat ${OFFER_FILE})" \ + --allow-spend \ + --from=${FROM_ADDRESS} \ + --keyring-backend=test \ + --chain-id=agoriclocal -y`; + + return runCommand(cmd); +}; + +export const validateEvmAddress = (address) => { + if (typeof address !== "string" || !/^0x[a-fA-F0-9]{40}$/.test(address)) { + throw new Error(`Invalid EVM wallet address: ${address}`); + } +}; + +export const processWalletOffer = async ({ + offer, + OFFER_FILE, + CONTAINER_PATH, + FROM_ADDRESS, +}) => { + console.log("Writing offer to file..."); + await writeOfferToFile({ offer, OFFER_FILE }); + + console.log("Copy offer file in container"); + await execa(`docker cp ${OFFER_FILE} agoric:${CONTAINER_PATH}`, { + shell: true, + stdio: "inherit", + }); + + console.log("Executing wallet action..."); + await executeWalletAction({ OFFER_FILE, FROM_ADDRESS }); +}; + +const storageHelper = { + parseCapData: (txt) => { + /** @type {{ value: string }} */ + const { value } = txt; + assert(typeof value === "string", typeof value); + const specimen = JSON.parse(value); + const { blockHeight, values } = specimen; + assert(values, `empty values in specimen ${value}`); + const capDatas = storageHelper.parseMany(values); + return { blockHeight, capDatas }; + }, + unserializeTxt: (txt, ctx) => { + const { capDatas } = storageHelper.parseCapData(txt); + return capDatas.map((capData) => + boardSlottingMarshaller(ctx.convertSlotToVal).fromCapData(capData), + ); + }, + /** @param {string[]} capDataStrings array of stringified capData */ + parseMany: (capDataStrings) => { + assert(capDataStrings && capDataStrings.length); + /** @type {{ body: string, slots: string[] }[]} */ + const capDatas = capDataStrings.map((s) => JSON.parse(s)); + for (const capData of capDatas) { + assert(typeof capData === "object" && capData !== null); + assert("body" in capData && "slots" in capData); + assert(typeof capData.body === "string"); + assert(Array.isArray(capData.slots)); + } + return capDatas; + }, +}; +harden(storageHelper); +export const makeAgoricNames = async (ctx, vstorage) => { + /** @type {Record} */ + const reverse = {}; + const entries = await Promise.all( + ["brand", "instance", "vbankAsset"].map(async (kind) => { + const content = await vstorage.readLatest( + `published.agoricNames.${kind}`, + ); + const parts = storageHelper.unserializeTxt(content, ctx).at(-1); + for (const [name, remote] of parts) { + if ("getBoardId" in remote) { + reverse[/** @type {string} */ (remote.getBoardId())] = name; + } + } + return [kind, Object.fromEntries(parts)]; + }), + ); + return { ...Object.fromEntries(entries), reverse }; +}; + +export const makeFromBoard = () => { + const cache = new Map(); + const convertSlotToVal = (boardId, iface) => { + if (cache.has(boardId)) { + return cache.get(boardId); + } + const val = makeBoardRemote({ boardId, iface }); + cache.set(boardId, val); + return val; + }; + return harden({ convertSlotToVal }); +}; + +/** + * @typedef {Object} PrepareOfferParams + * @property {string} instanceName - The instance name to get from AgoricNames. + * @property {string} source - Source of the invitation: 'contract' | 'continuing'. + * @property {string} [publicInvitationMaker] - Used for public invitations. + * @property {string} [invitationMakerName] - Used for contract invitations. + * @property {string} [brandName] - Required if giving an amount. + * @property {bigint} [amount] - Required if giving something. + * @property {any[]} [invitationArgs] - Arguments for the invitation (e.g. method, params). + * @property {string} [previousOffer] - For continuing invitations. + * @property {boolean} [emptyProposal] - If true, skips constructing the give section. + * @property {(x: any) => any} [hardenFn] - Optionally override the harden function. + */ + +/** + * Prepares a hardened offer object with all required CapData format. + * @param {PrepareOfferParams} params + * @returns {Promise} CapData object ready to be written or sent to wallet. + */ +export const prepareOffer = async ({ + instanceName, + source, + publicInvitationMaker, + invitationMakerName, + brandName, + amount, + invitationArgs, + previousOffer, + emptyProposal = false, +}) => { + if (!instanceName) throw new Error("instanceName is required"); + if (!source) throw new Error("source is required"); + + const LOCAL_CONFIG = { + rpcAddrs: ["http://localhost/agoric-rpc"], + chainName: "agoriclocal", + }; + + const vstorage = makeVStorage({ fetch }, LOCAL_CONFIG); + const fromBoard = makeFromBoard(); + const { brand, instance } = await makeAgoricNames(fromBoard, vstorage); + + const offerId = `offer-${Date.now()}`; + + const invitationSpec = { + ...(invitationMakerName && { invitationMakerName }), + ...(publicInvitationMaker && { publicInvitationMaker }), + source, + instance: instance[instanceName], + ...(invitationArgs && { invitationArgs }), + ...(previousOffer && { previousOffer }), + }; + + const proposal = + emptyProposal || !amount || !brandName + ? {} + : { + give: { + [brandName]: { + brand: brand[brandName], + value: amount, + }, + }, + }; + + const body = { + method: "executeOffer", + offer: { + id: offerId, + invitationSpec, + proposal, + }, + }; + + const marshaller = boardSlottingMarshaller(fromBoard.convertSlotToVal); + return marshaller.toCapData(harden(body)); +}; diff --git a/integration/scripts/vstorage.mjs b/integration/scripts/vstorage.mjs new file mode 100644 index 00000000..815dbc11 --- /dev/null +++ b/integration/scripts/vstorage.mjs @@ -0,0 +1,203 @@ +import { + QueryChildrenRequest, + QueryChildrenResponse, + QueryDataRequest, + QueryDataResponse, +} from "@agoric/cosmic-proto/agoric/vstorage/query.js"; +import { mustMatch } from "@agoric/internal"; +import { encodeHex } from "@agoric/internal/src/hex.js"; +import { StreamCellShape } from "@agoric/internal/src/lib-chainStorage.js"; +import { decodeBase64 } from "@endo/base64"; + +/** + * @import {AbciQueryResponse} from '@cosmjs/tendermint-rpc'; + * @import {JsonSafe} from '@agoric/cosmic-proto'; + * @import {StreamCell} from '@agoric/internal/src/lib-chainStorage.js'; + * @import {MinimalNetworkConfig} from './network-config.js'; + */ + +const kindToRpc = /** @type {const} */ ({ + __proto__: null, + children: "/agoric.vstorage.Query/Children", + data: "/agoric.vstorage.Query/Data", +}); + +// TODO move down to cosmic-proto, probably generated with Telescope +const codecs = { + __proto__: null, + "/agoric.vstorage.Query/Children": { + request: QueryChildrenRequest, + response: QueryChildrenResponse, + }, + "/agoric.vstorage.Query/Data": { + request: QueryDataRequest, + response: QueryDataResponse, + }, +}; + +/** + * @template {'data' | 'children'} T + * @param {string} [path] + * @param {object} [opts] + * @param {T} [opts.kind] + * @param {number | bigint} [opts.height] 0 is the same as omitting height and implies the highest block + * @returns {`/abci_query?${string}`} + */ +export const makeAbciQuery = ( + path = "published", + { kind = /** @type {T} */ ("children"), height = 0 } = {}, +) => { + const rpc = kindToRpc[kind]; + const { request } = codecs[rpc]; + const buf = request.toProto({ path }); + + const hexData = encodeHex(buf); + return `/abci_query?path=%22${rpc}%22&data=0x${hexData}&height=${height}`; +}; + +/** + * @param {object} powers + * @param {typeof window.fetch} powers.fetch + * @param {MinimalNetworkConfig} config + */ +export const makeVStorage = ({ fetch }, config) => { + /** + * @template {'data' | 'children'} T + * @param {string} vstoragePath + * @param {object} [opts] + * @param {T} [opts.kind] + * @param {number | bigint} [opts.height] 0 is the same as omitting height and implies the highest block + * @returns {Promise<{result: {response: JsonSafe}}>} + */ + const getVstorageJson = async ( + vstoragePath, + { kind = /** @type {T} */ ("children"), height = 0 } = {}, + ) => { + const url = + config.rpcAddrs[0] + makeAbciQuery(vstoragePath, { kind, height }); + const res = await fetch(url, { keepalive: true }); + return res.json(); + }; + + /** + * @template {'children' | 'data'} T + * @param {string} [path] + * @param {object} [opts] + * @param {T} [opts.kind] + * @param {number | bigint} [opts.height] 0 is the same as omitting height and implies the highest block + * @returns {Promise} + */ + const readStorage = async ( + path = "published", + { kind = /** @type {T} */ ("children"), height = 0 } = {}, + ) => { + await null; + + const rpc = kindToRpc[kind]; + const codec = codecs[rpc]; + + let data; + try { + data = await getVstorageJson(path, { kind, height }); + } catch (err) { + throw Error(`cannot read ${kind} of ${path}: ${err.message}`); + } + + const { + result: { response }, + } = data; + if (response?.code !== 0) { + /** @type {any} */ + const err = Error( + `error code ${response?.code} reading ${kind} of ${path}: ${response.log}`, + ); + err.code = response?.code; + err.codespace = response?.codespace; + throw err; + } + + const { value: b64Value } = response; + // @ts-expect-error cast + return codec.response.decode(decodeBase64(b64Value)); + }; + + const vstorage = { + readStorage, + /** + * + * @param {string} path + * @returns {Promise} latest vstorage value at path + */ + async readLatest(path = "published") { + return readStorage(path, { kind: "data" }); + }, + /** + * Keys of children at the path + * + * @param {string} path + * @returns {Promise} + */ + async keys(path = "published") { + const response = await readStorage(path, { kind: "children" }); + return response.children; + }, + /** + * @param {string} path + * @param {number} [height] default is highest + * @returns {Promise>} + */ + async readAt(path, height = undefined) { + const response = await readStorage(path, { kind: "data", height }); + /** @type {unknown} */ + const cell = harden(JSON.parse(response.value)); + mustMatch(cell, StreamCellShape); + return cell; + }, + /** + * Read values going back as far as available + * + * @param {string} path + * @param {number | string} [minHeight] + * @returns {Promise} + */ + async readFully(path, minHeight = undefined) { + const parts = []; + // undefined the first iteration, to query at the highest + /** @type {string | undefined} */ + let blockHeight; + await null; + do { + // console.debug('READING', { blockHeight }); + let values; + try { + ({ blockHeight, values } = await vstorage.readAt( + path, + blockHeight === undefined ? undefined : Number(blockHeight) - 1, + )); + // console.debug('readAt returned', { blockHeight }); + } catch (err) { + if ( + // CosmosSDK ErrInvalidRequest with particular message text; + // misrepresentation of pruned data + // TODO replace after incorporating a fix to + // https://github.com/cosmos/cosmos-sdk/issues/19992 + err.codespace === "sdk" && + err.code === 18 && + err.message.match(/pruned/) + ) { + // console.error(err); + break; + } + throw err; + } + parts.push(values); + // console.debug('PUSHED', values); + // console.debug('NEW', { blockHeight, minHeight }); + if (minHeight && Number(blockHeight) <= Number(minHeight)) break; + } while (Number(blockHeight) > 0); + return /** @type {string[]} */ (parts.flat()); + }, + }; + return vstorage; +}; +/** @typedef {ReturnType} VStorage */ diff --git a/integration/yarn.lock b/integration/yarn.lock index 167a1218..054ddc7b 100644 --- a/integration/yarn.lock +++ b/integration/yarn.lock @@ -2,49 +2,344 @@ # yarn lockfile v1 -"@adraffy/ens-normalize@^1.11.0": - version "1.11.0" - resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.11.0.tgz#42cc67c5baa407ac25059fcd7d405cc5ecdb0c33" - integrity sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg== - -"@noble/ciphers@^1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@noble/ciphers/-/ciphers-1.3.0.tgz#f64b8ff886c240e644e5573c097f86e5b43676dc" - integrity sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw== - -"@noble/curves@1.9.2", "@noble/curves@^1.9.1", "@noble/curves@~1.9.0": - version "1.9.2" - resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.9.2.tgz#73388356ce733922396214a933ff7c95afcef911" - integrity sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g== - dependencies: - "@noble/hashes" "1.8.0" - -"@noble/hashes@1.8.0", "@noble/hashes@^1.8.0", "@noble/hashes@~1.8.0": - version "1.8.0" - resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.8.0.tgz#cee43d801fcef9644b11b8194857695acd5f815a" - integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== - -"@scure/base@~1.2.5": - version "1.2.6" - resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.2.6.tgz#ca917184b8231394dd8847509c67a0be522e59f6" - integrity sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg== - -"@scure/bip32@1.7.0", "@scure/bip32@^1.7.0": - version "1.7.0" - resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.7.0.tgz#b8683bab172369f988f1589640e53c4606984219" - integrity sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw== - dependencies: - "@noble/curves" "~1.9.0" - "@noble/hashes" "~1.8.0" - "@scure/base" "~1.2.5" - -"@scure/bip39@1.6.0", "@scure/bip39@^1.6.0": - version "1.6.0" - resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.6.0.tgz#475970ace440d7be87a6086cbee77cb8f1a684f9" - integrity sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A== - dependencies: - "@noble/hashes" "~1.8.0" - "@scure/base" "~1.2.5" +"@agoric/base-zone@workspace:*": + version "0.1.1-upgrade-21-dev-43b4090.0" + resolved "https://registry.yarnpkg.com/@agoric/base-zone/-/base-zone-0.1.1-upgrade-21-dev-43b4090.0.tgz#e01cfcdd0dfe0d2670893bef12f4e8dabb36a0f3" + integrity sha512-HC17WxPMMbl+KgOXRSLBqA3s9o+y1p7CuFJJMzkkDGigsTALvP1XRC7jh5s8Y3qkMPiR8nSt1jBL6hujQN21QA== + dependencies: + "@agoric/store" "workspace:*" + "@endo/common" "^1.2.10" + "@endo/errors" "^1.2.10" + "@endo/exo" "^1.5.9" + "@endo/far" "^1.1.11" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + +"@agoric/cosmic-proto@^0.5.0-u21.0": + version "0.5.0-u21.0" + resolved "https://registry.yarnpkg.com/@agoric/cosmic-proto/-/cosmic-proto-0.5.0-u21.0.tgz#fe4ae1bdb2f22275689faf1efd42793a88b26c35" + integrity sha512-e1+KhldsxUBcl4L49L3Wlx8yE3+Hc/mrTTvB7v1LWX6Si4/ef9jMPZQJDgWrdVzARKXLdAni9uIvuORJ4AxF8Q== + dependencies: + "@endo/base64" "^1.0.9" + "@endo/init" "^1.1.9" + bech32 "^2.0.0" + query-string "^9.1.1" + +"@agoric/internal@^0.4.0-u21.0": + version "0.4.0-u21.0" + resolved "https://registry.yarnpkg.com/@agoric/internal/-/internal-0.4.0-u21.0.tgz#bfa84f2caa32e0d4e6fdad31fe7c60feb0bbac7d" + integrity sha512-mK+j2MmFSxTUZjLhezyWHATqOLl6w31Po6SFSk3bRCSYlkUF2bWie1018IqSw7imlKhVrK3WXDzkYzlsgte5bA== + dependencies: + "@agoric/base-zone" "workspace:*" + "@endo/common" "^1.2.10" + "@endo/compartment-mapper" "^1.6.0" + "@endo/errors" "^1.2.10" + "@endo/eventual-send" "^1.3.1" + "@endo/far" "^1.1.11" + "@endo/init" "^1.1.9" + "@endo/marshal" "^1.6.4" + "@endo/nat" "^5.1.0" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + "@endo/stream" "^1.2.10" + anylogger "^0.21.0" + jessie.js "^0.3.4" + +"@agoric/store@workspace:*": + version "0.9.3-upgrade-21-dev-43b4090.0" + resolved "https://registry.yarnpkg.com/@agoric/store/-/store-0.9.3-upgrade-21-dev-43b4090.0.tgz#41f1904f7bf0334f389f2e5095464c614adc4bf4" + integrity sha512-3xT384AzNMwZFUreo9dBp5DAr8LLOVygmDHT31djLojZ7i47uFz2keCABGriCm29RXbB2Uq7Wl1hwoEuPR9UGw== + dependencies: + "@endo/errors" "^1.2.10" + "@endo/exo" "^1.5.9" + "@endo/marshal" "^1.6.4" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + +"@babel/code-frame@^7.25.9", "@babel/code-frame@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.27.1.tgz#200f715e66d52a23b221a9435534a91cc13ad5be" + integrity sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg== + dependencies: + "@babel/helper-validator-identifier" "^7.27.1" + js-tokens "^4.0.0" + picocolors "^1.1.1" + +"@babel/generator@^7.25.9", "@babel/generator@^7.26.3": + version "7.28.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.28.0.tgz#9cc2f7bd6eb054d77dc66c2664148a0c5118acd2" + integrity sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg== + dependencies: + "@babel/parser" "^7.28.0" + "@babel/types" "^7.28.0" + "@jridgewell/gen-mapping" "^0.3.12" + "@jridgewell/trace-mapping" "^0.3.28" + jsesc "^3.0.2" + +"@babel/helper-string-parser@^7.25.9", "@babel/helper-string-parser@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687" + integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== + +"@babel/helper-validator-identifier@^7.25.9", "@babel/helper-validator-identifier@^7.27.1": + version "7.27.1" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8" + integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== + +"@babel/parser@^7.25.9", "@babel/parser@^7.27.2", "@babel/parser@^7.28.0": + version "7.28.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.28.0.tgz#979829fbab51a29e13901e5a80713dbcb840825e" + integrity sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g== + dependencies: + "@babel/types" "^7.28.0" + +"@babel/parser@~7.26.2": + version "7.26.10" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.10.tgz#e9bdb82f14b97df6569b0b038edd436839c57749" + integrity sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA== + dependencies: + "@babel/types" "^7.26.10" + +"@babel/template@^7.25.9": + version "7.27.2" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.27.2.tgz#fa78ceed3c4e7b63ebf6cb39e5852fca45f6809d" + integrity sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw== + dependencies: + "@babel/code-frame" "^7.27.1" + "@babel/parser" "^7.27.2" + "@babel/types" "^7.27.1" + +"@babel/traverse@~7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.9.tgz#a50f8fe49e7f69f53de5bea7e413cd35c5e13c84" + integrity sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw== + dependencies: + "@babel/code-frame" "^7.25.9" + "@babel/generator" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/template" "^7.25.9" + "@babel/types" "^7.25.9" + debug "^4.3.1" + globals "^11.1.0" + +"@babel/types@^7.25.9", "@babel/types@^7.26.10", "@babel/types@^7.27.1", "@babel/types@^7.28.0": + version "7.28.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.28.0.tgz#2fd0159a6dc7353933920c43136335a9b264d950" + integrity sha512-jYnje+JyZG5YThjHiF28oT4SIZLnYOcSBb6+SDaFIyzDVSkXQmQQYclJ2R+YxcdmK0AX6x1E5OQNtuh3jHDrUg== + dependencies: + "@babel/helper-string-parser" "^7.27.1" + "@babel/helper-validator-identifier" "^7.27.1" + +"@babel/types@~7.26.0": + version "7.26.10" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.10.tgz#396382f6335bd4feb65741eacfc808218f859259" + integrity sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ== + dependencies: + "@babel/helper-string-parser" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + +"@endo/base64@^1.0.11", "@endo/base64@^1.0.9": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@endo/base64/-/base64-1.0.11.tgz#b41cb7ba5302cf85f7b01fbfb4f6a9a5859b272b" + integrity sha512-zPjRfpmy/KjWy7eyR9yCd7Gc3DwmnWtVjOB7cxOudBit/uHaUBrj9xM3W7bzcC7+M5CNVh86r0Whr1FJ2ftHyg== + +"@endo/cjs-module-analyzer@^1.0.11": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@endo/cjs-module-analyzer/-/cjs-module-analyzer-1.0.11.tgz#037140b83ee62ab5b64a82def030e266352ddffc" + integrity sha512-zS+SjeUN4y7Ry7l0DSME05gUekLrfIZnhZ66q+1674BkQc4dk1eub2ZLgPDGoXOrBLtcadc7yxHwazilmMoQLQ== + +"@endo/common@^1.2.10", "@endo/common@^1.2.12": + version "1.2.12" + resolved "https://registry.yarnpkg.com/@endo/common/-/common-1.2.12.tgz#9a49feef8d558511bbd4aeefcebf9f1179661f14" + integrity sha512-w6rpzJtAAcLnwmh65eISXTsglvw42N+g1VMXs5UR+cllyqx5pnzvTaqHaxCt53LwDkYsGOMIvbQ4C++KSnawrg== + dependencies: + "@endo/errors" "^1.2.12" + "@endo/eventual-send" "^1.3.3" + "@endo/promise-kit" "^1.1.12" + +"@endo/compartment-mapper@^1.6.0": + version "1.6.2" + resolved "https://registry.yarnpkg.com/@endo/compartment-mapper/-/compartment-mapper-1.6.2.tgz#6bfe69e64c084acab2d8def2f498b044c986e250" + integrity sha512-rckYVNdPmMA7+cmLSOslAs8VnL1K6IV/Z+N/Jl8YlcpqxjiL4et4yqI6NzfVSCXN0x0DFq+NfbqgmCzHWkqFsw== + dependencies: + "@endo/cjs-module-analyzer" "^1.0.11" + "@endo/module-source" "^1.3.2" + "@endo/path-compare" "^1.1.0" + "@endo/trampoline" "^1.0.5" + "@endo/zip" "^1.0.11" + ses "^1.13.1" + +"@endo/env-options@^1.1.10": + version "1.1.10" + resolved "https://registry.yarnpkg.com/@endo/env-options/-/env-options-1.1.10.tgz#77e08f28d639c37b01908e329d5462cae5595732" + integrity sha512-dnb9nAY+g8w7Rcfl+C1m1PMy88O/HnFNYb+d7eSepB+bxilFtiRcaUDHk6Rn/fJZKa0K0JEhgUqv7p/H4x81Kw== + +"@endo/errors@^1.2.10", "@endo/errors@^1.2.12": + version "1.2.12" + resolved "https://registry.yarnpkg.com/@endo/errors/-/errors-1.2.12.tgz#019592412a8cd029f80008da8652963ade08547c" + integrity sha512-sgkV6NY61TmS0oSpgXeDStTixPBqE4w3lj0bJfqlu+LtVLoWlKQULOk4I3FV2LolNrUvQdPdQx2kcw5xTPGOFw== + dependencies: + ses "^1.13.1" + +"@endo/eventual-send@^1.3.1", "@endo/eventual-send@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@endo/eventual-send/-/eventual-send-1.3.3.tgz#3a67956b23e70ccd4dc3105eb5840a9240200186" + integrity sha512-LjYUd4/hA4RjXYMigroieW51ahju7VsgBa8KiyQnSMAz1rot99a3cav+DklhSS+tMyM31zwZ3bNd3yfQEgpxtA== + dependencies: + "@endo/env-options" "^1.1.10" + +"@endo/exo@^1.5.9": + version "1.5.11" + resolved "https://registry.yarnpkg.com/@endo/exo/-/exo-1.5.11.tgz#374eecc170d7184c3e3df59a383b3c9b07d3f28e" + integrity sha512-p7BkV2mqtT0Q3zgG1xotem7W0fir7loKwc8YpWoGfVt3PbZ2PT6EtQwN33d8FvPrR46zWkLqQ5Az5LEjK0oLUQ== + dependencies: + "@endo/common" "^1.2.12" + "@endo/env-options" "^1.1.10" + "@endo/errors" "^1.2.12" + "@endo/eventual-send" "^1.3.3" + "@endo/far" "^1.1.13" + "@endo/pass-style" "^1.6.2" + "@endo/patterns" "^1.6.1" + +"@endo/far@^1.0.0", "@endo/far@^1.1.11", "@endo/far@^1.1.13": + version "1.1.13" + resolved "https://registry.yarnpkg.com/@endo/far/-/far-1.1.13.tgz#437ed67d998c7ccd685c8eee6c40f22f0d6ad7f1" + integrity sha512-fKtWPK9r2LcppB86HlIZaF/7Fy+UJSYz4yGbnShNuYMfcGUItToQf1j8M2ypn/xaLl1ckLcotRGBP3PIaCyhYA== + dependencies: + "@endo/errors" "^1.2.12" + "@endo/eventual-send" "^1.3.3" + "@endo/pass-style" "^1.6.2" + +"@endo/immutable-arraybuffer@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@endo/immutable-arraybuffer/-/immutable-arraybuffer-1.1.1.tgz#ba81f43b80ab2c87aaab19eccc6e794977187b9f" + integrity sha512-v57HL0airAsQi278qAxf7UM788EE1U/8D1JoALtWsDjz+bZ2C84NKy9uwVi7G1YmzesbQMB2nrvWRXavL6LftA== + +"@endo/init@^1.1.9": + version "1.1.11" + resolved "https://registry.yarnpkg.com/@endo/init/-/init-1.1.11.tgz#6a37315c443aba85745252a8423aa43eeba5a328" + integrity sha512-UpXORiMA+PsmN4cP9XMA1LN0TZvuU2RT5YwPTVxtRuTK+OChyx/lLg/FQ1ibQKxzRZ6D0N4nc/RTUYeUq2o2Pg== + dependencies: + "@endo/base64" "^1.0.11" + "@endo/eventual-send" "^1.3.3" + "@endo/lockdown" "^1.0.17" + "@endo/promise-kit" "^1.1.12" + +"@endo/lockdown@^1.0.17": + version "1.0.17" + resolved "https://registry.yarnpkg.com/@endo/lockdown/-/lockdown-1.0.17.tgz#e5269aa760db53da6ca292c1780d0092ebc7e322" + integrity sha512-ZfF3uHkZ++qtRlA/JuLmHuePZsluEj7BAboEA5AVXVtPdwdLCax0aXu9bMP6nvSNhQxC33e28AQinQ36con89A== + dependencies: + ses "^1.13.1" + +"@endo/marshal@^1.6.4", "@endo/marshal@^1.7.1": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@endo/marshal/-/marshal-1.7.1.tgz#9986a99073e8e74e4cb16ca7c08266e041e5bfff" + integrity sha512-Cp2iGW5PEsM03QD8DKvTU3xRXZ+Yxm6S0QOvhieJiIpdYnVXTHUQKlIfucbKNAJoKyKWiKDPrroSeCLgwgKtcA== + dependencies: + "@endo/common" "^1.2.12" + "@endo/errors" "^1.2.12" + "@endo/eventual-send" "^1.3.3" + "@endo/nat" "^5.1.2" + "@endo/pass-style" "^1.6.2" + "@endo/promise-kit" "^1.1.12" + +"@endo/module-source@^1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@endo/module-source/-/module-source-1.3.2.tgz#d9bdd76383b88367a6d2401cea1916d588c2b162" + integrity sha512-x8s1a7iqz894KpmkrzLxXTjARNSHqqyKIptussnN510G85BjanuyZ1j03aWvhgeU0XPrs69Jj/ryuafW8WKjMw== + dependencies: + "@babel/generator" "^7.26.3" + "@babel/parser" "~7.26.2" + "@babel/traverse" "~7.25.9" + "@babel/types" "~7.26.0" + ses "^1.13.1" + +"@endo/nat@^5.1.0", "@endo/nat@^5.1.2": + version "5.1.2" + resolved "https://registry.yarnpkg.com/@endo/nat/-/nat-5.1.2.tgz#90521ee1338a261bf413d14b075693e58cd98926" + integrity sha512-1J2H6Jm8FuztxgyNy/CRODVRQ/AC6/5T60lvp+HCIeYWWwFOgUD9xkI7ck33jl8cGjC9iHyoPBj6s8AWrqlJDQ== + +"@endo/pass-style@^1.5.0", "@endo/pass-style@^1.6.2": + version "1.6.2" + resolved "https://registry.yarnpkg.com/@endo/pass-style/-/pass-style-1.6.2.tgz#8d975c89c8666b6b29e58aeab7acd1ee3cb296f8" + integrity sha512-+hn1CNms94R6SqFH88apSuwgR2HYPqsETneUlZL9rG6OXWYbrQE1WvY2eoWV/2PukJs7mb8BJQgTJKSnLWtRQw== + dependencies: + "@endo/common" "^1.2.12" + "@endo/env-options" "^1.1.10" + "@endo/errors" "^1.2.12" + "@endo/eventual-send" "^1.3.3" + "@endo/promise-kit" "^1.1.12" + +"@endo/path-compare@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@endo/path-compare/-/path-compare-1.1.0.tgz#05eb9f2dab52a6638a6505594146a9f70c91fa77" + integrity sha512-dKBykUBpZPLvvxB8CqOzSl1kJ9Bv4gzig34E5n2LQRj2xULaUjdgBm8DtMkORpIOPLrvJKWMoispwSlRXL/7OA== + +"@endo/patterns@^1.5.0", "@endo/patterns@^1.6.1": + version "1.6.1" + resolved "https://registry.yarnpkg.com/@endo/patterns/-/patterns-1.6.1.tgz#a6a82d615ef9a9c7df960313c917fb669bf7571f" + integrity sha512-ycdHh8sigkuRYHKc9gG43QK6kuFTT02N+iXJhsbeIrHYWkpTlkzRdWCvrWMWpCfcZmnTNyafAcGpoxauX0M2WQ== + dependencies: + "@endo/common" "^1.2.12" + "@endo/errors" "^1.2.12" + "@endo/eventual-send" "^1.3.3" + "@endo/marshal" "^1.7.1" + "@endo/pass-style" "^1.6.2" + "@endo/promise-kit" "^1.1.12" + +"@endo/promise-kit@^1.1.10", "@endo/promise-kit@^1.1.12": + version "1.1.12" + resolved "https://registry.yarnpkg.com/@endo/promise-kit/-/promise-kit-1.1.12.tgz#9849945d50511f98c31c257ed1e492b37af544f5" + integrity sha512-V0CnMpxGdQGPfoT6/E9X/1P/7v7siOQ4dMdBnBCl3XW4T7QpXu/rhPxoaegsTJ6Gj0F83ogeCFmBFdkCTlVxFQ== + dependencies: + ses "^1.13.1" + +"@endo/stream@^1.2.10": + version "1.2.12" + resolved "https://registry.yarnpkg.com/@endo/stream/-/stream-1.2.12.tgz#c3969a3637d09c8bdec07b1981e92af9784a0ad5" + integrity sha512-7kJ6yccB4HWi3lK+L6+XrZmyumnn14gFfx2lymhep64ubXZUOFB9QDG1MtQ1ToTGxI28r/UxvPxoNlyxvPk+ow== + dependencies: + "@endo/eventual-send" "^1.3.3" + "@endo/promise-kit" "^1.1.12" + ses "^1.13.1" + +"@endo/trampoline@^1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@endo/trampoline/-/trampoline-1.0.5.tgz#f44f2f1862a92b98bb4c780ccba91c2fc3161bb5" + integrity sha512-75sXj6cvvJ7qpD8UVoUVTEQRay/X6y5OrFYH48iFEmTg1SJcEQlldjMI4mrvOyuHjtr+KnVlNr+zmrhAUtLm0w== + +"@endo/zip@^1.0.11": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@endo/zip/-/zip-1.0.11.tgz#80b561531fd9bb68c574affab20526321669ce79" + integrity sha512-gx73xEyRFH3V/63eZAhrw1+t4tnpLG9n5RYzBwl3LR5mrtbrguGvx7fPoFww+oxjmkAgvGQUMVuJuqf11alAcg== + +"@jridgewell/gen-mapping@^0.3.12": + version "0.3.12" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz#2234ce26c62889f03db3d7fea43c1932ab3e927b" + integrity sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg== + dependencies: + "@jridgewell/sourcemap-codec" "^1.5.0" + "@jridgewell/trace-mapping" "^0.3.24" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0": + version "1.5.4" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz#7358043433b2e5da569aa02cbc4c121da3af27d7" + integrity sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw== + +"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.28": + version "0.3.29" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz#a58d31eaadaf92c6695680b2e1d464a9b8fbf7fc" + integrity sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" "@sec-ant/readable-stream@^0.4.1": version "0.4.1" @@ -56,10 +351,15 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz#abb11d99aeb6d27f1b563c38147a72d50058e339" integrity sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ== -abitype@1.0.8, abitype@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.0.8.tgz#3554f28b2e9d6e9f35eb59878193eabd1b9f46ba" - integrity sha512-ZeiI6h3GnW06uYDLx0etQtX/p8E24UaHHBj57RSjK7YBFe7iuVn07EDpOeP451D06sF27VOz9JJPlIKJmXgkEg== +anylogger@^0.21.0: + version "0.21.0" + resolved "https://registry.yarnpkg.com/anylogger/-/anylogger-0.21.0.tgz#b6cbea631cd5e1c884e5c0fa007d80bde1b22bd4" + integrity sha512-XJVplwflEff43l7aE48lW9gNoS0fpb1Ha4WttzjfTFlN3uJUIKALZ5oNWtwgRXPm/Q2dbp1EIddMbQ/AGHVX1A== + +bech32@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-2.0.0.tgz#078d3686535075c8c79709f054b1b226a133b355" + integrity sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg== cross-spawn@^7.0.6: version "7.0.6" @@ -70,10 +370,17 @@ cross-spawn@^7.0.6: shebang-command "^2.0.0" which "^2.0.1" -eventemitter3@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" - integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== +debug@^4.3.1: + version "4.4.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b" + integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== + dependencies: + ms "^2.1.3" + +decode-uri-component@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.4.1.tgz#2ac4859663c704be22bf7db760a1494a49ab2cc5" + integrity sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ== execa@^9.5.2: version "9.6.0" @@ -100,6 +407,11 @@ figures@^6.1.0: dependencies: is-unicode-supported "^2.0.0" +filter-obj@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-5.1.0.tgz#5bd89676000a713d7db2e197f660274428e524ed" + integrity sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng== + get-stream@^9.0.0: version "9.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-9.0.1.tgz#95157d21df8eb90d1647102b63039b1df60ebd27" @@ -108,6 +420,11 @@ get-stream@^9.0.0: "@sec-ant/readable-stream" "^0.4.1" is-stream "^4.0.1" +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== + human-signals@^8.0.1: version "8.0.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-8.0.1.tgz#f08bb593b6d1db353933d06156cedec90abe51fb" @@ -133,10 +450,27 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isows@1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/isows/-/isows-1.0.7.tgz#1c06400b7eed216fbba3bcbd68f12490fc342915" - integrity sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg== +jessie.js@^0.3.4: + version "0.3.4" + resolved "https://registry.yarnpkg.com/jessie.js/-/jessie.js-0.3.4.tgz#7e35dadc91cf4740d2ddc8a58b6cd0a99eb64a08" + integrity sha512-JYJm6nXuFIO/X6OWLBatorgqmFVYbenqnFP0UDalO2OQ6sn58VeJ3cKtMQ0l0TM0JnCx4wKhyO4BQQ/ilxjd6g== + dependencies: + "@endo/far" "^1.0.0" + +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +jsesc@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" + integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== + +ms@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== npm-run-path@^6.0.0: version "6.0.0" @@ -146,20 +480,6 @@ npm-run-path@^6.0.0: path-key "^4.0.0" unicorn-magic "^0.3.0" -ox@0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/ox/-/ox-0.8.1.tgz#c1328e4c890583b9c19d338126aef4b796d53543" - integrity sha512-e+z5epnzV+Zuz91YYujecW8cF01mzmrUtWotJ0oEPym/G82uccs7q0WDHTYL3eiONbTUEvcZrptAKLgTBD3u2A== - dependencies: - "@adraffy/ens-normalize" "^1.11.0" - "@noble/ciphers" "^1.3.0" - "@noble/curves" "^1.9.1" - "@noble/hashes" "^1.8.0" - "@scure/bip32" "^1.7.0" - "@scure/bip39" "^1.6.0" - abitype "^1.0.8" - eventemitter3 "5.0.1" - parse-ms@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-4.0.0.tgz#c0c058edd47c2a590151a718990533fd62803df4" @@ -175,6 +495,11 @@ path-key@^4.0.0: resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== +picocolors@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + pretty-ms@^9.2.0: version "9.2.0" resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-9.2.0.tgz#e14c0aad6493b69ed63114442a84133d7e560ef0" @@ -182,6 +507,23 @@ pretty-ms@^9.2.0: dependencies: parse-ms "^4.0.0" +query-string@^9.1.1: + version "9.2.1" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-9.2.1.tgz#67bd95f6e2cb64eafecfb0504be7cc38bcd4dd11" + integrity sha512-3jTGGLRzlhu/1ws2zlr4Q+GVMLCQTLFOj8CMX5x44cdZG9FQE07x2mQhaNxaKVPNmIDu0mvJ/cEwtY7Pim7hqA== + dependencies: + decode-uri-component "^0.4.1" + filter-obj "^5.1.0" + split-on-first "^3.0.0" + +ses@^1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/ses/-/ses-1.13.1.tgz#f73a8f6995d82d30fe60bee96f3b16a1ffbb663e" + integrity sha512-S3bHoi+rAdeWIF1+kDHzhSnAjEUV3iVDjiBybTuZtjsjtKeJmkrWfD0S+h4Dj14bg4qTGYhjw14iaV3RwIhRGA== + dependencies: + "@endo/env-options" "^1.1.10" + "@endo/immutable-arraybuffer" "^1.1.1" + shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -199,6 +541,11 @@ signal-exit@^4.1.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== +split-on-first@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-3.0.0.tgz#f04959c9ea8101b9b0bbf35a61b9ebea784a23e7" + integrity sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA== + strip-final-newline@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-4.0.0.tgz#35a369ec2ac43df356e3edd5dcebb6429aa1fa5c" @@ -209,20 +556,6 @@ unicorn-magic@^0.3.0: resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.3.0.tgz#4efd45c85a69e0dd576d25532fbfa22aa5c8a104" integrity sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA== -viem@^2.28.1: - version "2.31.6" - resolved "https://registry.yarnpkg.com/viem/-/viem-2.31.6.tgz#2a4e76b5e7201060a2a01820d1db4d87f420a0e0" - integrity sha512-2PPbXL/8bHQxUzaLFDk4R6WHifTcXxAqMC8/j6RBgXl/OexQ1HU8r9OukwfDTqrFoHtWWiYz5fktHATy7+U9nQ== - dependencies: - "@noble/curves" "1.9.2" - "@noble/hashes" "1.8.0" - "@scure/bip32" "1.7.0" - "@scure/bip39" "1.6.0" - abitype "1.0.8" - isows "1.0.7" - ox "0.8.1" - ws "8.18.2" - which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" @@ -230,11 +563,6 @@ which@^2.0.1: dependencies: isexe "^2.0.0" -ws@8.18.2: - version "8.18.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.2.tgz#42738b2be57ced85f46154320aabb51ab003705a" - integrity sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ== - yoctocolors@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/yoctocolors/-/yoctocolors-2.1.1.tgz#e0167474e9fbb9e8b3ecca738deaa61dd12e56fc" diff --git a/package.json b/package.json index bf071509..c9b9ca3f 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "update": "lerna update", "clean": "lerna clean", "start:cosmos": "lerna exec --scope=@axelar-network/axelar-local-dev-cosmos npm run start", + "relay:cosmos": "lerna exec --scope=@axelar-network/axelar-local-dev-cosmos npm run relay", "test:core": "lerna exec --scope=@axelar-network/axelar-local-dev npm run test", "test:near": "lerna exec --scope=@axelar-network/axelar-local-dev-near npm run test", "test:aptos": "lerna exec --scope=@axelar-network/axelar-local-dev-aptos npm run test", From a66b941ed23393137576a82d85bb2110bed52c46 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 3 Jul 2025 14:35:57 +0500 Subject: [PATCH 60/93] chore(lint): apply lint and rename AgoricProxy to Factory --- docs/guide_basic.md | 4 +- integration/scripts/lockdown.mjs | 10 ++-- packages/axelar-local-dev-aptos/README.md | 10 ++-- packages/axelar-local-dev-cosmos/README.md | 2 +- .../axelar-local-dev-cosmos/docs/example.md | 10 ++-- ...{deployAgoricProxy.ts => deployFactory.ts} | 10 ++-- .../jest/jest.global-setup.ts | 2 +- .../jest/jest.global-teardown.ts | 2 +- packages/axelar-local-dev-cosmos/package.json | 4 +- .../axelar-local-dev-cosmos/scripts/deploy.sh | 2 +- .../axelar-local-dev-cosmos/src/Command.ts | 24 +++++----- .../src/__tests__/DockerService.spec.ts | 6 +-- .../{AgoricProxy.spec.ts => Factory.spec.ts} | 32 ++++++------- .../src/__tests__/IBCRelayerClient.spec.ts | 4 +- .../{AgoricProxy.sol => Factory.sol} | 2 +- .../src/__tests__/e2e/relayer.e2e.ts | 10 ++-- .../src/__tests__/lib/fetchLcd.ts | 2 +- .../src/__tests__/lib/utils.ts | 47 ++++++++++--------- .../src/__tests__/path.spec.ts | 8 ++-- .../src/clients/cosmos/CosmosClient.ts | 16 +++---- .../src/clients/ibc/IBCRelayerClient.ts | 22 ++++----- .../src/clients/ibc/RelayerAccountManager.ts | 13 +++-- .../src/config/axelar/config.ts | 2 +- .../src/listeners/AxelarListener.ts | 6 +-- .../src/listeners/parser.ts | 8 ++-- packages/axelar-local-dev-cosmos/src/relay.ts | 8 ++-- .../src/relayFromEth.ts | 18 +++---- .../axelar-local-dev-cosmos/src/relayToEth.ts | 10 ++-- .../src/relayTokensToEth.ts | 14 +++--- .../src/services/AxelarRelayerService.ts | 36 +++++++------- .../src/services/DockerService.ts | 4 +- .../src/services/IBCRelayerService.ts | 2 +- packages/axelar-local-dev-cosmos/src/types.ts | 4 +- packages/axelar-local-dev-cosmos/src/utils.ts | 18 +++---- .../axelar-local-dev-cosmos/tsconfig.json | 2 +- .../axelar-local-dev-multiversx/README.md | 12 ++--- .../__tests__/multiversx.spec.ts | 6 +-- .../src/Command.ts | 12 ++--- .../src/MultiversXNetwork.ts | 12 ++--- .../src/MultiversXRelayer.ts | 10 ++-- .../axelar-local-dev-multiversx/src/its.ts | 6 +-- .../src/multiversXNetworkUtils.ts | 4 +- packages/axelar-local-dev-near/README.md | 8 ++-- .../axelar-local-dev-near/src/NearNetwork.ts | 14 +++--- .../src/__tests__/near.spec.ts | 4 +- .../src/relay/Command.ts | 6 +-- .../src/relay/NearRelayer.ts | 6 +-- packages/axelar-local-dev-sui/README.md | 10 ++-- packages/axelar-local-dev/README.md | 4 +- packages/axelar-local-dev/src/Network.ts | 20 ++++---- .../src/__tests__/export.spec.ts | 12 ++--- packages/axelar-local-dev/src/exportUtils.ts | 6 +-- packages/axelar-local-dev/src/its.ts | 12 ++--- packages/axelar-local-dev/src/networkUtils.ts | 2 +- .../axelar-local-dev/src/relay/Command.ts | 8 ++-- .../axelar-local-dev/src/relay/EvmRelayer.ts | 24 +++++----- .../axelar-local-dev/src/relay/Relayer.ts | 2 +- 57 files changed, 287 insertions(+), 287 deletions(-) rename packages/axelar-local-dev-cosmos/ignition/modules/{deployAgoricProxy.ts => deployFactory.ts} (76%) rename packages/axelar-local-dev-cosmos/src/__tests__/{AgoricProxy.spec.ts => Factory.spec.ts} (87%) rename packages/axelar-local-dev-cosmos/src/__tests__/contracts/{AgoricProxy.sol => Factory.sol} (99%) diff --git a/docs/guide_basic.md b/docs/guide_basic.md index 75e70b71..3466b83f 100644 --- a/docs/guide_basic.md +++ b/docs/guide_basic.md @@ -51,11 +51,11 @@ async function main() { // Log the token balances console.log( (await usdcEthContract.balanceOf(ethUserWallet.address)) / 1e6, - "aUSDC in Ethereum wallet" + "aUSDC in Ethereum wallet", ); console.log( (await usdcAvalancheContract.balanceOf(avalancheUserWallet.address)) / 1e6, - "aUSDC in Avalanche wallet" + "aUSDC in Avalanche wallet", ); } diff --git a/integration/scripts/lockdown.mjs b/integration/scripts/lockdown.mjs index 76a83b63..c94c18e2 100755 --- a/integration/scripts/lockdown.mjs +++ b/integration/scripts/lockdown.mjs @@ -1,10 +1,10 @@ -import 'ses'; -import '@endo/eventual-send/shim.js'; +import "ses"; +import "@endo/eventual-send/shim.js"; const options = { - overrideTaming: 'severe', - stackFiltering: 'verbose', - errorTaming: 'unsafe', + overrideTaming: "severe", + stackFiltering: "verbose", + errorTaming: "unsafe", }; lockdown(options); diff --git a/packages/axelar-local-dev-aptos/README.md b/packages/axelar-local-dev-aptos/README.md index 1f01207f..c072b5c5 100644 --- a/packages/axelar-local-dev-aptos/README.md +++ b/packages/axelar-local-dev-aptos/README.md @@ -43,13 +43,13 @@ For more details on setting up the `createAndExport` function, check our [Standa `AptosNetwork` is a generalization of `AptosClient` (avaliable in the `aptos` package) that includes (among others that are mainly used for intrnal purposes): -- `getResourceAccountAddress(MaybeHexString sourceAddress, MaybeHexString seed)`: Predicts the aptos resource address for an account with a certain seed. -- `deploy(string modulePath , string[] compiledModules, MaybeHexString seed)`: Deploy `compiledModules` found in `modulePath`. Seed is optional, if it is included then the modules are deployed as a resource. -- `submitTransactionAndWait(MaybeHexString from, EntryFunctionPayload txData)`: A wrapper for aptos' submit transaction workflow, for ease of use. +- `getResourceAccountAddress(MaybeHexString sourceAddress, MaybeHexString seed)`: Predicts the aptos resource address for an account with a certain seed. +- `deploy(string modulePath , string[] compiledModules, MaybeHexString seed)`: Deploy `compiledModules` found in `modulePath`. Seed is optional, if it is included then the modules are deployed as a resource. +- `submitTransactionAndWait(MaybeHexString from, EntryFunctionPayload txData)`: A wrapper for aptos' submit transaction workflow, for ease of use. Additionaly we export two utility functions -- `createAptosNetwork(config?: {nodeUrl: string, faucetUrl: string})`: This funds the `owner` account and uses it to deploy the gateway module. `nodeUrl` defaults to `http://localhost:8080` and `faucetUrl` defaults to `http://localhost:8081` -- `loadAptosNetwork(string nodeUrl)`: This loads the an preconfigured `AptosNetwork`. It is useful so that relaying works properly to said aptos network works properly. +- `createAptosNetwork(config?: {nodeUrl: string, faucetUrl: string})`: This funds the `owner` account and uses it to deploy the gateway module. `nodeUrl` defaults to `http://localhost:8080` and `faucetUrl` defaults to `http://localhost:8081` +- `loadAptosNetwork(string nodeUrl)`: This loads the an preconfigured `AptosNetwork`. It is useful so that relaying works properly to said aptos network works properly. `createAndExport` (see above) will try to also call `createAptosNetwork` so that realying works to aptos as well. diff --git a/packages/axelar-local-dev-cosmos/README.md b/packages/axelar-local-dev-cosmos/README.md index 6c145c3f..07b70a3f 100644 --- a/packages/axelar-local-dev-cosmos/README.md +++ b/packages/axelar-local-dev-cosmos/README.md @@ -39,7 +39,7 @@ import { } from "@axelar-network/axelar-local-dev-cosmos"; const axelarRelayerService = await AxelarRelayerService.create( - defaultAxelarChainInfo + defaultAxelarChainInfo, ); ``` diff --git a/packages/axelar-local-dev-cosmos/docs/example.md b/packages/axelar-local-dev-cosmos/docs/example.md index 14fcda13..574d8d60 100644 --- a/packages/axelar-local-dev-cosmos/docs/example.md +++ b/packages/axelar-local-dev-cosmos/docs/example.md @@ -53,7 +53,7 @@ const path = require("path"); ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, "Ethereum", - ] + ], ); // Deploy Contract on the Wasm Chain @@ -71,7 +71,7 @@ const path = require("path"); channel: ibcRelayer.srcChannelId, }, "send_receive", - "auto" + "auto", ); const messageToEthereum = "Hello from Ethereum"; @@ -90,7 +90,7 @@ const path = require("path"); }, "auto", "test", - [{ amount: "100000", denom: "uwasm" }] + [{ amount: "100000", denom: "uwasm" }], ); console.log("Wasm Chain Transaction Hash:", wasmTransaction.transactionHash); @@ -101,7 +101,7 @@ const path = require("path"); messageToEthereum, { value: ethers.utils.parseEther("0.001"), - } + }, ); console.log("Ethereum Chain Transaction Hash:", ethereumTransaction.hash); @@ -123,7 +123,7 @@ const path = require("path"); wasmContractInstantiation.contractAddress, { get_stored_message: {}, - } + }, ); console.log("Message on Wasm Contract:", wasmResponse.message); diff --git a/packages/axelar-local-dev-cosmos/ignition/modules/deployAgoricProxy.ts b/packages/axelar-local-dev-cosmos/ignition/modules/deployFactory.ts similarity index 76% rename from packages/axelar-local-dev-cosmos/ignition/modules/deployAgoricProxy.ts rename to packages/axelar-local-dev-cosmos/ignition/modules/deployFactory.ts index 4ee497f8..b2cde5b6 100644 --- a/packages/axelar-local-dev-cosmos/ignition/modules/deployAgoricProxy.ts +++ b/packages/axelar-local-dev-cosmos/ignition/modules/deployFactory.ts @@ -12,16 +12,12 @@ if (!GATEWAY_CONTRACT || !GAS_SERVICE_CONTRACT) { throw new Error("Missing env vars"); } -export default buildModule("AgoricProxyModule", (m) => { +export default buildModule("FactoryModule", (m) => { const gateway = m.getParameter("gateway_", GATEWAY_CONTRACT); const gasService = m.getParameter("gasReceiver_", GAS_SERVICE_CONTRACT); const chainName = m.getParameter("chainName_", "Avalanche"); - const AgoricProxy = m.contract("AgoricProxy", [ - gateway, - gasService, - chainName, - ]); + const Factory = m.contract("Factory", [gateway, gasService, chainName]); - return { AgoricProxy }; + return { Factory }; }); diff --git a/packages/axelar-local-dev-cosmos/jest/jest.global-setup.ts b/packages/axelar-local-dev-cosmos/jest/jest.global-setup.ts index d6ca1ea2..a50e806f 100644 --- a/packages/axelar-local-dev-cosmos/jest/jest.global-setup.ts +++ b/packages/axelar-local-dev-cosmos/jest/jest.global-setup.ts @@ -26,7 +26,7 @@ export default async () => { await startChains(); } catch (e) { console.error( - "\nPlease make sure you have started the docker containers by running `npm start` before running tests" + "\nPlease make sure you have started the docker containers by running `npm start` before running tests", ); throw e; } diff --git a/packages/axelar-local-dev-cosmos/jest/jest.global-teardown.ts b/packages/axelar-local-dev-cosmos/jest/jest.global-teardown.ts index 14dc558e..effde09e 100644 --- a/packages/axelar-local-dev-cosmos/jest/jest.global-teardown.ts +++ b/packages/axelar-local-dev-cosmos/jest/jest.global-teardown.ts @@ -5,7 +5,7 @@ export default async () => { await stopAll(); } catch (e) { console.error( - "\nPlease make sure you have started the docker containers by running `npm start` before running tests" + "\nPlease make sure you have started the docker containers by running `npm start` before running tests", ); throw e; } diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index 4963f5e5..5b419dd9 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -23,8 +23,8 @@ "relayToEth": "ts-node scripts/relayToEth.ts", "relayWithTokens": "ts-node scripts/relayWithTokens.ts", "relayFromEth": "ts-node scripts/relayFromEth.ts", - "test:proxy": "hardhat test src/__tests__/AgoricProxy.spec.ts", - "coverage:proxy": "npx hardhat coverage --testfiles src/__tests__/AgoricProxy.spec.ts" + "test:proxy": "hardhat test src/__tests__/Factory.spec.ts", + "coverage:proxy": "npx hardhat coverage --testfiles src/__tests__/Factory.spec.ts" }, "dependencies": { "@axelar-network/axelar-local-dev": "^2.3.2", diff --git a/packages/axelar-local-dev-cosmos/scripts/deploy.sh b/packages/axelar-local-dev-cosmos/scripts/deploy.sh index 3a8c0b3c..e67559bd 100755 --- a/packages/axelar-local-dev-cosmos/scripts/deploy.sh +++ b/packages/axelar-local-dev-cosmos/scripts/deploy.sh @@ -44,4 +44,4 @@ base) esac delete_deployments_folder "ignition/deployments" -deploy_contract "./ignition/modules/deployAgoricProxy.ts" "$GATEWAY" "$GAS_SERVICE" +deploy_contract "./ignition/modules/deployFactory.ts" "$GATEWAY" "$GAS_SERVICE" diff --git a/packages/axelar-local-dev-cosmos/src/Command.ts b/packages/axelar-local-dev-cosmos/src/Command.ts index aaf417ff..531b94d9 100644 --- a/packages/axelar-local-dev-cosmos/src/Command.ts +++ b/packages/axelar-local-dev-cosmos/src/Command.ts @@ -7,7 +7,7 @@ import { getConfirmGatewayTxPayload, getRouteMessagePayload, getVoteRequestPayload, - incrementPollCounter + incrementPollCounter, } from "./utils"; const abiCoder = new AbiCoder(); @@ -25,7 +25,7 @@ export class Command { data: any[], dataSignature: string[], post: (wasmClient: CosmosClient) => Promise, - chain: string | null = null + chain: string | null = null, ) { this.commandId = commandId; this.name = name; @@ -40,7 +40,7 @@ export class Command { static createWasmContractCallCommand = ( commandId: string, relayData: RelayData, - args: CallContractArgs + args: CallContractArgs, ) => { return new Command( commandId, @@ -61,17 +61,17 @@ export class Command { console.log( "[Ethereum Relayer]", "Confirming Gateway Tx", - args.transactionHash + args.transactionHash, ); const confirmGatewayTxPayload = getConfirmGatewayTxPayload( senderAddress, args.from, - args.transactionHash + args.transactionHash, ); const confirmGatewayTxResponse = await client.signAndBroadcast( senderAddress, confirmGatewayTxPayload, - "auto" + "auto", ); // Vote on the poll created by the axelar (normally done by the validator) @@ -81,12 +81,12 @@ export class Command { wasmClient.getOwnerAccount(), args, confirmGatewayTxResponse, - pollId + pollId, ); const VoteRequestResponse = await wasmClient.client.signAndBroadcast( wasmClient.getOwnerAccount(), voteRequestPayload, - "auto" + "auto", ); // Route the message created by the poll to the destination chain @@ -103,17 +103,17 @@ export class Command { const routeMessagePayload = getRouteMessagePayload( wasmClient.getOwnerAccount(), args, - eventId + eventId, ); const routeMessageResponse = await wasmClient.client.signAndBroadcast( wasmClient.getOwnerAccount(), routeMessagePayload, - "auto" + "auto", ); console.log( "[Ethereum Relayer]", "Event routed to agoric", - routeMessageResponse.transactionHash + routeMessageResponse.transactionHash, ); relayData.callContract[commandId].execution = @@ -121,7 +121,7 @@ export class Command { return routeMessageResponse; }, - "wasm" + "wasm", ); }; } diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts index 51bbae64..474ebb7a 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/DockerService.spec.ts @@ -11,7 +11,7 @@ describe("DockerService", () => { const testLcd = "cosmos/base/tendermint/v1beta1/node_info"; const healthAxelarRpc = await fetch("http://localhost/axelar-rpc"); const healthAxelarLcd = await fetch( - `http://localhost/axelar-lcd/${testLcd}` + `http://localhost/axelar-lcd/${testLcd}`, ); const healthWasmRpc = await fetch("http://localhost/wasm-rpc"); const healthWasmLcd = await fetch(`http://localhost/wasm-lcd/${testLcd}`); @@ -42,7 +42,7 @@ describe("DockerService", () => { it("should have registered wasm chain", async () => { const response = await fetchAxelarLcd( - "axelar/nexus/v1beta1/chain_state/wasm" + "axelar/nexus/v1beta1/chain_state/wasm", ); const { activated, chain } = response.state; expect(chain).toEqual({ @@ -56,7 +56,7 @@ describe("DockerService", () => { it("should have chain maintainer for ethereum", async () => { const response = await fetchAxelarLcd( - "axelar/nexus/v1beta1/chain_maintainers/ethereum" + "axelar/nexus/v1beta1/chain_maintainers/ethereum", ); expect(response.maintainers.length).toBeGreaterThan(0); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts similarity index 87% rename from packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts rename to packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts index ea33c791..c74c4789 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/AgoricProxy.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts @@ -26,8 +26,8 @@ const createRemoteEVMAccount = async ( return wallet; }; -describe("AgoricProxy", () => { - let owner, addr1, agoricProxy, axelarGatewayMock; +describe("Factory", () => { + let owner, addr1, factory, axelarGatewayMock; const abiCoder = new ethers.AbiCoder(); const expectedWalletAddress = "0x856e4424f806D16E8CBC702B3c0F2ede5468eae5"; @@ -71,13 +71,13 @@ describe("AgoricProxy", () => { tokenDeployer.target, ); - const Contract = await ethers.getContractFactory("AgoricProxy"); - agoricProxy = await Contract.deploy( + const Contract = await ethers.getContractFactory("Factory"); + factory = await Contract.deploy( axelarGatewayMock.target, axelarGasServiceMock.target, "Ethereum", ); - await agoricProxy.waitForDeployment(); + await factory.waitForDeployment(); await deployToken({ commandId: getCommandId(), @@ -93,21 +93,21 @@ describe("AgoricProxy", () => { }); }); - it("fund AgoricProxy with ETH to pay for gas", async () => { + it("fund Factory with ETH to pay for gas", async () => { const provider = ethers.provider; - const agoricProxyAddress = await agoricProxy.getAddress(); - const balanceBefore = await provider.getBalance(agoricProxyAddress); + const factoryAddress = await factory.getAddress(); + const balanceBefore = await provider.getBalance(factoryAddress); expect(balanceBefore).to.equal(ethers.parseEther("0")); const tx = await owner.sendTransaction({ - to: agoricProxyAddress, + to: factoryAddress, value: ethers.parseEther("5.0"), }); await tx.wait(); const receipt = await provider.getTransactionReceipt(tx.hash); - const iface = (await ethers.getContractFactory("AgoricProxy")).interface; + const iface = (await ethers.getContractFactory("Factory")).interface; const receivedEvent = receipt?.logs .map((log) => { try { @@ -122,11 +122,11 @@ describe("AgoricProxy", () => { expect(receivedEvent?.args.sender).to.equal(owner.address); expect(receivedEvent?.args.amount).to.equal(ethers.parseEther("5.0")); - const balanceAfter = await provider.getBalance(agoricProxyAddress); + const balanceAfter = await provider.getBalance(factoryAddress); expect(balanceAfter).to.equal(ethers.parseEther("5.0")); }); - it("should create a new remote wallet using AgoricProxy", async () => { + it("should create a new remote wallet using Factory", async () => { const commandId = getCommandId(); const abiCoder = ethers.AbiCoder.defaultAbiCoder(); @@ -137,14 +137,14 @@ describe("AgoricProxy", () => { commandId, from: sourceContract, sourceAddress, - targetAddress: agoricProxy.target, + targetAddress: factory.target, payload: payloadHash, owner, AxelarGateway: axelarGatewayMock, abiCoder, }); - const tx = await agoricProxy.execute( + const tx = await factory.execute( commandId, sourceContract, sourceAddress, @@ -152,9 +152,9 @@ describe("AgoricProxy", () => { ); await expect(tx) - .to.emit(agoricProxy, "SmartWalletCreated") + .to.emit(factory, "SmartWalletCreated") .withArgs(expectedWalletAddress, sourceAddress, "agoric", sourceAddress); - await expect(tx).to.emit(agoricProxy, "CrossChainCallSent"); + await expect(tx).to.emit(factory, "CrossChainCallSent"); }); it("should use the remote wallet to call other contracts", async () => { diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts index 6a30e0e8..0feb652d 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/IBCRelayerClient.spec.ts @@ -19,12 +19,12 @@ describe("IBCRelayerClient", () => { it("should create a wallet from a mnemonic if provided", async () => { const mockMnemonic = await DirectSecp256k1HdWallet.generate(12).then( - (w) => w.mnemonic + (w) => w.mnemonic, ); const result = await IBCRelayerClient.create(mockMnemonic); expect(result.relayerAccountManager.relayerAccount.mnemonic).toEqual( - mockMnemonic + mockMnemonic, ); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol similarity index 99% rename from packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol rename to packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index e70a74b5..bd639065 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/AgoricProxy.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -83,7 +83,7 @@ contract Wallet is AxelarExecutable, Ownable { } } -contract AgoricProxy is AxelarExecutable { +contract Factory is AxelarExecutable { using StringToAddress for string; using AddressToString for address; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/e2e/relayer.e2e.ts b/packages/axelar-local-dev-cosmos/src/__tests__/e2e/relayer.e2e.ts index c85c6e35..72af0807 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/e2e/relayer.e2e.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/e2e/relayer.e2e.ts @@ -38,7 +38,7 @@ describe("Relayer", () => { const evmSendReceive = await deployContract( evmNetwork.userWallets[0], SendReceive, - [evmNetwork.gateway.address, evmNetwork.gasService.address, "ethereum"] + [evmNetwork.gateway.address, evmNetwork.gasService.address, "ethereum"], ); console.log("Deploy EVM Contract", evmSendReceive.address); @@ -59,7 +59,7 @@ describe("Relayer", () => { channel: srcChannelId, }, "amazing random contract", - "auto" + "auto", ); console.log("Deployed Wasm contract:", contractAddress); @@ -90,11 +90,11 @@ describe("Relayer", () => { wasmContractAddress, { get_stored_message: {}, - } + }, ); expect(response.sender.toLowerCase()).toBe( - evmNetwork.userWallets[0].address.toLowerCase() + evmNetwork.userWallets[0].address.toLowerCase(), ); expect(response.message).toBe(message); }); @@ -117,7 +117,7 @@ describe("Relayer", () => { }, "auto", "test", - [{ amount: "100000", denom: "uwasm" }] + [{ amount: "100000", denom: "uwasm" }], ); // await ibcRelayer.relay(); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts b/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts index 1c62660d..f2bdc449 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/lib/fetchLcd.ts @@ -2,6 +2,6 @@ import fetch from "node-fetch"; export function fetchAxelarLcd(endpoint?: string) { return fetch(`http://localhost/axelar-lcd/${endpoint}`).then((res) => - res.json() + res.json(), ); } diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts b/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts index df98df15..41867556 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts @@ -1,16 +1,21 @@ -import { encodeFunctionData, keccak256, toBytes, encodeAbiParameters } from 'viem'; -import { network } from 'hardhat'; +import { + encodeFunctionData, + keccak256, + toBytes, + encodeAbiParameters, +} from "viem"; +import { network } from "hardhat"; export const constructContractCall = ({ target, functionSignature, args }) => { - const [name, paramsRaw] = functionSignature.split('('); - const params = paramsRaw.replace(')', '').split(',').filter(Boolean); + const [name, paramsRaw] = functionSignature.split("("); + const params = paramsRaw.replace(")", "").split(",").filter(Boolean); return { target, data: encodeFunctionData({ abi: [ { - type: 'function', + type: "function", name, inputs: params.map((type, i) => ({ type, name: `arg${i}` })), }, @@ -32,24 +37,24 @@ export const approveMessage = async ({ abiCoder, }) => { const params = abiCoder.encode( - ['string', 'string', 'address', 'bytes32'], + ["string", "string", "address", "bytes32"], [from, sourceAddress, targetAddress, payload], ); const data = toBytes( abiCoder.encode( - ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], - [network.config.chainId, [commandId], ['approveContractCall'], [params]], + ["uint256", "bytes32[]", "string[]", "bytes[]"], + [network.config.chainId, [commandId], ["approveContractCall"], [params]], ), ); const hash = keccak256(data); const signature = await owner.signMessage(toBytes(hash)); const signatureBundle = abiCoder.encode( - ['address[]', 'uint256[]', 'uint256', 'bytes[]'], + ["address[]", "uint256[]", "uint256", "bytes[]"], [[owner.address], [1], 1, [signature]], ); - const input = abiCoder.encode(['bytes', 'bytes'], [data, signatureBundle]); + const input = abiCoder.encode(["bytes", "bytes"], [data, signatureBundle]); const response = await AxelarGateway.connect(owner).execute(input, { gasLimit: BigInt(8e6), }); @@ -69,7 +74,7 @@ export const approveMessageWithToken = async ({ abiCoder, }) => { const params = abiCoder.encode( - ['string', 'string', 'address', 'bytes32', 'string', 'uint256'], + ["string", "string", "address", "bytes32", "string", "uint256"], [ from, sourceAddress, @@ -81,11 +86,11 @@ export const approveMessageWithToken = async ({ ); const data = toBytes( abiCoder.encode( - ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], + ["uint256", "bytes32[]", "string[]", "bytes[]"], [ network.config.chainId, [commandId], - ['approveContractCallWithMint'], + ["approveContractCallWithMint"], [params], ], ), @@ -94,11 +99,11 @@ export const approveMessageWithToken = async ({ const hash = keccak256(data); const signature = await owner.signMessage(toBytes(hash)); const signatureBundle = abiCoder.encode( - ['address[]', 'uint256[]', 'uint256', 'bytes[]'], + ["address[]", "uint256[]", "uint256", "bytes[]"], [[owner.address], [1], 1, [signature]], ); - const input = abiCoder.encode(['bytes', 'bytes'], [data, signatureBundle]); + const input = abiCoder.encode(["bytes", "bytes"], [data, signatureBundle]); const response = await AxelarGateway.connect(owner).execute(input, { gasLimit: BigInt(8e6), }); @@ -118,25 +123,25 @@ export const deployToken = async ({ abiCoder, }) => { const params = abiCoder.encode( - ['string', 'string', 'uint8', 'uint256', 'address', 'uint256'], + ["string", "string", "uint8", "uint256", "address", "uint256"], [name, symbol, decimals, cap, tokenAddress, mintLimit], ); const data = toBytes( abiCoder.encode( - ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], - [network.config.chainId, [commandId], ['deployToken'], [params]], + ["uint256", "bytes32[]", "string[]", "bytes[]"], + [network.config.chainId, [commandId], ["deployToken"], [params]], ), ); const hash = keccak256(data); const signature = await owner.signMessage(toBytes(hash)); const signatureBundle = abiCoder.encode( - ['address[]', 'uint256[]', 'uint256', 'bytes[]'], + ["address[]", "uint256[]", "uint256", "bytes[]"], [[owner.address], [1], 1, [signature]], ); - const input = abiCoder.encode(['bytes', 'bytes'], [data, signatureBundle]); + const input = abiCoder.encode(["bytes", "bytes"], [data, signatureBundle]); const response = await AxelarGateway.connect(owner).execute(input, { gasLimit: BigInt(8e6), }); @@ -155,7 +160,7 @@ export const encodeMulticallPayload = (calls) => { ], }, ], - [calls] + [calls], ); }; diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts index 4d385a2f..e0fb832f 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/path.spec.ts @@ -3,16 +3,16 @@ import { Path } from "../path"; describe("path", () => { it("should define path correctly", () => { expect(Path.base).toContain( - "axelar-local-dev/packages/axelar-local-dev-cosmos" + "axelar-local-dev/packages/axelar-local-dev-cosmos", ); expect(Path.info).toContain( - "axelar-local-dev/packages/axelar-local-dev-cosmos/info" + "axelar-local-dev/packages/axelar-local-dev-cosmos/info", ); expect(Path.docker("axelar")).toContain( - "axelar-local-dev/packages/axelar-local-dev-cosmos/docker/axelar" + "axelar-local-dev/packages/axelar-local-dev-cosmos/docker/axelar", ); expect(Path.docker("wasm")).toContain( - "axelar-local-dev/packages/axelar-local-dev-cosmos/docker/wasm" + "axelar-local-dev/packages/axelar-local-dev-cosmos/docker/wasm", ); }); }); diff --git a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts index 0f9277f2..25df48a7 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/cosmos/CosmosClient.ts @@ -27,7 +27,7 @@ export class CosmosClient { chainInfo: Required, owner: DirectSecp256k1HdWallet, client: SigningStargateClient, - gasPrice: GasPrice = GasPrice.fromString(`1${chainInfo.denom}`) + gasPrice: GasPrice = GasPrice.fromString(`1${chainInfo.denom}`), ) { this.chainInfo = chainInfo; this.owner = owner; @@ -47,7 +47,7 @@ export class CosmosClient { chain: CosmosChain = "agoric", mnemonic?: string, config: Omit = { prefix: chain }, - gasPrice?: GasPrice + gasPrice?: GasPrice, ) { const defaultDenom = chain === "agoric" ? "ubld" : "uaxl"; const chainInfo = { @@ -99,7 +99,7 @@ export class CosmosClient { const client = await SigningStargateClient.connectWithSigner( chainInfo.rpcUrl, owner, - { gasPrice: gasPrice, registry } + { gasPrice: gasPrice, registry }, ); return new CosmosClient( @@ -113,7 +113,7 @@ export class CosmosClient { }, owner, client, - gasPrice + gasPrice, ); } @@ -125,7 +125,7 @@ export class CosmosClient { */ static async createOrImportAccount( prefix: CosmosChain, - mnemonic?: string + mnemonic?: string, ): Promise { if (mnemonic) { return DirectSecp256k1HdWallet.fromMnemonic(mnemonic, { prefix }); @@ -186,7 +186,7 @@ export class CosmosClient { denom: this.chainInfo.denom, }, ], - 1.8 + 1.8, ) .then((res) => { if (res.code !== 0) { @@ -224,7 +224,7 @@ export class CosmosClient { */ async createFundedSigningClient( chain: CosmosChain = "wasm", - amount: string = "10000000" + amount: string = "10000000", ) { const wallet = await DirectSecp256k1HdWallet.generate(12, { prefix: chain, @@ -238,7 +238,7 @@ export class CosmosClient { wallet, { gasPrice: this.gasPrice, - } + }, ); return { diff --git a/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts b/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts index 8bb4a617..f614702c 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/ibc/IBCRelayerClient.ts @@ -21,7 +21,7 @@ export class IBCRelayerClient { private constructor( axelarClient: CosmosClient, wasmClient: CosmosClient, - relayer: DirectSecp256k1HdWallet + relayer: DirectSecp256k1HdWallet, ) { this.axelarClient = axelarClient; this.wasmClient = wasmClient; @@ -35,7 +35,7 @@ export class IBCRelayerClient { this.relayerAccountManager = new RelayerAccountManager( this.axelarClient, this.wasmClient, - relayer + relayer, ); } @@ -44,7 +44,7 @@ export class IBCRelayerClient { const wasmClient = await CosmosClient.create("agoric"); const relayer = await RelayerAccountManager.createRelayerAccount( "agoric", - mnemonic + mnemonic, ); return new IBCRelayerClient(axelarClient, wasmClient, relayer); @@ -57,7 +57,7 @@ export class IBCRelayerClient { this.relayerAccountManager.relayerAccount.mnemonic, { prefix, - } + }, ); return IbcClient.connectWithSigner( client.chainInfo.rpcUrl, @@ -68,7 +68,7 @@ export class IBCRelayerClient { estimatedBlockTime: 400, estimatedIndexerTime: 60, logger: this.logger, - } + }, ); } @@ -80,7 +80,7 @@ export class IBCRelayerClient { try { const json = readFileSync( path.join(Path.info, "connection.json"), - "utf8" + "utf8", ); return JSON.parse(json); } catch (e) { @@ -120,7 +120,7 @@ export class IBCRelayerClient { wasmIBCClient, connection.axelar.connectionId, connection.wasm.connectionId, - this.logger + this.logger, ); } catch (e) {} } @@ -128,7 +128,7 @@ export class IBCRelayerClient { if (!this.link) { this.link = await Link.createWithNewConnections( axelarIBCClient, - wasmIBCClient + wasmIBCClient, ); if (saveToFile) { @@ -145,7 +145,7 @@ export class IBCRelayerClient { wasm: { connectionId: this.link.endB.connectionID, }, - }) + }), ); } } @@ -177,7 +177,7 @@ export class IBCRelayerClient { "transfer", "transfer", Order.ORDER_UNORDERED, - "ics20-1" + "ics20-1", ); if (saveToFile) { @@ -203,7 +203,7 @@ export class IBCRelayerClient { this.lastRelayedHeight = await this.link!.checkAndRelayPacketsAndAcks( this.lastRelayedHeight, 2, - 6 + 6, ); return this.lastRelayedHeight; diff --git a/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts b/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts index abb5ee0d..1bd11376 100644 --- a/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts +++ b/packages/axelar-local-dev-cosmos/src/clients/ibc/RelayerAccountManager.ts @@ -21,7 +21,7 @@ export class RelayerAccountManager { constructor( axelarClient: CosmosClient, wasmClient: CosmosClient, - relayerAccount: DirectSecp256k1HdWallet + relayerAccount: DirectSecp256k1HdWallet, ) { this.axelarClient = axelarClient; this.wasmClient = wasmClient; @@ -36,7 +36,7 @@ export class RelayerAccountManager { */ static async createRelayerAccount( prefix: CosmosChain, - mnemonic?: string + mnemonic?: string, ): Promise { if (mnemonic) { return DirectSecp256k1HdWallet.fromMnemonic(mnemonic, { prefix }); @@ -64,7 +64,7 @@ export class RelayerAccountManager { * @param minAmount minimum amount to fund the relayer accounts. Default is 10,000,000 */ async fundRelayerAccountsIfNeeded( - minAmount = RelayerAccountManager.DEFAULT_MIN_FUND_AMOUNT + minAmount = RelayerAccountManager.DEFAULT_MIN_FUND_AMOUNT, ): Promise { const fund = await this.getRelayerFund(); @@ -81,7 +81,7 @@ export class RelayerAccountManager { * @param amount amount to fund the relayer accounts. Default is 1,000,000,000 */ async fundRelayer( - amount = RelayerAccountManager.DEFAULT_FUND_AMOUNT + amount = RelayerAccountManager.DEFAULT_FUND_AMOUNT, ): Promise { const relayerAddress = await this.getRelayerAddress("agoric"); const relayerAxelarAddress = await this.getRelayerAddress("axelar"); @@ -103,9 +103,8 @@ export class RelayerAccountManager { const balance = await this.wasmClient.getBalance(relayerAddress); // console.log("Relayer wasm balance", balance); - const axelarBalance = await this.axelarClient.getBalance( - relayerAxelarAddress - ); + const axelarBalance = + await this.axelarClient.getBalance(relayerAxelarAddress); // console.log("Relayer axelar balance", axelarBalance); return { diff --git a/packages/axelar-local-dev-cosmos/src/config/axelar/config.ts b/packages/axelar-local-dev-cosmos/src/config/axelar/config.ts index 2fa51af5..7af52051 100644 --- a/packages/axelar-local-dev-cosmos/src/config/axelar/config.ts +++ b/packages/axelar-local-dev-cosmos/src/config/axelar/config.ts @@ -15,7 +15,7 @@ const runChainSetup = () => { return reject(error); } resolve(true); - } + }, ); }); }; diff --git a/packages/axelar-local-dev-cosmos/src/listeners/AxelarListener.ts b/packages/axelar-local-dev-cosmos/src/listeners/AxelarListener.ts index aa344e05..ce4b30c7 100644 --- a/packages/axelar-local-dev-cosmos/src/listeners/AxelarListener.ts +++ b/packages/axelar-local-dev-cosmos/src/listeners/AxelarListener.ts @@ -46,7 +46,7 @@ export class AxelarListener { id: 1, method: "subscribe", params: [event.topicId], - }) + }), ); logger.log(`[AxelarListener] Listening to "${event.type}" event`); } @@ -60,7 +60,7 @@ export class AxelarListener { ws: ReconnectingWebSocket, event: AxelarListenerEvent, ev: MessageEvent, - callback: (args: T) => void + callback: (args: T) => void, ) { // convert buffer to json const _event = JSON.parse(ev.data.toString()); @@ -78,7 +78,7 @@ export class AxelarListener { }) .catch((e) => { logger.log( - `[AxelarListener] Failed to parse topic ${event.topicId} GMP event: ${e}` + `[AxelarListener] Failed to parse topic ${event.topicId} GMP event: ${e}`, ); }); } diff --git a/packages/axelar-local-dev-cosmos/src/listeners/parser.ts b/packages/axelar-local-dev-cosmos/src/listeners/parser.ts index 3270f2c2..0cebfa5f 100644 --- a/packages/axelar-local-dev-cosmos/src/listeners/parser.ts +++ b/packages/axelar-local-dev-cosmos/src/listeners/parser.ts @@ -13,7 +13,7 @@ const removeQuote = (str: string) => { }; export function parseContractCallSubmittedEvent( - event: any + event: any, ): Promise> { const key = "axelar.axelarnet.v1beta1.ContractCallSubmitted"; const data = { @@ -24,7 +24,7 @@ export function parseContractCallSubmittedEvent( contractAddress: removeQuote(event[`${key}.contract_address`][0]), payload: `0x${decodeBase64(removeQuote(event[`${key}.payload`][0]))}`, payloadHash: `0x${decodeBase64( - removeQuote(event[`${key}.payload_hash`][0]) + removeQuote(event[`${key}.payload_hash`][0]), )}`, }; @@ -37,7 +37,7 @@ export function parseContractCallSubmittedEvent( } export function parseContractCallWithTokenSubmittedEvent( - event: any + event: any, ): Promise> { const key = "axelar.axelarnet.v1beta1.ContractCallWithTokenSubmitted"; const asset = JSON.parse(event[`${key}.asset`][0]); @@ -50,7 +50,7 @@ export function parseContractCallWithTokenSubmittedEvent( contractAddress: removeQuote(event[`${key}.contract_address`][0]), payload: `0x${decodeBase64(removeQuote(event[`${key}.payload`][0]))}`, payloadHash: `0x${decodeBase64( - removeQuote(event[`${key}.payload_hash`][0]) + removeQuote(event[`${key}.payload_hash`][0]), )}`, symbol: asset.denom, amount: asset.amount, diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts index 12b0210b..beeb69bb 100644 --- a/packages/axelar-local-dev-cosmos/src/relay.ts +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -9,7 +9,7 @@ import { AxelarRelayerService, defaultAxelarChainInfo } from "./index"; export const relayBasic = async () => { const axelarRelayer = await AxelarRelayerService.create( - defaultAxelarChainInfo + defaultAxelarChainInfo, ); const ethereumNetwork = await createNetwork({ name: "Ethereum" }); @@ -17,18 +17,18 @@ export const relayBasic = async () => { const multiCallContract = await deployContract( ethereumNetwork.userWallets[0], - require("../artifacts/src/__tests__/contracts/Multicall.sol/Multicall.json") + require("../artifacts/src/__tests__/contracts/Multicall.sol/Multicall.json"), ); console.log("MultiCall Contract Address:", multiCallContract.address); const factoryContract = await deployContract( ethereumNetwork.userWallets[0], - require("../artifacts/src/__tests__/contracts/AgoricProxy.sol/AgoricProxy.json"), + require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"), [ ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, "Ethereum", - ] + ], ); console.log("Factory Contract Address:", factoryContract.address); diff --git a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts index 89d4dd98..ffd2c43e 100644 --- a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayFromEth.ts @@ -20,7 +20,7 @@ const uint8ArrayToHex = (uint8Array: Uint8Array): string => { const pack = ( functionSignature: string, paramTypes: Array, - params: Array + params: Array, ) => { const functionHash = createKeccakHash("keccak256") .update(functionSignature) @@ -30,17 +30,17 @@ const pack = ( Uint8Array.from([ ...Uint8Array.from(functionHash.subarray(0, 4)), ...encode(paramTypes, params), - ]) + ]), ); }; export const relayDataFromEth = async () => { const axelarRelayer = await AxelarRelayerService.create( - defaultAxelarChainInfo + defaultAxelarChainInfo, ); - const Factory = require("../artifacts/src/__tests__/contracts/AgoricProxy.sol/AgoricProxy.json"); - const WalletContract = require("../artifacts/src/__tests__/contracts/AgoricProxy.sol/Wallet.json"); + const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); + const WalletContract = require("../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json"); const ethereumNetwork = await createNetwork({ name: "Ethereum" }); const ethereumContract = await deployContract( @@ -50,7 +50,7 @@ export const relayDataFromEth = async () => { ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, "Ethereum", - ] + ], ); const ethereumWallet = await deployContract( ethereumNetwork.userWallets[0], @@ -58,7 +58,7 @@ export const relayDataFromEth = async () => { [ ethereumNetwork.gateway.address, "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl", - ] + ], ); console.log("Ethereum Contract Address:", ethereumWallet.address); @@ -127,13 +127,13 @@ export const relayDataFromEth = async () => { console.log("Preparing to send tokens..."); const signingClient = await SigningStargateClient.connectWithSigner( "http://localhost/agoric-rpc", - signer.owner + signer.owner, ); const response = await signingClient.signAndBroadcast( senderAddress, message, - fee + fee, ); evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); diff --git a/packages/axelar-local-dev-cosmos/src/relayToEth.ts b/packages/axelar-local-dev-cosmos/src/relayToEth.ts index 084677e3..8ee61d37 100644 --- a/packages/axelar-local-dev-cosmos/src/relayToEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayToEth.ts @@ -13,7 +13,7 @@ import { export const relayDataToEth = async () => { // Initialize the Axelar Relayer Service with default configuration const axelarRelayer = await AxelarRelayerService.create( - defaultAxelarChainInfo + defaultAxelarChainInfo, ); const SendReceive = require("../artifacts/src/__tests__/contracts/SendReceive.sol/SendReceive.json"); @@ -26,7 +26,7 @@ export const relayDataToEth = async () => { ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, "Ethereum", - ] + ], ); const ibcRelayer = axelarRelayer.ibcRelayer; @@ -49,7 +49,7 @@ export const relayDataToEth = async () => { const payload = encode( ["string", "string"], - ["agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl", "Hello, world!"] + ["agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl", "Hello, world!"], ); const memo = { @@ -86,7 +86,7 @@ export const relayDataToEth = async () => { console.log("Preparing to send tokens..."); const signingClient = await SigningStargateClient.connectWithSigner( "http://localhost/agoric-rpc", - signer.owner + signer.owner, ); // Set up the Relayer for Wasm Chain evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); @@ -95,7 +95,7 @@ export const relayDataToEth = async () => { const response = await signingClient.signAndBroadcast( senderAddress, message, - fee + fee, ); console.log("transaction response", response); diff --git a/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts b/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts index 21a0542f..d06b33db 100644 --- a/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts +++ b/packages/axelar-local-dev-cosmos/src/relayTokensToEth.ts @@ -13,7 +13,7 @@ import { export const relayDataToEth = async () => { // Initialize the Axelar Relayer Service with default configuration const axelarRelayer = await AxelarRelayerService.create( - defaultAxelarChainInfo + defaultAxelarChainInfo, ); const CallContractWithToken = require("../artifacts/src/__tests__/contracts/ContractCallWithToken.sol/CallContractWithToken.json"); @@ -22,7 +22,7 @@ export const relayDataToEth = async () => { const ethereumContract = await deployContract( ethereumNetwork.userWallets[0], CallContractWithToken, - [ethereumNetwork.gateway.address, ethereumNetwork.gasService.address] + [ethereumNetwork.gateway.address, ethereumNetwork.gasService.address], ); // Deploy tokens @@ -30,7 +30,7 @@ export const relayDataToEth = async () => { "USDC", "aUSDC", 6, - BigInt(100_000e6) + BigInt(100_000e6), ); const ibcRelayer = axelarRelayer.ibcRelayer; @@ -58,7 +58,7 @@ export const relayDataToEth = async () => { const payload = encode(["address[]"], [[ADDRESS_TO_DEPOSIT]]); console.log( "Balance of account before relaying", - await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT) + await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT), ); const memo = { @@ -98,7 +98,7 @@ export const relayDataToEth = async () => { console.log("Preparing to send tokens..."); const signingClient = await SigningStargateClient.connectWithSigner( "http://localhost/agoric-rpc", - signer.owner + signer.owner, ); // Set up the Relayer for Wasm Chain evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); @@ -107,7 +107,7 @@ export const relayDataToEth = async () => { const response = await signingClient.signAndBroadcast( senderAddress, message, - fee + fee, ); console.log("transaction response", response); @@ -119,7 +119,7 @@ export const relayDataToEth = async () => { console.log( "Balance of account after relaying", - await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT) + await tokenContract.balanceOf(ADDRESS_TO_DEPOSIT), ); const ethereumMessage = await ethereumContract.storedMessage(); console.log("Message on Ethereum Contract:", ethereumMessage); diff --git a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts index df65beb2..732c7579 100644 --- a/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/AxelarRelayerService.ts @@ -36,7 +36,7 @@ export class AxelarRelayerService extends Relayer { private constructor( axelarListener: AxelarListener, axelarClient: CosmosClient, - ibcRelayer: IBCRelayerService + ibcRelayer: IBCRelayerService, ) { super(); this.axelarListener = axelarListener; @@ -46,12 +46,12 @@ export class AxelarRelayerService extends Relayer { static async create( axelarConfig: Omit, - ibcRelayer?: IBCRelayerService + ibcRelayer?: IBCRelayerService, ) { const axelarListener = new AxelarListener(axelarConfig); const axelarClient = await CosmosClient.create( "axelar", - "smile unveil sketch gaze length bulb goddess street case exact table fetch robust chronic power choice endorse toward pledge dish access sad illegal dance" + "smile unveil sketch gaze length bulb goddess street case exact table fetch robust chronic power choice endorse toward pledge dish access sad illegal dance", ); const _ibcRelayer = ibcRelayer || (await IBCRelayerService.create()); await _ibcRelayer.createIBCChannelIfNeeded(); @@ -69,12 +69,12 @@ export class AxelarRelayerService extends Relayer { this.axelarListener.listen( AxelarCosmosContractCallEvent, - this.handleContractCallEvent.bind(this) + this.handleContractCallEvent.bind(this), ); this.axelarListener.listen( AxelarCosmosContractCallWithTokenEvent, - this.handleContractCallWithTokenEvent.bind(this) + this.handleContractCallWithTokenEvent.bind(this), ); this.listened = true; @@ -133,22 +133,22 @@ export class AxelarRelayerService extends Relayer { createCallContractCommand( commandId: string, relayData: RelayData, - contractCallArgs: CallContractArgs + contractCallArgs: CallContractArgs, ): Command { return WasmCommand.createWasmContractCallCommand( commandId, relayData, - contractCallArgs + contractCallArgs, ); } createCallContractWithTokenCommand( commandId: string, relayData: RelayData, - callContractWithTokenArgs: CallContractWithTokenArgs + callContractWithTokenArgs: CallContractWithTokenArgs, ): Command { throw new Error( - "Currently, this method is not supported. Please use createCallContractCommand instead." + "Currently, this method is not supported. Please use createCallContractCommand instead.", ); } @@ -159,7 +159,7 @@ export class AxelarRelayerService extends Relayer { } private async updateCallContractEvents( - event: IBCEvent + event: IBCEvent, ) { const { args } = event; const contractCallArgs: CallContractArgs = { @@ -178,7 +178,7 @@ export class AxelarRelayerService extends Relayer { const command = Command.createEVMContractCallCommand( commandId, this.relayData, - contractCallArgs + contractCallArgs, ); if (!this.commands[contractCallArgs.to]) { @@ -188,7 +188,7 @@ export class AxelarRelayerService extends Relayer { this.commands[contractCallArgs.to].push(command); } private async updateCallContractWithTokenEvents( - event: IBCEvent + event: IBCEvent, ) { const tokenMap: { [key: string]: string } = { uausdc: "aUSDC", @@ -217,7 +217,7 @@ export class AxelarRelayerService extends Relayer { const command = Command.createEVMContractCallWithTokenCommand( commandId, this.relayData, - contractCallWithTokenArgs + contractCallWithTokenArgs, ); if (!this.commands[contractCallWithTokenArgs.to]) { @@ -229,7 +229,7 @@ export class AxelarRelayerService extends Relayer { private getWasmLogID(event: IBCEvent) { return id( - `${event.args.messageId}-${event.args.sourceChain}-${event.args.destinationChain}` + `${event.args.messageId}-${event.args.sourceChain}-${event.args.destinationChain}`, ); } @@ -250,8 +250,8 @@ export class AxelarRelayerService extends Relayer { commands.map((com) => com.commandId), commands.map((com) => com.name), commands.map((com) => com.encodedData), - ] - ) + ], + ), ); } @@ -265,7 +265,7 @@ export class AxelarRelayerService extends Relayer { private async executeEvmExecutable( to: Network, commands: Command[], - execution: any + execution: any, ): Promise { for (const command of commands) { if (command.post == null) continue; @@ -280,7 +280,7 @@ export class AxelarRelayerService extends Relayer { try { const blockLimit = Number( - (await to.provider.getBlock("latest")).gasLimit + (await to.provider.getBlock("latest")).gasLimit, ); return command.post({ gasLimit: blockLimit, diff --git a/packages/axelar-local-dev-cosmos/src/services/DockerService.ts b/packages/axelar-local-dev-cosmos/src/services/DockerService.ts index 2882cad9..6dbbdcc9 100644 --- a/packages/axelar-local-dev-cosmos/src/services/DockerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/DockerService.ts @@ -28,7 +28,7 @@ export class DockerService { async start( chain: CosmosChain, - options: ChainConfig = this.getChainConfig(chain) + options: ChainConfig = this.getChainConfig(chain), ): Promise { const { dockerPath } = options; @@ -182,7 +182,7 @@ export class DockerService { private async throwIfDockerNotRunning(dockerPath: string): Promise { if (!(await this.isDockerRunning(dockerPath))) { throw new Error( - "Docker is not running. Please start Docker and try again." + "Docker is not running. Please start Docker and try again.", ); } } diff --git a/packages/axelar-local-dev-cosmos/src/services/IBCRelayerService.ts b/packages/axelar-local-dev-cosmos/src/services/IBCRelayerService.ts index afb9c902..0dbd1459 100644 --- a/packages/axelar-local-dev-cosmos/src/services/IBCRelayerService.ts +++ b/packages/axelar-local-dev-cosmos/src/services/IBCRelayerService.ts @@ -11,7 +11,7 @@ export class IBCRelayerService { private constructor( wasmClient: CosmosClient, axelarClient: CosmosClient, - relayerClient: IBCRelayerClient + relayerClient: IBCRelayerClient, ) { this.wasmClient = wasmClient; this.axelarClient = axelarClient; diff --git a/packages/axelar-local-dev-cosmos/src/types.ts b/packages/axelar-local-dev-cosmos/src/types.ts index 1238502b..ecd3d982 100644 --- a/packages/axelar-local-dev-cosmos/src/types.ts +++ b/packages/axelar-local-dev-cosmos/src/types.ts @@ -25,8 +25,8 @@ export type CosmosChain = "axelar" | "wasm" | "agoric"; export type ChainDenom = T extends "axelar" ? "uaxl" : CosmosChain extends "wasm" - ? "uwasm" - : never; + ? "uwasm" + : never; export interface AxelarListenerEvent { type: string; diff --git a/packages/axelar-local-dev-cosmos/src/utils.ts b/packages/axelar-local-dev-cosmos/src/utils.ts index 05e0d22f..0461dc2b 100644 --- a/packages/axelar-local-dev-cosmos/src/utils.ts +++ b/packages/axelar-local-dev-cosmos/src/utils.ts @@ -48,14 +48,14 @@ export function getIBCDenom(channel: string, denom: string, port = "transfer") { export function encodeVersionedPayload( version: number, - payload: string + payload: string, ): Uint8Array { const versionHex = zeroPadValue(toBeHex(version), 4); return getBytes(versionHex.concat(payload.substring(2))); } export async function exportOwnerAccountFromContainer( - chain: CosmosChain + chain: CosmosChain, ): Promise<{ mnemonic: string; address: string }> { const homePath = path.join(Path.docker(chain), `.${chain}`); const mnemonic = readFileSync(`${homePath}/mnemonic.txt`, "utf8"); @@ -87,7 +87,7 @@ export function decodeVersionedPayload(versionedPayload: string) { const [sourceChain, sourceAddress, executeMsgPayload] = abiCoder.decode( ["string", "string", "bytes"], - argValues + argValues, ); return { @@ -127,7 +127,7 @@ export function convertCosmosAddress(address: string, prefix: string) { export const getConfirmGatewayTxPayload = ( sender: string, chain: string, - txHash: string + txHash: string, ) => { return [ { @@ -144,7 +144,7 @@ export const getConfirmGatewayTxPayload = ( export const incrementPollCounter = async () => { const filePath = path.join( __dirname, - "../docker/axelar/.axelar/poll-counter.txt" + "../docker/axelar/.axelar/poll-counter.txt", ); let number = null; try { @@ -164,7 +164,7 @@ export const getVoteRequestPayload = ( sender: string, callContractArgs: CallContractArgs, confirmGatewayTx: DeliverTxResponse, - pollId: number + pollId: number, ) => { const event = { chain: callContractArgs.from, @@ -183,7 +183,7 @@ export const getVoteRequestPayload = ( VoteEvents.fromPartial({ chain: callContractArgs.from, events: [event], - }) + }), ).finish(); return [ @@ -204,7 +204,7 @@ export const getVoteRequestPayload = ( export const getRouteMessagePayload = ( sender: string, callContractArgs: CallContractArgs, - eventId: string + eventId: string, ) => { return [ { @@ -215,7 +215,7 @@ export const getRouteMessagePayload = ( payload: getBytes(callContractArgs.payload), feegranter: toAccAddress( // Address of gov1 wallet in the axelar chain - "axelar1sufx2ryp5ndxdhl3zftdnsjwrgqqgd3q6sxfjs" + "axelar1sufx2ryp5ndxdhl3zftdnsjwrgqqgd3q6sxfjs", ), }), }, diff --git a/packages/axelar-local-dev-cosmos/tsconfig.json b/packages/axelar-local-dev-cosmos/tsconfig.json index 910d4f28..20f930d3 100644 --- a/packages/axelar-local-dev-cosmos/tsconfig.json +++ b/packages/axelar-local-dev-cosmos/tsconfig.json @@ -36,6 +36,6 @@ "skipLibCheck": true /* Skip type checking all .d.ts files. */, "types": ["@nomicfoundation/hardhat-chai-matchers"] }, - "include": ["src", "ignition/deployAgoricProxy.ts"], + "include": ["src", "ignition/deployFactory.ts"], "exclude": ["node_modules", "dist", "src/__tests__/"] } diff --git a/packages/axelar-local-dev-multiversx/README.md b/packages/axelar-local-dev-multiversx/README.md index cef5a7db..b92f9a6d 100644 --- a/packages/axelar-local-dev-multiversx/README.md +++ b/packages/axelar-local-dev-multiversx/README.md @@ -59,14 +59,14 @@ For more details on setting up the `createAndExport` function, check our [Standa `MultiversXNetwork` is a generalization of `ProxyNetworkProvider` (avaliable in the `@multiversx/sdk-network-providers` package) that includes (among others that are mainly used for intrnal purposes): -- `deployAxelarFrameworkModules()`: Deploy Axelar related smart contracts found in `contracts`. -- `deployContract(contractCode: string, initArguments: TypedValue[]): Promise`: A wrapper for deploying a contract from code with init arguments, deployed by `alice.pem` wallet. Returns the SC address. -- `signAndSendTransaction(transaction: Transaction, privateKey: UserSecretKey = this.ownerPrivateKey)`: A wrapper to easily sign, send and wait for a transaction to be completed. -- `callContract(address: string, func: string, args: TypedValue[] = []): Promise)`: A wrapper to easily query a smart contract. +- `deployAxelarFrameworkModules()`: Deploy Axelar related smart contracts found in `contracts`. +- `deployContract(contractCode: string, initArguments: TypedValue[]): Promise`: A wrapper for deploying a contract from code with init arguments, deployed by `alice.pem` wallet. Returns the SC address. +- `signAndSendTransaction(transaction: Transaction, privateKey: UserSecretKey = this.ownerPrivateKey)`: A wrapper to easily sign, send and wait for a transaction to be completed. +- `callContract(address: string, func: string, args: TypedValue[] = []): Promise)`: A wrapper to easily query a smart contract. Additionaly we export two utility functions -- `createMultiversXNetwork(config?: {gatewayUrl: string})`: This deploys all the Axelar related smart contracts (`gas-service`, `auth`, `gateway`) if they are not deployed and saves their addresses to a config file. `gatewayUrl` defaults to `http://localhost:7950` -- `loadMultiversXNetwork(gatewayUrl = 'http://localhost:7950')`: This loads the preconfigured `MultiversXNetwork` by reading the contract addresses from the config file. Needs to be used after `createMultiversXNetwork` was called at least once by a process. +- `createMultiversXNetwork(config?: {gatewayUrl: string})`: This deploys all the Axelar related smart contracts (`gas-service`, `auth`, `gateway`) if they are not deployed and saves their addresses to a config file. `gatewayUrl` defaults to `http://localhost:7950` +- `loadMultiversXNetwork(gatewayUrl = 'http://localhost:7950')`: This loads the preconfigured `MultiversXNetwork` by reading the contract addresses from the config file. Needs to be used after `createMultiversXNetwork` was called at least once by a process. `createAndExport` (see above) will try to also call `createMultiversXNetwork` so that relaying works to MultiversX as well. diff --git a/packages/axelar-local-dev-multiversx/__tests__/multiversx.spec.ts b/packages/axelar-local-dev-multiversx/__tests__/multiversx.spec.ts index e9f6ad10..a479221a 100644 --- a/packages/axelar-local-dev-multiversx/__tests__/multiversx.spec.ts +++ b/packages/axelar-local-dev-multiversx/__tests__/multiversx.spec.ts @@ -126,7 +126,7 @@ describe('multiversx', () => { args[0], args[1], args[2], - Buffer.from(payloadHash).toString('hex') + Buffer.from(payloadHash).toString('hex'), ); expect(tx).toBeTruthy(); }); @@ -166,12 +166,12 @@ describe('multiversx', () => { const evmIts = new Contract( evmNetwork.interchainTokenService.address, contracts.IInterchainTokenService.abi, - wallet.connect(evmNetwork.provider) + wallet.connect(evmNetwork.provider), ); const evmItsFactory = new Contract( evmNetwork.interchainTokenFactory.address, contracts.IInterchainTokenFactory.abi, - wallet.connect(evmNetwork.provider) + wallet.connect(evmNetwork.provider), ); await registerMultiversXRemoteITS(client, [evmNetwork]); diff --git a/packages/axelar-local-dev-multiversx/src/Command.ts b/packages/axelar-local-dev-multiversx/src/Command.ts index de74e3c0..d2dedb9a 100644 --- a/packages/axelar-local-dev-multiversx/src/Command.ts +++ b/packages/axelar-local-dev-multiversx/src/Command.ts @@ -21,7 +21,7 @@ export class Command { data: any[], dataSignature: string[], post: ((options: any) => Promise) | undefined = undefined, - chain: string | null = null + chain: string | null = null, ) { this.commandId = commandId; this.name = name; @@ -46,14 +46,14 @@ export class Command { args.destinationContractAddress, args.from, args.sourceAddress, - payloadHex + payloadHex, ); relayData.callContract[commandId].execution = tx.getHash(); return tx; }, - 'multiversx' + 'multiversx', ); }; @@ -76,7 +76,7 @@ export class Command { args.destinationContractAddress, args.from, args.sourceAddress, - payloadHex + payloadHex, ); // In case of deploy interchain token, call 2nd time with EGLD value @@ -87,7 +87,7 @@ export class Command { args.from, args.sourceAddress, payloadHex, - '5000000000000000000' // 5 EGLD for ESDT issue cost on localnet + '5000000000000000000', // 5 EGLD for ESDT issue cost on localnet ); } @@ -95,7 +95,7 @@ export class Command { return tx; }, - 'multiversx' + 'multiversx', ); }; } diff --git a/packages/axelar-local-dev-multiversx/src/MultiversXNetwork.ts b/packages/axelar-local-dev-multiversx/src/MultiversXNetwork.ts index bbcb8f91..a8db6ff9 100644 --- a/packages/axelar-local-dev-multiversx/src/MultiversXNetwork.ts +++ b/packages/axelar-local-dev-multiversx/src/MultiversXNetwork.ts @@ -62,7 +62,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { gasReceiverAddress: string | undefined, interchainTokenServiceAddress: string | undefined, interchainTokenFactoryAddress: string | undefined, - contractAddress: string | undefined = undefined + contractAddress: string | undefined = undefined, ) { super(url); this.owner = Address.fromBech32('erd1qyu5wthldzr8wx5c9ucg8kjagg0jfs53s8nr3zpz3hypefsdd8ssycr6th'); // alice.pem @@ -186,7 +186,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { contractFolder, axelarGatewayAddress, axelarGasReceiverAddress, - baseTokenManager + baseTokenManager, ); const interchainTokenFactoryAddress = await this.deployInterchainTokenFactory(contractFolder, interchainTokenServiceAddress); @@ -313,7 +313,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { const axelarGasReceiverAddress = SmartContract.computeAddress( gasReceiverTransaction.getSender(), - gasReceiverTransaction.getNonce() + gasReceiverTransaction.getNonce(), ); console.log(`Gas Receiver contract deployed at ${axelarGasReceiverAddress} with transaction ${gasReceiverTransaction.getHash()}`); @@ -362,7 +362,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { contractFolder: string, gateway: string, gasService: string, - baseTokenManager: string + baseTokenManager: string, ): Promise { const buffer = await promises.readFile(contractFolder + '/interchain-token-service.wasm'); @@ -504,7 +504,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { sourceChain: string, sourceAddress: string, destinationAddress: string, - payloadHash: string + payloadHash: string, ) { // Remove 0x added by Ethereum for hex strings commandId = commandId.startsWith('0x') ? commandId.substring(2) : commandId; @@ -558,7 +558,7 @@ export class MultiversXNetwork extends ProxyNetworkProvider { sourceChain: string, sourceAddress: string, payloadHex: string, - value: string = '0' + value: string = '0', ): Promise { // Remove 0x added by Ethereum for hex strings commandId = commandId.startsWith('0x') ? commandId.substring(2) : commandId; diff --git a/packages/axelar-local-dev-multiversx/src/MultiversXRelayer.ts b/packages/axelar-local-dev-multiversx/src/MultiversXRelayer.ts index a94e5632..652c66a1 100644 --- a/packages/axelar-local-dev-multiversx/src/MultiversXRelayer.ts +++ b/packages/axelar-local-dev-multiversx/src/MultiversXRelayer.ts @@ -132,7 +132,7 @@ export class MultiversXRelayer extends Relayer { command.data[0], command.data[1], command.data[2], - command.data[3] + command.data[3], ); } } @@ -150,8 +150,8 @@ export class MultiversXRelayer extends Relayer { const data = arrayify( defaultAbiCoder.encode( ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], - [to.chainId, commands.map((com) => com.commandId), commands.map((com) => com.name), commands.map((com) => com.encodedData)] - ) + [to.chainId, commands.map((com) => com.commandId), commands.map((com) => com.name), commands.map((com) => com.encodedData)], + ), ); const signedData = await getSignedExecuteInput(data, to.operatorWallet); @@ -204,7 +204,7 @@ export class MultiversXRelayer extends Relayer { private async updateGasEvents(events: MultiversXEvent[]) { const newEvents = events.filter( - (event) => event.identifier === 'payNativeGasForContractCall' || event.identifier === 'payGasForContractCall' + (event) => event.identifier === 'payNativeGasForContractCall' || event.identifier === 'payGasForContractCall', ); for (const event of newEvents) { @@ -229,7 +229,7 @@ export class MultiversXRelayer extends Relayer { const decoded = new BinaryCodec() .decodeTopLevel( Buffer.from(event.data, 'base64'), - new TupleType(new H256Type(), new StringType(), new BigUIntType(), new AddressType()) + new TupleType(new H256Type(), new StringType(), new BigUIntType(), new AddressType()), ) .valueOf(); diff --git a/packages/axelar-local-dev-multiversx/src/its.ts b/packages/axelar-local-dev-multiversx/src/its.ts index cc591415..0def30a6 100644 --- a/packages/axelar-local-dev-multiversx/src/its.ts +++ b/packages/axelar-local-dev-multiversx/src/its.ts @@ -139,7 +139,7 @@ export class MultiversXITS { destinationAddress: string, tokenIdentifier: string, amount: string, - gasValue: string + gasValue: string, ) { // Remove 0x added by Ethereum for hex strings tokenId = tokenId.startsWith('0x') ? tokenId.substring(2) : tokenId; @@ -182,9 +182,9 @@ export async function registerMultiversXRemoteITS(multiversxNetwork: MultiversXN ( await network.interchainTokenService.populateTransaction.setTrustedAddress( 'multiversx', - (multiversxNetwork.interchainTokenServiceAddress as Address).bech32() + (multiversxNetwork.interchainTokenServiceAddress as Address).bech32(), ) - ).data as string + ).data as string, ); await (await network.interchainTokenService.multicall(data)).wait(); diff --git a/packages/axelar-local-dev-multiversx/src/multiversXNetworkUtils.ts b/packages/axelar-local-dev-multiversx/src/multiversXNetworkUtils.ts index e8908c02..1deeda24 100644 --- a/packages/axelar-local-dev-multiversx/src/multiversXNetworkUtils.ts +++ b/packages/axelar-local-dev-multiversx/src/multiversXNetworkUtils.ts @@ -58,7 +58,7 @@ export async function createMultiversXNetwork(config?: MultiversXNetworkConfig): configFile?.axelarGasReceiverAddress, configFile?.interchainTokenServiceAddress, configFile?.interchainTokenFactoryAddress, - configFile?.contractAddress + configFile?.contractAddress, ); // Check if whether the gateway is deployed @@ -94,7 +94,7 @@ export async function loadMultiversXNetwork(gatewayUrl = 'http://127.0.0.1:7950' configFile?.axelarGasReceiverAddress, configFile?.interchainTokenServiceAddress, configFile?.interchainTokenFactoryAddress, - configFile?.contractAddress + configFile?.contractAddress, ); const isGatewayDeployed = await multiversXNetwork.isGatewayDeployed(); diff --git a/packages/axelar-local-dev-near/README.md b/packages/axelar-local-dev-near/README.md index 85ba20a2..1b6bacf0 100644 --- a/packages/axelar-local-dev-near/README.md +++ b/packages/axelar-local-dev-near/README.md @@ -25,12 +25,12 @@ Please refer to our [Standalone Environment Setup Guide](../../docs/guide_create NEAR local development enviroment is based on [near-workspaces-js](https://github.com/near/workspaces-js) and `NearNetwork` is an extension of `Worker` (available in [near-workspaces-js](https://github.com/near/workspaces-js) package). `NearNetwork` includes everything that `Worker` has and some additional funcionalities: -- `createAccountAndDeployContract(accountId: string, contractWasmPath: string, nearAmount = 200)`: Allows user to quickly create a new NEAR account with a specified amount of NEAR (default - 200 NEAR) and deploy contract to it. +- `createAccountAndDeployContract(accountId: string, contractWasmPath: string, nearAmount = 200)`: Allows user to quickly create a new NEAR account with a specified amount of NEAR (default - 200 NEAR) and deploy contract to it. -- `callContract(account: NearAccount, contract: NearAccount, method: string, args: any, amount = 0)`: This method needs to be used to do any contract calls, it takes the account that will call the contract, contract that we want to call, method that we want to call, args and amount of NEAR that we wish to attach to the call. +- `callContract(account: NearAccount, contract: NearAccount, method: string, args: any, amount = 0)`: This method needs to be used to do any contract calls, it takes the account that will call the contract, contract that we want to call, method that we want to call, args and amount of NEAR that we wish to attach to the call. -- `stopNetwork()`: Needs to be called at the end of the script, so it stops the `near-sandbox` process which is a local mini-NEAR blockchain. +- `stopNetwork()`: Needs to be called at the end of the script, so it stops the `near-sandbox` process which is a local mini-NEAR blockchain. Additionaly we export a utility function: -- `createNearNetwork(config?: Config)`: Creates an instance of `NearNetwork` and starts the `near-sandbox` process. It can take a `Config` object as described in [near-workspaces-js](https://github.com/near/workspaces-js). +- `createNearNetwork(config?: Config)`: Creates an instance of `NearNetwork` and starts the `near-sandbox` process. It can take a `Config` object as described in [near-workspaces-js](https://github.com/near/workspaces-js). diff --git a/packages/axelar-local-dev-near/src/NearNetwork.ts b/packages/axelar-local-dev-near/src/NearNetwork.ts index cc970cd2..2856db65 100644 --- a/packages/axelar-local-dev-near/src/NearNetwork.ts +++ b/packages/axelar-local-dev-near/src/NearNetwork.ts @@ -45,7 +45,7 @@ export class NearNetwork extends Worker { const operators = ethers.utils.defaultAbiCoder.encode( ['address[]', 'uint256[]', 'uint256'], - [[this.operatorWallet.address], [1], 1] + [[this.operatorWallet.address], [1], 1], ); await this.gatewayAccount.call(this.gatewayAccount, 'new', { @@ -107,15 +107,15 @@ export class NearNetwork extends Worker { const data = arrayify( defaultAbiCoder.encode( ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], - [0, commands.map((com) => com.commandId), commands.map((com) => com.name), commands.map((com) => com.encodedData)] - ) + [0, commands.map((com) => com.commandId), commands.map((com) => com.name), commands.map((com) => com.encodedData)], + ), ); const signature = await this.operatorWallet.signMessage(arrayify(keccak256(data))); const signData = defaultAbiCoder.encode( ['address[]', 'uint256[]', 'uint256', 'bytes[]'], - [[this.operatorWallet.address], [1], 1, [signature]] + [[this.operatorWallet.address], [1], 1, [signature]], ); const input = defaultAbiCoder.encode(['bytes', 'bytes'], [data, signData]); @@ -126,7 +126,7 @@ export class NearNetwork extends Worker { { input, }, - { attachedDeposit: '0' } + { attachedDeposit: '0' }, ); return result; @@ -146,7 +146,7 @@ export class NearNetwork extends Worker { destinationNearAccountId: string, sourceChain: string, sourceAddress: string, - payload: string + payload: string, ): Promise { const tx = await this.gatewayAccount.callRaw( destinationNearAccountId, @@ -157,7 +157,7 @@ export class NearNetwork extends Worker { source_address: sourceAddress, payload, }, - { attachedDeposit: '0' } + { attachedDeposit: '0' }, ); return tx; diff --git a/packages/axelar-local-dev-near/src/__tests__/near.spec.ts b/packages/axelar-local-dev-near/src/__tests__/near.spec.ts index a4fc004c..e892d4dc 100644 --- a/packages/axelar-local-dev-near/src/__tests__/near.spec.ts +++ b/packages/axelar-local-dev-near/src/__tests__/near.spec.ts @@ -63,7 +63,7 @@ describe.skip('relay', () => { { gateway_account_id: nearClient.gatewayAccount.accountId, }, - { attachedDeposit: '0' } + { attachedDeposit: '0' }, ); evmContract = await deployContract(evmUser, Executable, [evmClient.gateway.address, evmClient.gasService.address]); @@ -101,7 +101,7 @@ describe.skip('relay', () => { destination_address: destinationAddress, value, }, - 0 + 0, ); await relay({ diff --git a/packages/axelar-local-dev-near/src/relay/Command.ts b/packages/axelar-local-dev-near/src/relay/Command.ts index f3a154a0..c62bd6e2 100644 --- a/packages/axelar-local-dev-near/src/relay/Command.ts +++ b/packages/axelar-local-dev-near/src/relay/Command.ts @@ -19,7 +19,7 @@ export class Command { data: any[], dataSignature: string[], post: ((options: any) => Promise) | undefined = undefined, - chain: string | null = null + chain: string | null = null, ) { this.commandId = commandId; this.name = name; @@ -40,14 +40,14 @@ export class Command { args.destinationContractAddress, args.from, args.sourceAddress, - args.payload + args.payload, ); relayData.callContract[commandId].execution = tx.transactionReceipt.hash; return tx; }, - 'near' + 'near', ); }; } diff --git a/packages/axelar-local-dev-near/src/relay/NearRelayer.ts b/packages/axelar-local-dev-near/src/relay/NearRelayer.ts index 053d0066..60f34a78 100644 --- a/packages/axelar-local-dev-near/src/relay/NearRelayer.ts +++ b/packages/axelar-local-dev-near/src/relay/NearRelayer.ts @@ -107,8 +107,8 @@ export class NearRelayer extends Relayer { const data = arrayify( defaultAbiCoder.encode( ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], - [to.chainId, commands.map((com) => com.commandId), commands.map((com) => com.name), commands.map((com) => com.encodedData)] - ) + [to.chainId, commands.map((com) => com.commandId), commands.map((com) => com.name), commands.map((com) => com.encodedData)], + ), ); const signedData = await getSignedExecuteInput(data, to.operatorWallet); @@ -137,7 +137,7 @@ export class NearRelayer extends Relayer { createCallContractWithTokenCommand( commandId: string, relayData: RelayData, - callContractWithTokenArgs: CallContractWithTokenArgs + callContractWithTokenArgs: CallContractWithTokenArgs, ): Command { throw new Error('Method not implemented.'); } diff --git a/packages/axelar-local-dev-sui/README.md b/packages/axelar-local-dev-sui/README.md index 08313969..4e3218b6 100644 --- a/packages/axelar-local-dev-sui/README.md +++ b/packages/axelar-local-dev-sui/README.md @@ -6,8 +6,8 @@ Welcome to the Axelar Local Development Suite featuring Sui Integration. This pa Before you delve into the development, ensure you have the following components installed on your local machine: -- `sui` -- `sui-test-validator` +- `sui` +- `sui-test-validator` To set these up, adhere to the step-by-step guide provided by Sui, which can be accessed [here](https://docs.sui.io/build/sui-local-network#install-sui-from-github). @@ -25,6 +25,6 @@ RUST_LOG="consensus=off" cargo run --bin sui-test-validator Here, you'll find detailed guides that will assist you in various functionalities, including: -- [Relaying Transactions from EVM to Sui](./docs/evm_to_sui.md) -- [Relaying Transactions from Sui to EVM](./docs/sui_to_evm.md) -- [Developing a Sui Module](./docs/develop_sui_module.md) +- [Relaying Transactions from EVM to Sui](./docs/evm_to_sui.md) +- [Relaying Transactions from Sui to EVM](./docs/sui_to_evm.md) +- [Developing a Sui Module](./docs/develop_sui_module.md) diff --git a/packages/axelar-local-dev/README.md b/packages/axelar-local-dev/README.md index f35db5ef..e412dfd2 100644 --- a/packages/axelar-local-dev/README.md +++ b/packages/axelar-local-dev/README.md @@ -4,8 +4,8 @@ The Axelar Local Dev environment empowers you to simulate the Axelar Gateway's c ## Core Features -- **Cross-Chain EVM Environment**: Easily set up a ready-to-use cross-chain development environment for EVM chains. For setting up cross-chain unit tests, refer to our [Executing Cross-Chain Transactions Guide](../../docs/guide_basic.md). +- **Cross-Chain EVM Environment**: Easily set up a ready-to-use cross-chain development environment for EVM chains. For setting up cross-chain unit tests, refer to our [Executing Cross-Chain Transactions Guide](../../docs/guide_basic.md). -- **Exporting Environments**: Effortlessly export your cross-chain development environment to designated ports separately. To learn more, check out our [Standalone Environment Setup Guide](../../docs/guide_create_and_exports.md). +- **Exporting Environments**: Effortlessly export your cross-chain development environment to designated ports separately. To learn more, check out our [Standalone Environment Setup Guide](../../docs/guide_create_and_exports.md). Embrace the convenience of local development with Axelar Local Dev. Experience the power of cross-chain operations in the comfort of your development environment! diff --git a/packages/axelar-local-dev/src/Network.ts b/packages/axelar-local-dev/src/Network.ts index 481aa768..8221af4a 100644 --- a/packages/axelar-local-dev/src/Network.ts +++ b/packages/axelar-local-dev/src/Network.ts @@ -135,8 +135,8 @@ export class Network { const params = arrayify( defaultAbiCoder.encode( ['address[]', 'uint8', 'bytes'], - [this.adminWallets.map((wallet) => wallet.address), this.threshold, '0x'] - ) + [this.adminWallets.map((wallet) => wallet.address), this.threshold, '0x'], + ), ); const auth = await deployContract(this.ownerWallet, Auth, [ [defaultAbiCoder.encode(['address[]', 'uint256[]', 'uint256'], [[this.operatorWallet.address], [1], 1])], @@ -161,8 +161,8 @@ export class Network { const params = arrayify( defaultAbiCoder.encode( ['address[]', 'uint256', 'bytes'], - [this.adminWallets.map((wallet) => wallet.address), this.threshold, '0x'] - ) + [this.adminWallets.map((wallet) => wallet.address), this.threshold, '0x'], + ), ); const auth = await deployContract(this.ownerWallet, Auth, [ [defaultAbiCoder.encode(['address[]', 'uint256[]', 'uint256'], [[this.operatorWallet.address], [1], 1])], @@ -252,7 +252,7 @@ export class Network { let bytecode = factory.getDeployTransaction( tokenServiceImplementation.address, wallet.address, - defaultAbiCoder.encode(['address', 'string', 'string[]', 'string[]'], [wallet.address, this.name, [], []]) + defaultAbiCoder.encode(['address', 'string', 'string[]', 'string[]'], [wallet.address, this.name, [], []]), ).data; await this.create3Deployer.connect(wallet).deploy(bytecode, deploymentSalt); this.interchainTokenService = InterchainTokenServiceFactory.connect(interchainTokenServiceAddress, wallet); @@ -281,11 +281,11 @@ export class Network { [ defaultAbiCoder.encode( ['string', 'string', 'uint8', 'uint256', 'address', 'uint256'], - [name, symbol, decimals, cap, address, 0] + [name, symbol, decimals, cap, address, 0], ), ], - ] - ) + ], + ), ); const signedData = await getSignedExecuteInput(data, this.operatorWallet); await (await this.gateway.connect(this.ownerWallet).execute(signedData, { gasLimit: BigInt(8e6) })).wait(); @@ -313,8 +313,8 @@ export class Network { [getRandomID()], ['mintToken'], [defaultAbiCoder.encode(['string', 'address', 'uint256'], [symbol, address, amount])], - ] - ) + ], + ), ); const signedData = await getSignedExecuteInput(data, this.operatorWallet); diff --git a/packages/axelar-local-dev/src/__tests__/export.spec.ts b/packages/axelar-local-dev/src/__tests__/export.spec.ts index 8a9dbf55..700ef0a1 100644 --- a/packages/axelar-local-dev/src/__tests__/export.spec.ts +++ b/packages/axelar-local-dev/src/__tests__/export.spec.ts @@ -71,11 +71,11 @@ describe('export', () => { it('should be able to relay tokens from chain A to chain B', async () => { const contract1 = await deployContract(srcOwner, ExecuteWithToken, [chain1.gateway.address, chain1.gasService.address]).then( - (contract) => ExecuteWithTokenFactory.connect(contract.address, srcOwner) + (contract) => ExecuteWithTokenFactory.connect(contract.address, srcOwner), ); const contract2 = await deployContract(destOwner, ExecuteWithToken, [chain2.gateway.address, chain2.gasService.address]).then( - (contract) => ExecuteWithTokenFactory.connect(contract.address, destOwner) + (contract) => ExecuteWithTokenFactory.connect(contract.address, destOwner), ); await contract1.addSibling(chain2.name, contract2.address); @@ -99,10 +99,10 @@ describe('export', () => { it('should be able to call express tokens from chain A to chain B', async () => { const contract1 = await deployContract(srcOwner, ExpressWithToken, [chain1.gateway.address, chain1.gasService.address]).then( - (contract) => ExpressWithTokenFactory.connect(contract.address, srcOwner) + (contract) => ExpressWithTokenFactory.connect(contract.address, srcOwner), ); const contract2 = await deployContract(destOwner, ExpressWithToken, [chain2.gateway.address, chain2.gasService.address]).then( - (contract) => AxelarExpressExecutableFactory.connect(contract.address, destOwner) + (contract) => AxelarExpressExecutableFactory.connect(contract.address, destOwner), ); const amount = BigInt(1e18); @@ -157,11 +157,11 @@ describe('export', () => { // Note: This test is expecting the host to run a local blockchain on port 8545 and 8546. it.only('should be able to relay tokens from chain A to chain B', async () => { const contract1 = await deployContract(srcOwner, ExecuteWithToken, [chain1.gateway.address, chain1.gasService.address]).then( - (contract) => ExecuteWithTokenFactory.connect(contract.address, srcOwner) + (contract) => ExecuteWithTokenFactory.connect(contract.address, srcOwner), ); const contract2 = await deployContract(destOwner, ExecuteWithToken, [chain2.gateway.address, chain2.gasService.address]).then( - (contract) => ExecuteWithTokenFactory.connect(contract.address, destOwner) + (contract) => ExecuteWithTokenFactory.connect(contract.address, destOwner), ); await contract1.addSibling(chain2.name, contract2.address); diff --git a/packages/axelar-local-dev/src/exportUtils.ts b/packages/axelar-local-dev/src/exportUtils.ts index 3deed7b7..c9e2ffcc 100644 --- a/packages/axelar-local-dev/src/exportUtils.ts +++ b/packages/axelar-local-dev/src/exportUtils.ts @@ -40,7 +40,7 @@ export async function createAndExport(options: CreateLocalOptions = {}) { const testnet = (testnetInfo as any)[name]; const info = chain.getCloneInfo() as any; info.rpc = `http://127.0.0.1:${_options.port}/${i}`; - (info.tokenName = testnet?.tokenName), (info.tokenSymbol = testnet?.tokenSymbol), localChains.push(info); + ((info.tokenName = testnet?.tokenName), (info.tokenSymbol = testnet?.tokenSymbol), localChains.push(info)); const [user] = chain.userWallets; for (const account of _options.accountsToFund) { await user @@ -178,7 +178,7 @@ export async function forkAndExport(options: CloneLocalOptions = {}) { _options.chains?.length == 0 ? chainsRaw : chainsRaw.filter( - (chain: any) => _options.chains?.find((name) => name.toLocaleLowerCase() == chain.name.toLocaleLowerCase()) != null + (chain: any) => _options.chains?.find((name) => name.toLocaleLowerCase() == chain.name.toLocaleLowerCase()) != null, ); let i = 0; @@ -186,7 +186,7 @@ export async function forkAndExport(options: CloneLocalOptions = {}) { const network = await forkNetwork(chain, _options.networkOptions); const info = network.getCloneInfo() as any; info.rpc = `http://127.0.0.1:${options.port}/${i}`; - (info.tokenName = chain?.tokenName), (info.tokenSymbol = chain?.tokenSymbol), chains_local.push(info); + ((info.tokenName = chain?.tokenName), (info.tokenSymbol = chain?.tokenSymbol), chains_local.push(info)); const [user] = network.userWallets; for (const account of _options.accountsToFund) { await user diff --git a/packages/axelar-local-dev/src/its.ts b/packages/axelar-local-dev/src/its.ts index 3f758cb5..a912faa9 100644 --- a/packages/axelar-local-dev/src/its.ts +++ b/packages/axelar-local-dev/src/its.ts @@ -14,7 +14,7 @@ export interface ITS { tokenAddress: string, destinationChain: string | Network, gasValue?: BigNumberish, - wallet?: Wallet + wallet?: Wallet, ) => Promise; deployInterchainToken: any; deployRemoteInterchainToken: any; @@ -35,7 +35,7 @@ export async function setupITS(network: Network) { tokenAddress: string, destinationChain: string | Network, gasValue: BigNumberish = BigInt(1e6), - wallet: Wallet = network.ownerWallet + wallet: Wallet = network.ownerWallet, ) => { const service = network.interchainTokenService; const factory = network.interchainTokenFactory; @@ -64,7 +64,7 @@ export async function setupITS(network: Network) { symbol: string, decimals: BigNumberish, mintAmount: BigNumberish, - distributor: string = wallet.address + distributor: string = wallet.address, ) => { const factory = network.interchainTokenFactory; @@ -78,7 +78,7 @@ export async function setupITS(network: Network) { salt: string, distributor: string, destinationChain: string | Network, - gasValue: BigNumberish + gasValue: BigNumberish, ) => { const factory = network.interchainTokenFactory; @@ -110,9 +110,9 @@ export async function registerRemoteITS(networks: Network[]) { ( await network.interchainTokenService.populateTransaction.setTrustedAddress( otherNetwork.name, - otherNetwork.interchainTokenService.address + otherNetwork.interchainTokenService.address, ) - ).data as string + ).data as string, ); } await (await network.interchainTokenService.multicall(data)).wait(); diff --git a/packages/axelar-local-dev/src/networkUtils.ts b/packages/axelar-local-dev/src/networkUtils.ts index 28eb57a6..6c0c4eca 100644 --- a/packages/axelar-local-dev/src/networkUtils.ts +++ b/packages/axelar-local-dev/src/networkUtils.ts @@ -333,7 +333,7 @@ export function getDepositAddress( to: Network | string, destinationAddress: string, alias: string, - port: number | undefined = undefined + port: number | undefined = undefined, ) { if (typeof from != 'string') from = from.name; if (typeof to != 'string') to = to.name; diff --git a/packages/axelar-local-dev/src/relay/Command.ts b/packages/axelar-local-dev/src/relay/Command.ts index 32a11109..2ed3b342 100644 --- a/packages/axelar-local-dev/src/relay/Command.ts +++ b/packages/axelar-local-dev/src/relay/Command.ts @@ -20,7 +20,7 @@ export class Command { data: any[], dataSignature: string[], post: ((options: any) => Promise) | undefined = undefined, - chain: string | null = null + chain: string | null = null, ) { this.commandId = commandId; this.name = name; @@ -50,7 +50,7 @@ export class Command { relayData.callContract[commandId].execution = receipt.transactionHash; return receipt; }, - 'evm' + 'evm', ); }; @@ -73,13 +73,13 @@ export class Command { args.payload, args.destinationTokenSymbol, args.amountOut, - options + options, ) .then((tx: any) => tx.wait()); relayData.callContractWithToken[commandId].execution = receipt.transactionHash; return receipt; }, - 'evm' + 'evm', ); }; } diff --git a/packages/axelar-local-dev/src/relay/EvmRelayer.ts b/packages/axelar-local-dev/src/relay/EvmRelayer.ts index 2760bb34..caa8d3ae 100644 --- a/packages/axelar-local-dev/src/relay/EvmRelayer.ts +++ b/packages/axelar-local-dev/src/relay/EvmRelayer.ts @@ -84,7 +84,7 @@ export class EvmRelayer extends Relayer { logger.log(e); }); chain.lastExpressedBlock = blockNumber; - } + }, ); this.eventSubscribers.push(subscriber); @@ -112,8 +112,8 @@ export class EvmRelayer extends Relayer { const data = arrayify( defaultAbiCoder.encode( ['uint256', 'bytes32[]', 'string[]', 'bytes[]'], - [to.chainId, commands.map((com) => com.commandId), commands.map((com) => com.name), commands.map((com) => com.encodedData)] - ) + [to.chainId, commands.map((com) => com.commandId), commands.map((com) => com.name), commands.map((com) => com.encodedData)], + ), ); const signedData = await getSignedExecuteInput(data, to.operatorWallet); @@ -163,7 +163,7 @@ export class EvmRelayer extends Relayer { 'function approve(address,uint256)', 'function balanceOf(address) view returns (uint256)', ], - to.relayerWallet + to.relayerWallet, ); // fund relayer wallet with token @@ -173,7 +173,7 @@ export class EvmRelayer extends Relayer { await to.giveToken( to.relayerWallet.address, payed.symbol, - fundAmount.gt(payed.amount) ? fundAmount.toBigInt() : payed.amount + fundAmount.gt(payed.amount) ? fundAmount.toBigInt() : payed.amount, ); } @@ -252,7 +252,7 @@ export class EvmRelayer extends Relayer { const contractCallEvent: ContractCallEventObject = contractInterface.decodeEventLog( 'ContractCall', _event.data, - _event.topics + _event.topics, ) as any; const _newGasPaidEvent = { @@ -270,7 +270,7 @@ export class EvmRelayer extends Relayer { const contractCallWithTokenEvent: ContractCallWithTokenEventObject = contractInterface.decodeEventLog( 'ContractCallWithToken', _event.data, - _event.topics + _event.topics, ) as any; const _newGasWithTokenPaidEvent = { @@ -445,7 +445,7 @@ export class EvmRelayer extends Relayer { createCallContractWithTokenCommand( commandId: string, relayData: RelayData, - callContractWithTokenArgs: CallContractWithTokenArgs + callContractWithTokenArgs: CallContractWithTokenArgs, ): Command { return Command.createEVMContractCallWithTokenCommand(commandId, relayData, callContractWithTokenArgs); } @@ -478,8 +478,8 @@ export class EvmRelayer extends Relayer { 'mintToken', [destinationTokenSymbol, args.destinationAddress, amountOut], ['string', 'address', 'uint256'], - args.destinationChain - ) + args.destinationChain, + ), ); } } @@ -541,8 +541,8 @@ export class EvmRelayer extends Relayer { commandId, 'mintToken', [destinationTokenSymbol, data.destinationAddress, balance - fee], - ['string', 'address', 'uint256'] - ) + ['string', 'address', 'uint256'], + ), ); const wallet = new Wallet(data.privateKey, from.provider); if (Number(await from.provider.getBalance(address)) === 0) { diff --git a/packages/axelar-local-dev/src/relay/Relayer.ts b/packages/axelar-local-dev/src/relay/Relayer.ts index 85eacc73..c9c6c11d 100644 --- a/packages/axelar-local-dev/src/relay/Relayer.ts +++ b/packages/axelar-local-dev/src/relay/Relayer.ts @@ -33,7 +33,7 @@ export abstract class Relayer { abstract createCallContractWithTokenCommand( commandId: string, relayData: RelayData, - callContractWithTokenArgs: CallContractWithTokenArgs + callContractWithTokenArgs: CallContractWithTokenArgs, ): Command; abstract setRelayer(type: RelayerType, relayer: Relayer): void; From 6dc3318059719fb75ae6396d3f438e59fb5cd7b4 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 16 Jul 2025 15:38:43 +0500 Subject: [PATCH 61/93] chore: remove hardcoded gas amount --- .../src/__tests__/Factory.spec.ts | 3 +-- .../src/__tests__/contracts/Factory.sol | 11 ++++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts index c74c4789..b9f313f0 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts @@ -129,8 +129,7 @@ describe("Factory", () => { it("should create a new remote wallet using Factory", async () => { const commandId = getCommandId(); - const abiCoder = ethers.AbiCoder.defaultAbiCoder(); - const payload = abiCoder.encode(["bytes"], ["0x"]); + const payload = abiCoder.encode(["uint256"], [50000]); const payloadHash = keccak256(toBytes(payload)); await approveMessage({ diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index bd639065..05031477 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -124,8 +124,9 @@ contract Factory is AxelarExecutable { function _execute( string calldata sourceChain, string calldata sourceAddress, - bytes calldata /*payload*/ + bytes calldata payload ) internal override { + (uint256 gasAmount) = abi.decode(payload, (uint256)); address smartWalletAddress = createSmartWallet(sourceAddress); emit SmartWalletCreated( smartWalletAddress, @@ -141,16 +142,16 @@ contract Factory is AxelarExecutable { bytes4(0x00000000), abi.encode(AgoricResponse(false, results)) ); - _send(sourceChain, sourceAddress, msgPayload); + _send(sourceChain, sourceAddress, msgPayload, gasAmount); } function _send( string calldata destinationChain, string calldata destinationAddress, - bytes memory payload + bytes memory payload, + uint256 gasAmount ) internal { - // TODO: come up with a better strategy to pay for gas - gasService.payNativeGasForContractCall{value: msg.value}( + gasService.payNativeGasForContractCall{value: gasAmount}( address(this), destinationChain, destinationAddress, From e1358ffe0d82228372c6297058156e23b786de63 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 16 Jul 2025 16:30:14 +0500 Subject: [PATCH 62/93] chore: updates to make offer with offerArgs --- integration/scripts/make-account.mjs | 3 +++ integration/scripts/setup-gmp.mjs | 5 ++++- integration/scripts/utils.mjs | 3 +++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/integration/scripts/make-account.mjs b/integration/scripts/make-account.mjs index 1cb4c879..5e5d48e6 100755 --- a/integration/scripts/make-account.mjs +++ b/integration/scripts/make-account.mjs @@ -27,6 +27,9 @@ try { brandName: "BLD", amount: 1n, source: "contract", + offerArgs: { + gasAmount: 0n, + }, }); await processWalletOffer({ diff --git a/integration/scripts/setup-gmp.mjs b/integration/scripts/setup-gmp.mjs index 93641f58..4680203a 100755 --- a/integration/scripts/setup-gmp.mjs +++ b/integration/scripts/setup-gmp.mjs @@ -7,6 +7,7 @@ const { log } = console; const SDK_REPO = "https://github.com/Agoric/agoric-sdk.git"; const SDK_DIR = "/usr/src/agoric-sdk-cp"; +const BRANCH_NAME = "rs-send-gas-from-axelar-gmp-contract"; const PLAN_FILE_DIR = "/usr/src/upgrade-test-scripts"; const vbankAssetUrl = "http://localhost/agoric-lcd/agoric/vstorage/data/published.agoricNames.vbankAsset"; @@ -33,7 +34,9 @@ log("sdkExists:", sdkExists); if (!sdkExists) { log("Clone agoric-sdk with --depth=1..."); - await runCommand(`bash -c "git clone --depth=1 ${SDK_REPO} ${SDK_DIR}"`); + await runCommand( + `bash -c "git clone --depth=1 --branch ${BRANCH_NAME} ${SDK_REPO} ${SDK_DIR}"`, + ); log("Install dependencies..."); await runCommand(`bash -c "cd ${SDK_DIR} && yarn install"`); diff --git a/integration/scripts/utils.mjs b/integration/scripts/utils.mjs index 80329384..8b9b7a1f 100755 --- a/integration/scripts/utils.mjs +++ b/integration/scripts/utils.mjs @@ -225,6 +225,7 @@ export const makeFromBoard = () => { * @property {string} [brandName] - Required if giving an amount. * @property {bigint} [amount] - Required if giving something. * @property {any[]} [invitationArgs] - Arguments for the invitation (e.g. method, params). + * @property {Object} [offerArgs] - OfferArgs * @property {string} [previousOffer] - For continuing invitations. * @property {boolean} [emptyProposal] - If true, skips constructing the give section. * @property {(x: any) => any} [hardenFn] - Optionally override the harden function. @@ -244,6 +245,7 @@ export const prepareOffer = async ({ amount, invitationArgs, previousOffer, + offerArgs = {}, emptyProposal = false, }) => { if (!instanceName) throw new Error("instanceName is required"); @@ -286,6 +288,7 @@ export const prepareOffer = async ({ offer: { id: offerId, invitationSpec, + offerArgs: { ...offerArgs }, proposal, }, }; From b4a384102ed5c28e23638b40c2a830eee7a54479 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 16 Jul 2025 17:45:21 +0500 Subject: [PATCH 63/93] chore: use master branch of agoric-sdk for e2e testing --- integration/scripts/setup-gmp.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/integration/scripts/setup-gmp.mjs b/integration/scripts/setup-gmp.mjs index 4680203a..0a473a69 100755 --- a/integration/scripts/setup-gmp.mjs +++ b/integration/scripts/setup-gmp.mjs @@ -7,7 +7,7 @@ const { log } = console; const SDK_REPO = "https://github.com/Agoric/agoric-sdk.git"; const SDK_DIR = "/usr/src/agoric-sdk-cp"; -const BRANCH_NAME = "rs-send-gas-from-axelar-gmp-contract"; +const BRANCH_NAME = "master"; const PLAN_FILE_DIR = "/usr/src/upgrade-test-scripts"; const vbankAssetUrl = "http://localhost/agoric-lcd/agoric/vstorage/data/published.agoricNames.vbankAsset"; From 23b9e299fc94440c293e4a8e288e53b38c83571c Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 30 Jul 2025 11:09:04 +0500 Subject: [PATCH 64/93] chore: remove unused chainName param --- package-lock.json | 4 +--- .../ignition/modules/deployFactory.ts | 3 +-- .../axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts | 1 - .../src/__tests__/contracts/Factory.sol | 7 ++----- 4 files changed, 4 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index b8963a58..f9cc44f4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12628,9 +12628,7 @@ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "extraneous": true, "os": [ - "darwin", - "win32", - "linux" + "darwin" ], "engines": { "node": "^8.16.0 || ^10.6.0 || >=11.0.0" diff --git a/packages/axelar-local-dev-cosmos/ignition/modules/deployFactory.ts b/packages/axelar-local-dev-cosmos/ignition/modules/deployFactory.ts index b2cde5b6..727c90a4 100644 --- a/packages/axelar-local-dev-cosmos/ignition/modules/deployFactory.ts +++ b/packages/axelar-local-dev-cosmos/ignition/modules/deployFactory.ts @@ -15,9 +15,8 @@ if (!GATEWAY_CONTRACT || !GAS_SERVICE_CONTRACT) { export default buildModule("FactoryModule", (m) => { const gateway = m.getParameter("gateway_", GATEWAY_CONTRACT); const gasService = m.getParameter("gasReceiver_", GAS_SERVICE_CONTRACT); - const chainName = m.getParameter("chainName_", "Avalanche"); - const Factory = m.contract("Factory", [gateway, gasService, chainName]); + const Factory = m.contract("Factory", [gateway, gasService]); return { Factory }; }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts index b9f313f0..acee23b2 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts @@ -75,7 +75,6 @@ describe("Factory", () => { factory = await Contract.deploy( axelarGatewayMock.target, axelarGasServiceMock.target, - "Ethereum", ); await factory.waitForDeployment(); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 05031477..018d091a 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -89,7 +89,6 @@ contract Factory is AxelarExecutable { address _gateway; IAxelarGasService public immutable gasService; - string public chainName; event SmartWalletCreated( address indexed wallet, @@ -106,12 +105,10 @@ contract Factory is AxelarExecutable { constructor( address gateway_, - address gasReceiver_, - string memory chainName_ + address gasReceiver_ ) AxelarExecutable(gateway_) { gasService = IAxelarGasService(gasReceiver_); _gateway = gateway_; - chainName = chainName_; } function createSmartWallet(string memory owner) public returns (address) { @@ -126,7 +123,7 @@ contract Factory is AxelarExecutable { string calldata sourceAddress, bytes calldata payload ) internal override { - (uint256 gasAmount) = abi.decode(payload, (uint256)); + uint256 gasAmount = abi.decode(payload, (uint256)); address smartWalletAddress = createSmartWallet(sourceAddress); emit SmartWalletCreated( smartWalletAddress, From 5b5dfceb69ffdc7a6a7a350ba3470b685708d970 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 30 Jul 2025 11:23:12 +0500 Subject: [PATCH 65/93] chore: update deployment script to include arb, eth and avax chains --- integration/scripts/setup-gmp.mjs | 11 +++++++-- package-lock.json | 4 +++- package.json | 3 +-- .../axelar-local-dev-cosmos/scripts/deploy.sh | 24 ++++++++++++++----- packages/axelar-local-dev-cosmos/src/relay.ts | 6 +---- 5 files changed, 32 insertions(+), 16 deletions(-) diff --git a/integration/scripts/setup-gmp.mjs b/integration/scripts/setup-gmp.mjs index 0a473a69..ecedf566 100755 --- a/integration/scripts/setup-gmp.mjs +++ b/integration/scripts/setup-gmp.mjs @@ -33,9 +33,16 @@ const sdkExists = output?.stdout?.trim() === "EXISTS"; log("sdkExists:", sdkExists); if (!sdkExists) { - log("Clone agoric-sdk with --depth=1..."); + log("Cloning agoric-sdk at specific commit..."); + // ⚠️ TEMPORARY: Using pre-execution-engine version of yMax contract. + // This commit includes the yMax implementation before recent execution engine changes. + // Once yMax starts using the new engine, update or remove this workaround. await runCommand( - `bash -c "git clone --depth=1 --branch ${BRANCH_NAME} ${SDK_REPO} ${SDK_DIR}"`, + `bash -c " + git clone ${SDK_REPO} ${SDK_DIR} && + cd ${SDK_DIR} && + git checkout 3c8aafe025c1edfbec581958dd7111d71eb46a41 + "`, ); log("Install dependencies..."); diff --git a/package-lock.json b/package-lock.json index f9cc44f4..b8963a58 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12628,7 +12628,9 @@ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "extraneous": true, "os": [ - "darwin" + "darwin", + "win32", + "linux" ], "engines": { "node": "^8.16.0 || ^10.6.0 || >=11.0.0" diff --git a/package.json b/package.json index c9b9ca3f..7c87fc4a 100644 --- a/package.json +++ b/package.json @@ -7,8 +7,7 @@ "access": "public" }, "scripts": { - "deploy-fuji": "cd packages/axelar-local-dev-cosmos && ./scripts/deploy.sh fuji", - "deploy-base": "cd packages/axelar-local-dev-cosmos && ./scripts/deploy.sh base", + "deploy": "cd packages/axelar-local-dev-cosmos && ./scripts/deploy.sh", "publish": "lerna publish from-package --yes", "version": "lerna version --yes --exact --no-git-tag-version", "link": "lerna link", diff --git a/packages/axelar-local-dev-cosmos/scripts/deploy.sh b/packages/axelar-local-dev-cosmos/scripts/deploy.sh index e67559bd..8614a303 100755 --- a/packages/axelar-local-dev-cosmos/scripts/deploy.sh +++ b/packages/axelar-local-dev-cosmos/scripts/deploy.sh @@ -1,8 +1,8 @@ #!/bin/bash if [[ $# -eq 0 ]]; then - echo "Usage: $0 [contract]" - echo "Network must be either 'fuji' or 'base'" + echo "Usage: $0 " + echo "Supported networks: avax, arb, eth, fuji" exit 1 fi @@ -28,13 +28,25 @@ delete_deployments_folder() { fi } + +# Mainnet and testnet contract addresses sourced from: +# Mainnet: https://docs.axelar.dev/dev/reference/mainnet-contract-addresses/ +# Testnet: https://docs.axelar.dev/dev/reference/testnet-contract-addresses/ case $network in -fuji) - GATEWAY='0xC249632c2D40b9001FE907806902f63038B737Ab' - GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' +avax) + GATEWAY='0x5029C0EFf6C34351a0CEc334542cDb22c7928f78' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' ;; -base) +arb) GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; +eth) + GATEWAY='0x4F4495243837681061C4743b74B3eEdf548D56A5' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; +fuji) + GATEWAY='0xC249632c2D40b9001FE907806902f63038B737Ab' GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' ;; *) diff --git a/packages/axelar-local-dev-cosmos/src/relay.ts b/packages/axelar-local-dev-cosmos/src/relay.ts index beeb69bb..14b3f216 100644 --- a/packages/axelar-local-dev-cosmos/src/relay.ts +++ b/packages/axelar-local-dev-cosmos/src/relay.ts @@ -24,11 +24,7 @@ export const relayBasic = async () => { const factoryContract = await deployContract( ethereumNetwork.userWallets[0], require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"), - [ - ethereumNetwork.gateway.address, - ethereumNetwork.gasService.address, - "Ethereum", - ], + [ethereumNetwork.gateway.address, ethereumNetwork.gasService.address], ); console.log("Factory Contract Address:", factoryContract.address); From ae75c3c60cb349fc2016da8c3ea5aa297cfb44bd Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 30 Jul 2025 12:09:04 +0500 Subject: [PATCH 66/93] chore: include arb,avax and eth in hardhat config --- .../axelar-local-dev-cosmos/hardhat.config.ts | 27 +++++++++++++++---- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index fd002ba1..0938fdd3 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -13,11 +13,27 @@ const testnets = { chainId: 43113, accounts: [`0x${PRIVATE_KEY}`], }, - base: { - url: "https://sepolia.base.org/", - gasPrice: 225000000000, - chainId: 84532, - accounts: [`0x${PRIVATE_KEY}`], +}; + +const mainnets = { + arb: { + // Source: https://docs.arbitrum.io/build-decentralized-apps/reference/node-providers + url: "https://arb1.arbitrum.io/rpc", + chainId: 42161, + accounts: [`${PRIVATE_KEY}`], + }, + avax: { + // Source: https://build.avax.network/docs/tooling/rpc-providers#http + url: "https://api.avax.network/ext/bc/C/rpc", + chainId: 43114, + accounts: [`${PRIVATE_KEY}`], + gasPrice: 225_000_000_000, // 225 gwei in wei + }, + eth: { + // TODO: find a reliable public RPC for ETH that works + url: "https://mainnet.infura.io", + chainId: 1, + accounts: [`${PRIVATE_KEY}`], }, }; @@ -59,6 +75,7 @@ const config: HardhatUserConfig = { chainId: 31337, }, ...(PRIVATE_KEY ? testnets : {}), + ...(PRIVATE_KEY ? mainnets : {}), }, paths: { sources: "./src/__tests__/contracts", From 507924b4e20c95eb247fa1305e6aa1258b6d0685 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 30 Jul 2025 14:44:25 +0500 Subject: [PATCH 67/93] chore: setup eth mainnet rpc --- packages/axelar-local-dev-cosmos/hardhat.config.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index 0938fdd3..3d90102d 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -4,7 +4,7 @@ import { HardhatUserConfig } from "hardhat/config"; envConfig(); -const { PRIVATE_KEY } = process.env; +const { INFURA_KEY, PRIVATE_KEY } = process.env; const testnets = { fuji: { @@ -20,20 +20,19 @@ const mainnets = { // Source: https://docs.arbitrum.io/build-decentralized-apps/reference/node-providers url: "https://arb1.arbitrum.io/rpc", chainId: 42161, - accounts: [`${PRIVATE_KEY}`], + accounts: [PRIVATE_KEY as string], }, avax: { // Source: https://build.avax.network/docs/tooling/rpc-providers#http url: "https://api.avax.network/ext/bc/C/rpc", chainId: 43114, - accounts: [`${PRIVATE_KEY}`], + accounts: [PRIVATE_KEY as string], gasPrice: 225_000_000_000, // 225 gwei in wei }, eth: { - // TODO: find a reliable public RPC for ETH that works - url: "https://mainnet.infura.io", + url: `https://mainnet.infura.io/v3/${INFURA_KEY}`, chainId: 1, - accounts: [`${PRIVATE_KEY}`], + accounts: [PRIVATE_KEY as string], }, }; From 0db72342f1d87d5fd4705dbd76e76a7a1aaf7e35 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 30 Jul 2025 21:51:28 +0500 Subject: [PATCH 68/93] chore: add support for polygon and optimisim --- integration/scripts/setup-gmp.mjs | 2 +- packages/axelar-local-dev-cosmos/hardhat.config.ts | 12 ++++++++++++ packages/axelar-local-dev-cosmos/scripts/deploy.sh | 10 +++++++++- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/integration/scripts/setup-gmp.mjs b/integration/scripts/setup-gmp.mjs index ecedf566..5463599d 100755 --- a/integration/scripts/setup-gmp.mjs +++ b/integration/scripts/setup-gmp.mjs @@ -34,7 +34,7 @@ log("sdkExists:", sdkExists); if (!sdkExists) { log("Cloning agoric-sdk at specific commit..."); - // ⚠️ TEMPORARY: Using pre-execution-engine version of yMax contract. + // TODO: Using pre-execution-engine version of yMax contract. // This commit includes the yMax implementation before recent execution engine changes. // Once yMax starts using the new engine, update or remove this workaround. await runCommand( diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index 3d90102d..e1e7e6cf 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -34,6 +34,18 @@ const mainnets = { chainId: 1, accounts: [PRIVATE_KEY as string], }, + // Source: https://docs.optimism.io/superchain/networks + opt: { + url: `https://mainnet.optimism.io`, + chainId: 10, + accounts: [PRIVATE_KEY as string], + }, + // Source: https://docs.polygon.technology/pos/reference/rpc-endpoints/#amoy + pol: { + url: `https://polygon-rpc.com/`, + chainId: 137, + accounts: [PRIVATE_KEY as string], + }, }; const config: HardhatUserConfig = { diff --git a/packages/axelar-local-dev-cosmos/scripts/deploy.sh b/packages/axelar-local-dev-cosmos/scripts/deploy.sh index 8614a303..936b3d8e 100755 --- a/packages/axelar-local-dev-cosmos/scripts/deploy.sh +++ b/packages/axelar-local-dev-cosmos/scripts/deploy.sh @@ -2,7 +2,7 @@ if [[ $# -eq 0 ]]; then echo "Usage: $0 " - echo "Supported networks: avax, arb, eth, fuji" + echo "Supported networks: avax, arb, eth, fuji, opt, pol" exit 1 fi @@ -49,6 +49,14 @@ fuji) GATEWAY='0xC249632c2D40b9001FE907806902f63038B737Ab' GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' ;; +opt) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; +pol) + GATEWAY='0x6f015F16De9fC8791b234eF68D486d2bF203FBA8' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; *) echo "Invalid network specified" exit 1 From 56f92029ae384ea5e49856a0ff7521d9c2d8f0c7 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 21 Aug 2025 15:34:21 +0500 Subject: [PATCH 69/93] chore: include eth-sepolia in the deployment script --- packages/axelar-local-dev-cosmos/hardhat.config.ts | 6 ++++++ packages/axelar-local-dev-cosmos/scripts/deploy.sh | 8 ++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index e1e7e6cf..5313873b 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -13,6 +13,12 @@ const testnets = { chainId: 43113, accounts: [`0x${PRIVATE_KEY}`], }, + sepolia: { + url: "https://ethereum-sepolia-rpc.publicnode.com", + gasPrice: 20000000000, // 20 Gwei + chainId: 11155111, + accounts: [`0x${PRIVATE_KEY}`], + }, }; const mainnets = { diff --git a/packages/axelar-local-dev-cosmos/scripts/deploy.sh b/packages/axelar-local-dev-cosmos/scripts/deploy.sh index 936b3d8e..b35459ae 100755 --- a/packages/axelar-local-dev-cosmos/scripts/deploy.sh +++ b/packages/axelar-local-dev-cosmos/scripts/deploy.sh @@ -2,7 +2,7 @@ if [[ $# -eq 0 ]]; then echo "Usage: $0 " - echo "Supported networks: avax, arb, eth, fuji, opt, pol" + echo "Supported networks: avax, arb, sepolia, fuji, opt, pol" exit 1 fi @@ -41,9 +41,9 @@ arb) GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' ;; -eth) - GATEWAY='0x4F4495243837681061C4743b74B3eEdf548D56A5' - GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' +sepolia) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' ;; fuji) GATEWAY='0xC249632c2D40b9001FE907806902f63038B737Ab' From f0db41de02e8911d9c24879335ec1a7cc82a38c9 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Fri, 29 Aug 2025 13:03:49 +0500 Subject: [PATCH 70/93] chore: update Factory.sol payload structure with txId tracking --- .../src/__tests__/contracts/Factory.sol | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 018d091a..0e4334ad 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -18,15 +18,20 @@ struct AgoricResponse { CallResult[] data; } -struct CallParams { +struct ContractCalls { address target; bytes data; } +struct CallMessage { + string id; + ContractCalls[] calls; +} + contract Wallet is AxelarExecutable, Ownable { IAxelarGasService public gasService; - event MulticallExecuted(address indexed executor, CallResult[] results); + event MulticallExecuted(string indexed id, CallResult[] results); event Received(address indexed sender, uint256 amount); constructor( @@ -37,10 +42,9 @@ contract Wallet is AxelarExecutable, Ownable { gasService = IAxelarGasService(gasReceiver_); } - function _multicall( - bytes calldata payload - ) internal returns (CallResult[] memory) { - CallParams[] memory calls = abi.decode(payload, (CallParams[])); + function _multicall(bytes calldata payload) internal { + CallMessage memory callMessage = abi.decode(payload, (CallMessage)); + ContractCalls[] memory calls = callMessage.calls; CallResult[] memory results = new CallResult[](calls.length); @@ -52,8 +56,7 @@ contract Wallet is AxelarExecutable, Ownable { results[i] = CallResult(success, result); } - emit MulticallExecuted(msg.sender, results); - return results; + emit MulticallExecuted(callMessage.id, results); } function _execute( From 22a39b4fe21e0fd6c66ffcc690029ca3406934ca Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Fri, 29 Aug 2025 13:08:20 +0500 Subject: [PATCH 71/93] test: update the tests to include txId --- .../src/__tests__/Factory.spec.ts | 4 ++-- .../src/__tests__/lib/utils.ts | 19 +++++++++++++------ 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts index acee23b2..887316ca 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts @@ -181,7 +181,7 @@ describe("Factory", () => { args: [17], }), ]; - const multicallPayload = encodeMulticallPayload(abiEncodedContractCalls); + const multicallPayload = encodeMulticallPayload(abiEncodedContractCalls, "tx1"); const payloadHash = getPayloadHash(multicallPayload); const commandId1 = getCommandId(); @@ -215,7 +215,7 @@ describe("Factory", () => { args: [17], }), ]; - const multicallPayload2 = encodeMulticallPayload(abiEncodedCallsWithTokens); + const multicallPayload2 = encodeMulticallPayload(abiEncodedCallsWithTokens, "tx2"); const payloadHash2 = getPayloadHash(multicallPayload2); const commandId2 = getCommandId(); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts b/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts index 41867556..a02d996b 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/lib/utils.ts @@ -148,19 +148,26 @@ export const deployToken = async ({ return response; }; -export const encodeMulticallPayload = (calls) => { +export const encodeMulticallPayload = (calls, txId) => { return encodeAbiParameters( [ { - type: "tuple[]", - name: "calls", + type: "tuple", + name: "callMessage", components: [ - { name: "target", type: "address" }, - { name: "data", type: "bytes" }, + { name: "id", type: "string" }, + { + name: "calls", + type: "tuple[]", + components: [ + { name: "target", type: "address" }, + { name: "data", type: "bytes" }, + ], + }, ], }, ], - [calls], + [{ id: txId, calls }], ); }; From 6fc91acd22033e242f0ab6340a8a27010e945b93 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Mon, 8 Sep 2025 17:21:16 +0200 Subject: [PATCH 72/93] chore: updated outdated scripts --- README.md | 1 + packages/axelar-local-dev-cosmos/package.json | 3 +- .../scripts/relayFromEth.ts | 3 - .../scripts/testFactory.ts | 3 + .../scripts/testWallet.ts | 3 + .../src/testFactory.ts | 104 ++++++++++++++++++ .../src/{relayFromEth.ts => testWallet.ts} | 70 +++++------- packages/axelar-local-dev-cosmos/src/utils.ts | 34 ++++++ 8 files changed, 174 insertions(+), 47 deletions(-) delete mode 100644 packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts create mode 100644 packages/axelar-local-dev-cosmos/scripts/testFactory.ts create mode 100644 packages/axelar-local-dev-cosmos/scripts/testWallet.ts create mode 100644 packages/axelar-local-dev-cosmos/src/testFactory.ts rename packages/axelar-local-dev-cosmos/src/{relayFromEth.ts => testWallet.ts} (70%) diff --git a/README.md b/README.md index ca43e503..89573441 100644 --- a/README.md +++ b/README.md @@ -30,6 +30,7 @@ This repository does not demonstrate a token trasnfer to eth but rather a messag ```bash npm run relay ``` +> Note: you can also run `testFactory` or `testWallet` instead of `relay` - you should see this in the logs: diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index 5b419dd9..c7dd85d1 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -22,7 +22,8 @@ "relay": "ts-node scripts/relay.ts", "relayToEth": "ts-node scripts/relayToEth.ts", "relayWithTokens": "ts-node scripts/relayWithTokens.ts", - "relayFromEth": "ts-node scripts/relayFromEth.ts", + "testWallet": "ts-node scripts/testWallet.ts", + "testFactory": "ts-node scripts/testFactory.ts", "test:proxy": "hardhat test src/__tests__/Factory.spec.ts", "coverage:proxy": "npx hardhat coverage --testfiles src/__tests__/Factory.spec.ts" }, diff --git a/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts b/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts deleted file mode 100644 index bc165e45..00000000 --- a/packages/axelar-local-dev-cosmos/scripts/relayFromEth.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { relayDataFromEth } from "../src/relayFromEth"; - -relayDataFromEth(); diff --git a/packages/axelar-local-dev-cosmos/scripts/testFactory.ts b/packages/axelar-local-dev-cosmos/scripts/testFactory.ts new file mode 100644 index 00000000..9fe64ffc --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/testFactory.ts @@ -0,0 +1,3 @@ +import { testFactory } from "../src/testFactory"; + +testFactory(); diff --git a/packages/axelar-local-dev-cosmos/scripts/testWallet.ts b/packages/axelar-local-dev-cosmos/scripts/testWallet.ts new file mode 100644 index 00000000..94538d2e --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/testWallet.ts @@ -0,0 +1,3 @@ +import { testWallet } from "../src/testWallet"; + +testWallet(); diff --git a/packages/axelar-local-dev-cosmos/src/testFactory.ts b/packages/axelar-local-dev-cosmos/src/testFactory.ts new file mode 100644 index 00000000..6898c310 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/src/testFactory.ts @@ -0,0 +1,104 @@ +import { SigningStargateClient } from "@cosmjs/stargate"; +import { encode } from "@metamask/abi-utils"; +import { AxelarRelayerService, defaultAxelarChainInfo } from "./index"; +import { + createNetwork, + deployContract, + evmRelayer, + relay, + RelayerType, +} from "@axelar-network/axelar-local-dev"; + +export const testFactory = async () => { + const axelarRelayer = await AxelarRelayerService.create( + defaultAxelarChainInfo, + ); + + const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); + + const ethereumNetwork = await createNetwork({ name: "Ethereum" }); + const factoryContract = await deployContract( + ethereumNetwork.userWallets[0], + Factory, + [ + ethereumNetwork.gateway.address, + ethereumNetwork.gasService.address, + ], + ); + + const ibcRelayer = axelarRelayer.ibcRelayer; + + const AMOUNT_IN_ATOMIC_UNITS = "1000000"; + const CHANNEL_ID = ibcRelayer.srcChannelId; + const DENOM = "ubld"; + const AXELAR_GMP_ADDRESS = + "axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5"; + const signer = ibcRelayer.wasmClient; + const senderAddress = "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl"; + const DESTINATION_CHAIN = "Ethereum"; + + // 0 is valid for local but not for testnet or mainnet + const feePayload = Array.from(encode(["uint256"], [0])); + + const memoForFactory = { + destination_chain: DESTINATION_CHAIN, + destination_address: factoryContract.address, + payload: feePayload, + // fee: { + // amount: '8000', + // recipient: 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5', + // }, + type: 1, + }; + + const message = [ + { + typeUrl: "/ibc.applications.transfer.v1.MsgTransfer", + value: { + sender: senderAddress, + receiver: AXELAR_GMP_ADDRESS, + token: { + denom: DENOM, + amount: AMOUNT_IN_ATOMIC_UNITS, + }, + timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, + sourceChannel: CHANNEL_ID, + sourcePort: "transfer", + memo: JSON.stringify(memoForFactory), + }, + }, + ]; + + const fee = { + gas: "250000", + amount: [{ denom: DENOM, amount: "30000" }], + }; + + console.log("Preparing to send tokens..."); + const signingClient = await SigningStargateClient.connectWithSigner( + "http://localhost/agoric-rpc", + signer.owner, + ); + + const response = await signingClient.signAndBroadcast( + senderAddress, + message, + fee, + ); + evmRelayer.setRelayer(RelayerType.Agoric, axelarRelayer); + + await relay({ + agoric: axelarRelayer, + }); + await axelarRelayer.stopListening(); + + await relay({ + evm: evmRelayer, + }); + + await relay({ + agoric: axelarRelayer, + }); + + await axelarRelayer.stopListening(); +}; diff --git a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts b/packages/axelar-local-dev-cosmos/src/testWallet.ts similarity index 70% rename from packages/axelar-local-dev-cosmos/src/relayFromEth.ts rename to packages/axelar-local-dev-cosmos/src/testWallet.ts index ffd2c43e..53a83f42 100644 --- a/packages/axelar-local-dev-cosmos/src/relayFromEth.ts +++ b/packages/axelar-local-dev-cosmos/src/testWallet.ts @@ -1,7 +1,11 @@ import { SigningStargateClient } from "@cosmjs/stargate"; import { encode } from "@metamask/abi-utils"; import createKeccakHash from "keccak"; -import { AxelarRelayerService, defaultAxelarChainInfo } from "./index"; +import { + AxelarRelayerService, + defaultAxelarChainInfo, + encodeContractCalls, +} from "./index"; import { createNetwork, @@ -34,7 +38,7 @@ const pack = ( ); }; -export const relayDataFromEth = async () => { +export const testWallet = async () => { const axelarRelayer = await AxelarRelayerService.create( defaultAxelarChainInfo, ); @@ -43,64 +47,57 @@ export const relayDataFromEth = async () => { const WalletContract = require("../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json"); const ethereumNetwork = await createNetwork({ name: "Ethereum" }); - const ethereumContract = await deployContract( + const factoryContract = await deployContract( ethereumNetwork.userWallets[0], Factory, - [ - ethereumNetwork.gateway.address, - ethereumNetwork.gasService.address, - "Ethereum", - ], + [ethereumNetwork.gateway.address, ethereumNetwork.gasService.address], ); const ethereumWallet = await deployContract( ethereumNetwork.userWallets[0], WalletContract, [ ethereumNetwork.gateway.address, + ethereumNetwork.gasService.address, "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl", ], ); - console.log("Ethereum Contract Address:", ethereumWallet.address); - - const targets = [ethereumContract.address]; - const data: any = [ - pack("createVendor(string)", ["string"], ["ownerAddress"]), - ]; - console.log(data); - - const payload = Array.from(encode(["address[]", "bytes[]"], [targets, data])); + console.log("Wallet Address:", ethereumWallet.address); const ibcRelayer = axelarRelayer.ibcRelayer; - const IBC_DENOM_AXL_USDC = "ubld"; - // 'ibc/295548A78785A1007F232DE286149A6FF512F180AF5657780FC89C009E2C348F'; const AMOUNT_IN_ATOMIC_UNITS = "1000000"; const CHANNEL_ID = ibcRelayer.srcChannelId; const DENOM = "ubld"; const AXELAR_GMP_ADDRESS = "axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5"; - const signer = ibcRelayer.wasmClient; const senderAddress = "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl"; - - // TODO - const DESTINATION_ADDRESS = ethereumWallet.address; const DESTINATION_CHAIN = "Ethereum"; - // const payload = encode(['string', 'string'], ['agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl', 'Hello, world!']); + const contractCalls = [ + { + target: factoryContract.address as `0x${string}`, + data: pack( + "createSmartWallet(string)", + ["string"], + ["ownerAddress"], + ) as `0x${string}`, + }, + ]; + + const payload = encodeContractCalls([]); - const memo = { + const memoForWallet = { destination_chain: DESTINATION_CHAIN, - destination_address: DESTINATION_ADDRESS, - payload, + destination_address: ethereumWallet.address, + payload: payload, // fee: { // amount: '8000', // recipient: 'axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5', // }, type: 1, }; - const message = [ { typeUrl: "/ibc.applications.transfer.v1.MsgTransfer", @@ -108,13 +105,13 @@ export const relayDataFromEth = async () => { sender: senderAddress, receiver: AXELAR_GMP_ADDRESS, token: { - denom: IBC_DENOM_AXL_USDC, + denom: DENOM, amount: AMOUNT_IN_ATOMIC_UNITS, }, timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, sourceChannel: CHANNEL_ID, sourcePort: "transfer", - memo: JSON.stringify(memo), + memo: JSON.stringify(memoForWallet), }, }, ]; @@ -141,17 +138,4 @@ export const relayDataFromEth = async () => { agoric: axelarRelayer, }); await axelarRelayer.stopListening(); - - const ethereumMessage = await ethereumContract.storedMessage(); - console.log("Message on Ethereum Contract:", ethereumMessage); - - await relay({ - evm: evmRelayer, - }); - - await relay({ - agoric: axelarRelayer, - }); - - await axelarRelayer.stopListening(); }; diff --git a/packages/axelar-local-dev-cosmos/src/utils.ts b/packages/axelar-local-dev-cosmos/src/utils.ts index 0461dc2b..f90dcc2f 100644 --- a/packages/axelar-local-dev-cosmos/src/utils.ts +++ b/packages/axelar-local-dev-cosmos/src/utils.ts @@ -16,7 +16,10 @@ import fs, { promises as fsp } from "fs"; import path from "path"; import { Path } from "./path"; import { CosmosChain } from "./types"; +import { encodeAbiParameters } from "viem"; +import { fromHex } from "@cosmjs/encoding"; +const hexToBytes = (hex: string) => fromHex(hex.slice(2)); const abiCoder = new AbiCoder(); export async function retry(fn: () => void, maxAttempts = 5, interval = 3000) { @@ -221,3 +224,34 @@ export const getRouteMessagePayload = ( }, ]; }; + +export const encodeContractCalls = ( + abiEncodedContractCalls: { + target: `0x${string}`; + data: `0x${string}`; + }[], + id = "", +) => { + const abiEncodedData = encodeAbiParameters( + [ + { + type: "tuple", + name: "callMessage", + components: [ + { name: "id", type: "string" }, + { + name: "calls", + type: "tuple[]", + components: [ + { name: "target", type: "address" }, + { name: "data", type: "bytes" }, + ], + }, + ], + }, + ], + [{ id, calls: abiEncodedContractCalls }], + ); + + return Array.from(hexToBytes(abiEncodedData)); +}; From 2344d54508204908d2e3a43846eafaa36612e024 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Mon, 8 Sep 2025 17:34:44 +0200 Subject: [PATCH 73/93] chore: merge scripts --- packages/axelar-local-dev-cosmos/package.json | 14 ++++---- .../axelar-local-dev-cosmos/scripts/relay.ts | 3 -- .../scripts/relayToEth.ts | 3 -- .../scripts/relayWithTokens.ts | 3 -- .../axelar-local-dev-cosmos/scripts/runner.ts | 35 +++++++++++++++++++ .../axelar-local-dev-cosmos/scripts/start.ts | 3 -- .../axelar-local-dev-cosmos/scripts/stop.ts | 3 -- .../scripts/testFactory.ts | 3 -- .../scripts/testWallet.ts | 3 -- 9 files changed, 42 insertions(+), 28 deletions(-) delete mode 100644 packages/axelar-local-dev-cosmos/scripts/relay.ts delete mode 100644 packages/axelar-local-dev-cosmos/scripts/relayToEth.ts delete mode 100644 packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts create mode 100644 packages/axelar-local-dev-cosmos/scripts/runner.ts delete mode 100644 packages/axelar-local-dev-cosmos/scripts/start.ts delete mode 100644 packages/axelar-local-dev-cosmos/scripts/stop.ts delete mode 100644 packages/axelar-local-dev-cosmos/scripts/testFactory.ts delete mode 100644 packages/axelar-local-dev-cosmos/scripts/testWallet.ts diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index c7dd85d1..b12dad9c 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -17,13 +17,13 @@ "build": "run-s build:ts build:contract", "build:ts": "rm -rf dist && tsc", "build:contract": "hardhat clean && hardhat compile", - "start": "./scripts/clean.sh && ts-node scripts/start.ts", - "stop": "ts-node scripts/stop.ts", - "relay": "ts-node scripts/relay.ts", - "relayToEth": "ts-node scripts/relayToEth.ts", - "relayWithTokens": "ts-node scripts/relayWithTokens.ts", - "testWallet": "ts-node scripts/testWallet.ts", - "testFactory": "ts-node scripts/testFactory.ts", + "start": "./scripts/clean.sh && ts-node scripts/runner.ts start", + "stop": "ts-node scripts/runner.ts stop", + "relay": "ts-node scripts/runner.ts relay", + "relayToEth": "ts-node scripts/runner.ts relayToEth", + "relayWithTokens": "ts-node scripts/runner.ts relayWithTokens", + "testWallet": "ts-node scripts/runner.ts testWallet", + "testFactory": "ts-node scripts/runner.ts testFactory", "test:proxy": "hardhat test src/__tests__/Factory.spec.ts", "coverage:proxy": "npx hardhat coverage --testfiles src/__tests__/Factory.spec.ts" }, diff --git a/packages/axelar-local-dev-cosmos/scripts/relay.ts b/packages/axelar-local-dev-cosmos/scripts/relay.ts deleted file mode 100644 index ceafce96..00000000 --- a/packages/axelar-local-dev-cosmos/scripts/relay.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { relayBasic } from "../src/relay"; - -relayBasic(); diff --git a/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts b/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts deleted file mode 100644 index a8dc8fcd..00000000 --- a/packages/axelar-local-dev-cosmos/scripts/relayToEth.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { relayDataToEth } from "../src/relayToEth"; - -relayDataToEth(); diff --git a/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts b/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts deleted file mode 100644 index 9b12f7b8..00000000 --- a/packages/axelar-local-dev-cosmos/scripts/relayWithTokens.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { relayDataToEth } from "../src/relayTokensToEth"; - -relayDataToEth(); diff --git a/packages/axelar-local-dev-cosmos/scripts/runner.ts b/packages/axelar-local-dev-cosmos/scripts/runner.ts new file mode 100644 index 00000000..3ff950ce --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/runner.ts @@ -0,0 +1,35 @@ +import { relayBasic } from "../src/relay"; +import { relayDataToEth } from "../src/relayToEth"; +import { relayDataToEth as relayTokensToEth } from "../src/relayTokensToEth"; +import { startChains, stopAll } from "../src/setup"; +import { testFactory } from "../src/testFactory"; +import { testWallet } from "../src/testWallet"; + +const command = process.argv[2]; + +switch (command) { + case "relay": + relayBasic(); + break; + case "relayToEth": + relayDataToEth(); + break; + case "relayWithTokens": + relayTokensToEth(); + break; + case "start": + startChains(); + break; + case "stop": + stopAll(); + break; + case "testFactory": + testFactory(); + break; + case "testWallet": + testWallet(); + break; + default: + console.error(`Unknown command: ${command}`); + process.exit(1); +} \ No newline at end of file diff --git a/packages/axelar-local-dev-cosmos/scripts/start.ts b/packages/axelar-local-dev-cosmos/scripts/start.ts deleted file mode 100644 index e00ffef5..00000000 --- a/packages/axelar-local-dev-cosmos/scripts/start.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { startChains } from "../src/setup"; - -startChains(); diff --git a/packages/axelar-local-dev-cosmos/scripts/stop.ts b/packages/axelar-local-dev-cosmos/scripts/stop.ts deleted file mode 100644 index 5558c3a1..00000000 --- a/packages/axelar-local-dev-cosmos/scripts/stop.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { stopAll } from "../src/setup"; - -stopAll(); diff --git a/packages/axelar-local-dev-cosmos/scripts/testFactory.ts b/packages/axelar-local-dev-cosmos/scripts/testFactory.ts deleted file mode 100644 index 9fe64ffc..00000000 --- a/packages/axelar-local-dev-cosmos/scripts/testFactory.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { testFactory } from "../src/testFactory"; - -testFactory(); diff --git a/packages/axelar-local-dev-cosmos/scripts/testWallet.ts b/packages/axelar-local-dev-cosmos/scripts/testWallet.ts deleted file mode 100644 index 94538d2e..00000000 --- a/packages/axelar-local-dev-cosmos/scripts/testWallet.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { testWallet } from "../src/testWallet"; - -testWallet(); From 66fb3eb5dd80b40c5e557cd9cb50b54bbf8da046 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Mon, 8 Sep 2025 17:41:13 +0200 Subject: [PATCH 74/93] chore: add comment --- packages/axelar-local-dev-cosmos/src/testFactory.ts | 1 + packages/axelar-local-dev-cosmos/src/testWallet.ts | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/testFactory.ts b/packages/axelar-local-dev-cosmos/src/testFactory.ts index 6898c310..ad04f286 100644 --- a/packages/axelar-local-dev-cosmos/src/testFactory.ts +++ b/packages/axelar-local-dev-cosmos/src/testFactory.ts @@ -34,6 +34,7 @@ export const testFactory = async () => { const AXELAR_GMP_ADDRESS = "axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5"; const signer = ibcRelayer.wasmClient; + // address present on agoric with BLD const senderAddress = "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl"; const DESTINATION_CHAIN = "Ethereum"; diff --git a/packages/axelar-local-dev-cosmos/src/testWallet.ts b/packages/axelar-local-dev-cosmos/src/testWallet.ts index 53a83f42..4cd3ce0e 100644 --- a/packages/axelar-local-dev-cosmos/src/testWallet.ts +++ b/packages/axelar-local-dev-cosmos/src/testWallet.ts @@ -43,6 +43,9 @@ export const testWallet = async () => { defaultAxelarChainInfo, ); + // address present on agoric with BLD + const senderAddress = "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl"; + const Factory = require("../artifacts/src/__tests__/contracts/Factory.sol/Factory.json"); const WalletContract = require("../artifacts/src/__tests__/contracts/Factory.sol/Wallet.json"); @@ -58,7 +61,7 @@ export const testWallet = async () => { [ ethereumNetwork.gateway.address, ethereumNetwork.gasService.address, - "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl", + senderAddress, ], ); @@ -72,7 +75,6 @@ export const testWallet = async () => { const AXELAR_GMP_ADDRESS = "axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5"; const signer = ibcRelayer.wasmClient; - const senderAddress = "agoric1estsewt6jqsx77pwcxkn5ah0jqgu8rhgflwfdl"; const DESTINATION_CHAIN = "Ethereum"; const contractCalls = [ From aac6c0039431da8d664cec5c9dacda3881b00480 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Mon, 8 Sep 2025 18:58:28 +0500 Subject: [PATCH 75/93] feat: add off-chain scripts to do gmp calls --- integration/agoric/README.md | 116 ++ integration/agoric/axelar-support.ts | 110 ++ integration/agoric/config.ts | 28 + integration/agoric/flows.ts | 242 +++ integration/agoric/main.ts | 181 +++ integration/agoric/types.ts | 74 + integration/package.json | 34 +- integration/tsconfig.json | 24 + integration/yarn.lock | 2206 +++++++++++++++++++++++--- 9 files changed, 2832 insertions(+), 183 deletions(-) create mode 100644 integration/agoric/README.md create mode 100644 integration/agoric/axelar-support.ts create mode 100644 integration/agoric/config.ts create mode 100644 integration/agoric/flows.ts create mode 100644 integration/agoric/main.ts create mode 100644 integration/agoric/types.ts create mode 100644 integration/tsconfig.json diff --git a/integration/agoric/README.md b/integration/agoric/README.md new file mode 100644 index 00000000..076beed9 --- /dev/null +++ b/integration/agoric/README.md @@ -0,0 +1,116 @@ +# Agoric to Axelar Integration CLI + +This CLI tool provides a command-line interface for executing cross-chain DeFi operations using Agoric's Orchestration API and Axelar's General Message Passing (GMP). + +## Overview + +The `main.ts` file serves as the entry point for various cross-chain operations including: + +- Creating remote EVM accounts +- Supplying/withdrawing funds to/from Aave +- Supplying/withdrawing funds to/from Compound + +### Supported EVM Chains + +The following EVM chains are supported for cross-chain operations: + +- **Ethereum** - Ethereum testnet +- **Avalanche** - Avalanche testnet (Fuji) + +## Configuration + +### Environment Variables + +The following environment variables can be set in a `.env` file: + +- `FACTORY_ADDRESS` - Factory contract address (default: `0x726cAF5f0BA64AF97337c6Db80F5d26Aa9DEAE75`) +- `REMOTE_ADDRESS` - Remote EVM address (default: `0x84f600b91AFFf07Be1c033dE21007Bc092CC096e`) +- `DESTINATION_CHAIN` - Destination chain name (default: `Avalanche`) + +### Default Constants + +- **Gas Amount**: 20,000,000 ubld - Gas amount allocated for Agoric to Axelar IBC (Inter-Blockchain Communication) transfers. This covers the computational cost of cross-chain message passing and execution on the destination chain. Denominated in ubld (micro BLD tokens). +- **Transfer Amount**: 100,000 uusdc - Default amount for DeFi operations: + - For supply operations: Amount to deposit into Aave/Compound protocols + - For withdraw operations: Amount to withdraw from Aave/Compound protocols + - Denominated in uusdc (micro USDC tokens) + +## Available Commands + +### create-account + +Creates a remote EVM account on the destination chain. + +```bash +yarn create-account [options] +``` + +### supply-aave + +Supplies funds to Aave protocol on the destination chain. + +```bash +yarn supply-aave [options] +``` + +### withdraw-aave + +Withdraws funds from Aave protocol. + +```bash +yarn withdraw-aave [options] +``` + +### supply-compound + +Supplies funds to Compound protocol on the destination chain. + +```bash +yarn supply-compound [options] +``` + +### withdraw-compound + +Withdraws funds from Compound protocol. + +```bash +yarn withdraw-compound [options] +``` + +## Command Line Options + +All commands support the following options: + +- `--factory-address
` - Factory contract address +- `--remote-address
` - Remote EVM address +- `--destination-chain ` - Destination chain name +- `--gas-amount ` - Gas amount for transactions +- `--transfer-amount ` - Amount to transfer (for supply operations) +- `--withdraw-amount ` - Amount to withdraw (for withdraw operations) +- `--help` - Show help message + +## Usage Examples + +```bash +# Create account with default settings +yarn create-account + +# Supply to Aave with custom transfer amount +yarn supply-aave -- --transfer-amount 200000 + +# Withdraw from Aave with custom address and amount +yarn withdraw-aave -- --remote-address 0x123...abc --withdraw-amount 50000 + +# Supply to Compound on different chain +yarn supply-compound -- --destination-chain Ethereum --transfer-amount 150000 +``` + +## Architecture + +### Flow Functions (imported from ./flows.js) + +- `createRemoteEVMAccount()` - Creates remote EVM accounts +- `supplyToAave()` - Handles Aave supply operations +- `withdrawFromAave()` - Handles Aave withdraw operations +- `supplyToCompound()` - Handles Compound supply operations +- `withdrawFromCompound()` - Handles Compound withdraw operations diff --git a/integration/agoric/axelar-support.ts b/integration/agoric/axelar-support.ts new file mode 100644 index 00000000..7debc495 --- /dev/null +++ b/integration/agoric/axelar-support.ts @@ -0,0 +1,110 @@ +import { encodeFunctionData, encodeAbiParameters, hexToBytes } from "viem"; +import type { AbiEncodedContractCall, ContractCall } from "./types"; +import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; +import { stringToPath } from "@cosmjs/crypto"; + +export const constructContractCall = ({ + target, + functionSignature, + args, +}: ContractCall): AbiEncodedContractCall => { + const [name, paramsRaw] = functionSignature.split("("); + const params = paramsRaw.replace(")", "").split(",").filter(Boolean); + + return { + target, + data: encodeFunctionData({ + abi: [ + { + type: "function", + name, + inputs: params.map((type, i) => ({ type, name: `arg${i}` })), + }, + ], + functionName: name, + args, + }), + }; +}; + +/** + * Builds a GMP payload from an array of contract calls. + */ + +export const buildGMPPayload = (contractCalls, id = "") => { + const abiEncodedContractCalls: AbiEncodedContractCall[] = []; + for (const call of contractCalls) { + const { target, functionSignature, args } = call; + abiEncodedContractCalls.push( + constructContractCall({ target, functionSignature, args }), + ); + } + + const abiEncodedData = encodeAbiParameters( + [ + { + type: "tuple", + name: "callMessage", + components: [ + { name: "id", type: "string" }, + { + name: "calls", + type: "tuple[]", + components: [ + { name: "target", type: "address" }, + { name: "data", type: "bytes" }, + ], + }, + ], + }, + ], + [{ id, calls: abiEncodedContractCalls }], + ); + + return Array.from(hexToBytes(abiEncodedData)); +}; + +/** + * @param {bigint} gasAmount - gas amount for the EVM to Agoric message + * @returns {number[]} The payload array. + */ +export const buildGasPayload = (gasAmount) => { + const abiEncodedData = encodeAbiParameters( + [{ type: "uint256" }], + [gasAmount], + ); + + return Array.from(hexToBytes(abiEncodedData)); +}; + +// For Agoric wallet +export const getSigner = async () => { + const mnemonic = process.env.MNEMONIC; + if (!mnemonic) { + console.error("Mnemonic not found in environment variables."); + process.exit(1); + } + const Agoric = { + Bech32MainPrefix: "agoric", + CoinType: 564, + }; + const hdPath = (coinType = 118, account = 0) => + stringToPath(`m/44'/${coinType}'/${account}'/0/0`); + + return DirectSecp256k1HdWallet.fromMnemonic(mnemonic, { + prefix: Agoric.Bech32MainPrefix, + hdPaths: [hdPath(Agoric.CoinType, 0), hdPath(Agoric.CoinType, 1)], + }); +}; + +export const getSignerWallet = async ({ prefix }) => { + const mnemonic = process.env.MNEMONIC; + if (!mnemonic) { + console.error("Mnemonic not found in environment variables."); + process.exit(1); + } + + return DirectSecp256k1HdWallet.fromMnemonic(mnemonic, { + prefix, + }); +}; diff --git a/integration/agoric/config.ts b/integration/agoric/config.ts new file mode 100644 index 00000000..efc25f6a --- /dev/null +++ b/integration/agoric/config.ts @@ -0,0 +1,28 @@ +export const channels = { + AGORIC_MAINNET_TO_AXELAR: "channel-9", + AGORIC_DEVNET_TO_AXELAR: "channel-315", +}; + +export const urls = { + RPC_AGORIC_MAINNET: "https://main.rpc.agoric.net:443", + RPC_AGORIC_DEVNET: "https://devnet.rpc.agoric.net/", +}; + +export const addresses = { + AXELAR_GMP: + "axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5", + AXELAR_GAS: "axelar1aythygn6z5thymj6tmzfwekzh05ewg3l7d6y89", +}; + +export const tokens = { + nativeTokenAgoric: "ubld", + aUSDCAgoricDevnet: + "ibc/F286F1FB1EBB1AE00E1003F6BBEDB536AF8901ABB9205E7112A6BD5C8491F3E0", +}; + +export const FACTORY_ADDRESS = { + Avalanche: "0x724fB9Fd9876d12Da33223C84E7Abf46fFc159C1", + // one with txId + // https://sepolia.etherscan.io/address/0x726cAF5f0BA64AF97337c6Db80F5d26Aa9DEAE75 + Ethereum: "0x726cAF5f0BA64AF97337c6Db80F5d26Aa9DEAE75", +}; diff --git a/integration/agoric/flows.ts b/integration/agoric/flows.ts new file mode 100644 index 00000000..07421b36 --- /dev/null +++ b/integration/agoric/flows.ts @@ -0,0 +1,242 @@ +import { + SigningStargateClient, + assertIsDeliverTxSuccess, +} from "@cosmjs/stargate"; +import { getSigner, buildGMPPayload } from "./axelar-support.ts"; +import { addresses, channels, tokens, urls } from "./config.ts"; +import { + AxelarChain, + AxelarGMPMessageType, + GmpArgsWithdrawAmount, + type AxelarGmpOutgoingMemo, + type BaseGmpArgs, + type GmpArgsContractCall, + type GmpArgsTransferAmount, +} from "./types.ts"; + +const AxelarIds = { + Avalanche: "Avalanche", + Ethereum: "ethereum-sepolia", +}; + +export type ContractKey = "aavePool" | "compound" | "usdc"; +export type ChainConfig = { + contractAddresses: Record; +}; + +export const axelarChainsMap: Record = { + Avalanche: { + contractAddresses: { + // https://testnet.snowtrace.io/address/0x8B9b2AF4afB389b4a70A474dfD4AdCD4a302bb40 + aavePool: "0x8B9b2AF4afB389b4a70A474dfD4AdCD4a302bb40", + // Compound is not deployed on the Avalanche testnet, so we use a placeholder address + compound: "0x", + // Source: // https://developers.circle.com/stablecoins/usdc-contract-addresses + usdc: "0x5425890298aed601595a70AB815c96711a31Bc65", + }, + }, + Ethereum: { + contractAddresses: { + // Source: https://aave.com/docs/resources/addresses + aavePool: "0x6Ae43d3271ff6888e7Fc43Fd7321a503ff738951", + // Soruce: https://docs.compound.finance/#networks + compound: "0xAec1F48e02Cfb822Be958B68C7957156EB3F0b6e", + // Source: // https://developers.circle.com/stablecoins/usdc-contract-addresses + usdc: "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238", + }, + }, +}; + +export const createRemoteEVMAccount = async ( + gmpArgs: BaseGmpArgs & { factoryAddress: `0x${string}` }, +) => { + const { destinationEVMChain, gasAmount, factoryAddress } = gmpArgs; + + await sendGmp({ + destinationAddress: factoryAddress, + destinationEVMChain: AxelarIds[destinationEVMChain] as AxelarChain, + type: AxelarGMPMessageType.ContractCall, + gasAmount, + contractInvocationData: [], + }); +}; + +export const makeAxelarMemo = (gmpArgs: GmpArgsContractCall) => { + const { + contractInvocationData, + destinationEVMChain, + destinationAddress, + gasAmount, + type, + } = gmpArgs; + + const payload = buildGMPPayload(contractInvocationData, "tx1"); + const memo: AxelarGmpOutgoingMemo = { + destination_chain: destinationEVMChain, + destination_address: destinationAddress, + payload, + type, + }; + + memo.fee = { + // This amount specifies the outbound gas for sending GMP message + amount: String(gasAmount), + recipient: addresses.AXELAR_GAS, + }; + + return JSON.stringify(memo); +}; + +export const sendIbc = async ({ memo, amount }) => { + const signer = await getSigner(); + + const accounts = await signer.getAccounts(); + const senderAddress = accounts[0].address; + console.log("Sender Address:", senderAddress); + + const ibcPayload = [ + { + typeUrl: "/ibc.applications.transfer.v1.MsgTransfer", + value: { + sender: senderAddress, + receiver: addresses.AXELAR_GMP, + token: { + denom: tokens.nativeTokenAgoric, + amount, + }, + timeoutTimestamp: (Math.floor(Date.now() / 1000) + 600) * 1e9, + sourceChannel: channels.AGORIC_DEVNET_TO_AXELAR, + sourcePort: "transfer", + memo, + }, + }, + ]; + + console.log("connecting with signer"); + const signingClient = await SigningStargateClient.connectWithSigner( + urls.RPC_AGORIC_DEVNET, + signer, + ); + + const fee = { + gas: "1000000", + amount: [{ denom: tokens.nativeTokenAgoric, amount: "1000000" }], + }; + + console.log("Sign and Broadcast transaction..."); + const response = await signingClient.signAndBroadcast( + senderAddress, + ibcPayload, + fee, + ); + + console.log("Asserting"); + assertIsDeliverTxSuccess(response); +}; + +export const sendGmp = async (gmpArgs: GmpArgsContractCall) => { + const memo = makeAxelarMemo(gmpArgs); + return sendIbc({ memo, amount: String(gmpArgs.gasAmount) }); +}; + +export const supplyToAave = async ( + gmpArgs: GmpArgsTransferAmount, + remoteEVMAddress: `0x${string}`, +) => { + const { destinationEVMChain, transferAmount, gasAmount } = gmpArgs; + + await sendGmp({ + destinationAddress: remoteEVMAddress, + destinationEVMChain, + type: AxelarGMPMessageType.ContractCall, + gasAmount, + contractInvocationData: [ + { + functionSignature: "approve(address,uint256)", + args: ["0x6Ae43d3271ff6888e7Fc43Fd7321a503ff738951", transferAmount], + target: "0x94a9D9AC8a22534E3FaCa9F4e7F2E2cf85d5E4C8", + }, + { + functionSignature: "supply(address,uint256,address,uint16)", + args: [ + "0x94a9D9AC8a22534E3FaCa9F4e7F2E2cf85d5E4C8", + transferAmount, + remoteEVMAddress, + 0, + ], + target: "0x6Ae43d3271ff6888e7Fc43Fd7321a503ff738951", + }, + ], + }); +}; + +export const withdrawFromAave = async ( + gmpArgs: GmpArgsWithdrawAmount, + remoteEVMAddress: `0x${string}`, +) => { + const { destinationEVMChain, withdrawAmount, gasAmount } = gmpArgs; + const { contractAddresses } = axelarChainsMap[destinationEVMChain]; + + await sendGmp({ + destinationAddress: remoteEVMAddress, + destinationEVMChain, + type: AxelarGMPMessageType.ContractCall, + gasAmount, + contractInvocationData: [ + { + functionSignature: "withdraw(address,uint256,address)", + args: [contractAddresses.usdc, withdrawAmount, remoteEVMAddress], + target: contractAddresses.aavePool, + }, + ], + }); +}; + +export const supplyToCompound = async ( + gmpArgs: GmpArgsTransferAmount, + remoteEVMAddress: `0x${string}`, +) => { + const { destinationEVMChain, transferAmount, gasAmount } = gmpArgs; + const { contractAddresses } = axelarChainsMap[destinationEVMChain]; + + await sendGmp({ + destinationAddress: remoteEVMAddress, + destinationEVMChain, + type: AxelarGMPMessageType.ContractCall, + gasAmount, + contractInvocationData: [ + { + functionSignature: "approve(address,uint256)", + args: [contractAddresses.compound, transferAmount], + target: contractAddresses.usdc, + }, + { + functionSignature: "supply(address,uint256)", + args: [contractAddresses.usdc, transferAmount], + target: contractAddresses.compound, + }, + ], + }); +}; + +export const withdrawFromCompound = async ( + gmpArgs: GmpArgsWithdrawAmount, + remoteEVMAddress: `0x${string}`, +) => { + const { destinationEVMChain, withdrawAmount, gasAmount } = gmpArgs; + const { contractAddresses } = axelarChainsMap[destinationEVMChain]; + + await sendGmp({ + destinationAddress: remoteEVMAddress, + destinationEVMChain, + type: AxelarGMPMessageType.ContractCall, + gasAmount, + contractInvocationData: [ + { + functionSignature: "withdraw(address,uint256)", + args: [contractAddresses.usdc, withdrawAmount], + target: contractAddresses.compound, + }, + ], + }); +}; diff --git a/integration/agoric/main.ts b/integration/agoric/main.ts new file mode 100644 index 00000000..364dbb7a --- /dev/null +++ b/integration/agoric/main.ts @@ -0,0 +1,181 @@ +/** + * @fileoverview Main CLI entry point for Agoric to Axelar integration operations. + * This module provides a command-line interface for executing various DeFi operations + * across chains using Agoric's Orchestration API and Axelar's General Message Passing (GMP). + */ + +import { config } from "dotenv"; +import { + createRemoteEVMAccount, + supplyToAave, + supplyToCompound, + withdrawFromAave, + withdrawFromCompound, +} from "./flows.js"; +import { AxelarChain } from "./types.js"; + +config(); + +const DEFAULT_GAS_AMOUNT = 20_000_000; +const DEFAULT_TRANSFER_AMOUNT = 100_000n; +const DEFAULT_FACTORY_ADDRESS = (process.env.FACTORY_ADDRESS || + "0x726cAF5f0BA64AF97337c6Db80F5d26Aa9DEAE75") as `0x${string}`; +const DEFAULT_REMOTE_ADDRESS = (process.env.REMOTE_ADDRESS || + "0x84f600b91AFFf07Be1c033dE21007Bc092CC096e") as `0x${string}`; +const DEFAULT_DESTINATION_CHAIN = (process.env.DESTINATION_CHAIN || + "Avalanche") as AxelarChain; + +const printUsage = () => { + console.log(` +Usage: yarn [options] + +Commands: + create-account Create a remote EVM account + supply-aave Supply funds to Aave + withdraw-aave Withdraw funds from Aave + supply-compound Supply funds to Compound + withdraw-compound Withdraw funds from Compound + run-all Execute all operations in sequence + +Options: + --factory-address
Factory contract address (default: ${DEFAULT_FACTORY_ADDRESS}) + --remote-address
Remote EVM address (default: ${DEFAULT_REMOTE_ADDRESS}) + --destination-chain Destination chain (default: ${DEFAULT_DESTINATION_CHAIN}) + --gas-amount Gas amount (default: ${DEFAULT_GAS_AMOUNT}) + --transfer-amount Transfer amount (default: ${DEFAULT_TRANSFER_AMOUNT}) + --withdraw-amount Withdraw amount (default: ${DEFAULT_TRANSFER_AMOUNT}) + --help Show this help message + +Examples: + yarn create-account + yarn supply-aave -- --transfer-amount 200000 + yarn withdraw-aave -- --remote-address 0x123...abc --withdraw-amount 50000 +`); +}; + +function parseArgs() { + const args = process.argv.slice(2); + const command = args[0]; + + const options = { + factoryAddress: DEFAULT_FACTORY_ADDRESS, + remoteAddress: DEFAULT_REMOTE_ADDRESS, + destinationChain: DEFAULT_DESTINATION_CHAIN, + gasAmount: DEFAULT_GAS_AMOUNT, + transferAmount: DEFAULT_TRANSFER_AMOUNT, + withdrawAmount: DEFAULT_TRANSFER_AMOUNT, + }; + + for (let i = 1; i < args.length; i++) { + const arg = args[i]; + const nextArg = args[i + 1]; + + switch (arg) { + case "--factory-address": + if (nextArg) options.factoryAddress = nextArg as `0x${string}`; + i++; + break; + case "--remote-address": + if (nextArg) options.remoteAddress = nextArg as `0x${string}`; + i++; + break; + case "--destination-chain": + if (nextArg) + options.destinationChain = + nextArg as typeof DEFAULT_DESTINATION_CHAIN; + i++; + break; + case "--gas-amount": + if (nextArg) options.gasAmount = parseInt(nextArg); + i++; + break; + case "--transfer-amount": + if (nextArg) options.transferAmount = BigInt(nextArg); + i++; + break; + case "--withdraw-amount": + if (nextArg) options.withdrawAmount = BigInt(nextArg); + i++; + break; + case "--help": + printUsage(); + process.exit(0); + } + } + + return { command, options }; +} + +const main = async () => { + try { + const { command, options } = parseArgs(); + + if (!command || command === "--help") { + printUsage(); + process.exit(1); + } + + console.log(`Executing command: ${command}`); + console.log("Options:", options); + + switch (command) { + case "create-account": + await createRemoteEVMAccount({ + factoryAddress: options.factoryAddress as `0x${string}`, + destinationEVMChain: options.destinationChain, + gasAmount: options.gasAmount, + }); + break; + case "supply-aave": + await supplyToAave( + { + destinationEVMChain: options.destinationChain, + gasAmount: options.gasAmount, + transferAmount: options.transferAmount, + }, + options.remoteAddress as `0x${string}`, + ); + break; + case "withdraw-aave": + await withdrawFromAave( + { + destinationEVMChain: options.destinationChain, + gasAmount: options.gasAmount, + withdrawAmount: options.withdrawAmount, + }, + options.remoteAddress as `0x${string}`, + ); + break; + case "supply-compound": + await supplyToCompound( + { + destinationEVMChain: options.destinationChain, + gasAmount: options.gasAmount, + transferAmount: options.transferAmount, + }, + options.remoteAddress as `0x${string}`, + ); + break; + + case "withdraw-compound": + await withdrawFromCompound( + { + destinationEVMChain: options.destinationChain, + gasAmount: options.gasAmount, + withdrawAmount: options.withdrawAmount, + }, + options.remoteAddress as `0x${string}`, + ); + break; + default: + console.error(`❌ Unknown command: ${command}`); + printUsage(); + process.exit(1); + } + } catch (error) { + console.error("❌ Error during execution:", error); + process.exit(1); + } +}; + +main(); diff --git a/integration/agoric/types.ts b/integration/agoric/types.ts new file mode 100644 index 00000000..6d8d02a2 --- /dev/null +++ b/integration/agoric/types.ts @@ -0,0 +1,74 @@ +export const AxelarGMPMessageType = { + ContractCall: 1, + ContractCallWithToken: 2, + TokenTransfer: 3, +} as const; + +type GMPMessageType = + (typeof AxelarGMPMessageType)[keyof typeof AxelarGMPMessageType]; + +type Bech32Address = string; + +export type AxelarGmpIncomingMemo = { + source_chain: string; + source_address: string; + payload: string; + type: GMPMessageType; +}; + +type AxelarFeeObject = { + amount: string; + recipient: Bech32Address; +}; + +export type AxelarGmpOutgoingMemo = { + destination_chain: string; + destination_address: string; + payload: number[] | null; + type: GMPMessageType; + fee?: AxelarFeeObject; +}; + +export type ContractCall = { + target: `0x${string}`; + functionSignature: string; + args: unknown[]; +}; + +export type AbiEncodedContractCall = { + target: `0x${string}`; + data: `0x${string}`; +}; + +export const AxelarChains = /** @type {const} */ { + Ethereum: "Ethereum", + Avalanche: "Avalanche", +}; + +export type AxelarChain = keyof typeof AxelarChains; + +export type BaseGmpArgs = { + destinationEVMChain: AxelarChain; + gasAmount: number; // in ubld +}; + +export const GmpCallType = { + ContractCall: 1, + ContractCallWithToken: 2, +} as const; + +export type GmpCallType = (typeof GmpCallType)[keyof typeof GmpCallType]; + +export type GmpArgsContractCall = BaseGmpArgs & { + destinationAddress: string; + type: GmpCallType; + contractInvocationData: Array; +}; + +export type GmpArgsTransferAmount = BaseGmpArgs & { + transferAmount: bigint; +}; + +export type GmpArgsWithdrawAmount = BaseGmpArgs & { + withdrawAmount: bigint; +}; diff --git a/integration/package.json b/integration/package.json index 43a60cc2..74cc811d 100644 --- a/integration/package.json +++ b/integration/package.json @@ -5,19 +5,41 @@ "scripts": { "make-acc": "makeAccount=true node scripts/make-account.mjs", "get-addr": "node scripts/make-account.mjs", - "setup": "node scripts/setup-gmp.mjs" - }, - "devDependencies": { - "execa": "^9.5.2" + "setup": "node scripts/setup-gmp.mjs", + "create-account": "vite-node agoric/main.ts create-account", + "supply-aave": "vite-node agoric/main.ts supply-aave", + "withdraw-aave": "vite-node agoric/main.ts withdraw-aave", + "supply-compound": "vite-node agoric/main.ts supply-compound", + "withdraw-compound": "vite-node agoric/main.ts withdraw-compound" }, "keywords": [], "author": "", "license": "ISC", "description": "", "dependencies": { - "@agoric/cosmic-proto": "^0.5.0-u21.0", "@agoric/internal": "^0.4.0-u21.0", "@endo/base64": "^1.0.11", - "@endo/errors": "^1.2.12" + "@agoric/client-utils": "0.2.0-u21.0.1", + "@agoric/cosmic-proto": "0.5.0-u21.0.1", + "@cosmjs/crypto": "^0.33.1", + "@cosmjs/proto-signing": "^0.33.1", + "@cosmjs/stargate": "0.33.1", + "@endo/errors": "^1.2.13", + "@skip-go/client": "^1.1.7", + "cosmjs-types": "^0.9.0", + "dotenv": "^16.5.0", + "ethers": "6.13.4", + "execa": "^9.6.0", + "viem": "^2.31.2" + }, + "resolutions": { + "@cosmjs/encoding": "0.33.1", + "@cosmjs/tendermint-rpc": "0.33.1" + }, + "devDependencies": { + "@types/node": "^22.15.21", + "typescript": "^5.8.3", + "vite-node": "^3.1.4", + "execa": "^9.5.2" } } diff --git a/integration/tsconfig.json b/integration/tsconfig.json new file mode 100644 index 00000000..c64b5606 --- /dev/null +++ b/integration/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "target": "esnext", + "lib": ["esnext", "dom"], + "module": "esnext", + "moduleResolution": "bundler", + "skipLibCheck": true, + "allowJs": true, + "checkJs": true, + "allowSyntheticDefaultImports": true, + "strict": false, + "downlevelIteration": true, + "strictNullChecks": true, + "noImplicitThis": true, + "noUncheckedSideEffectImports": true, + "erasableSyntaxOnly": true, + "verbatimModuleSyntax": true, + "allowImportingTsExtensions": true, + "rewriteRelativeImportExtensions": true, + "noEmit": true, + "types": ["node"] + }, + "include": ["src"] +} diff --git a/integration/yarn.lock b/integration/yarn.lock index 054ddc7b..292460ff 100644 --- a/integration/yarn.lock +++ b/integration/yarn.lock @@ -2,12 +2,22 @@ # yarn lockfile v1 -"@agoric/base-zone@workspace:*": - version "0.1.1-upgrade-21-dev-43b4090.0" - resolved "https://registry.yarnpkg.com/@agoric/base-zone/-/base-zone-0.1.1-upgrade-21-dev-43b4090.0.tgz#e01cfcdd0dfe0d2670893bef12f4e8dabb36a0f3" - integrity sha512-HC17WxPMMbl+KgOXRSLBqA3s9o+y1p7CuFJJMzkkDGigsTALvP1XRC7jh5s8Y3qkMPiR8nSt1jBL6hujQN21QA== +"@adraffy/ens-normalize@1.10.1": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz#63430d04bd8c5e74f8d7d049338f1cd9d4f02069" + integrity sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw== + +"@adraffy/ens-normalize@^1.11.0": + version "1.11.0" + resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.11.0.tgz#42cc67c5baa407ac25059fcd7d405cc5ecdb0c33" + integrity sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg== + +"@agoric/base-zone@0.1.1-u21.0.1": + version "0.1.1-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/base-zone/-/base-zone-0.1.1-u21.0.1.tgz#cd658807e29ade9467bfb3419605c54edf97a411" + integrity sha512-j7qszLUP4z6PWGKhcNQOvuJwXazxLBhGMGG2ueEbuFvtFncev7fIZaSZ5ADIHYOSgGcANPmRAC0pufW3C5LNUQ== dependencies: - "@agoric/store" "workspace:*" + "@agoric/store" "0.9.3-u21.0.1" "@endo/common" "^1.2.10" "@endo/errors" "^1.2.10" "@endo/exo" "^1.5.9" @@ -15,22 +25,114 @@ "@endo/pass-style" "^1.5.0" "@endo/patterns" "^1.5.0" -"@agoric/cosmic-proto@^0.5.0-u21.0": - version "0.5.0-u21.0" - resolved "https://registry.yarnpkg.com/@agoric/cosmic-proto/-/cosmic-proto-0.5.0-u21.0.tgz#fe4ae1bdb2f22275689faf1efd42793a88b26c35" - integrity sha512-e1+KhldsxUBcl4L49L3Wlx8yE3+Hc/mrTTvB7v1LWX6Si4/ef9jMPZQJDgWrdVzARKXLdAni9uIvuORJ4AxF8Q== +"@agoric/base-zone@0.2.0-u22.1": + version "0.2.0-u22.1" + resolved "https://registry.yarnpkg.com/@agoric/base-zone/-/base-zone-0.2.0-u22.1.tgz#c6d86d14aa659f4282ec3884a3db995289a08fd3" + integrity sha512-8NTFVvpgbNxYY4CU3iaRBXR1TOJ/qoz1zJW8on10wxmxSZF1/upPRX7vYOXSnfNa6RXnKYtQuF7Ub56i2xualQ== + dependencies: + "@agoric/store" "0.10.0-u22.1" + "@endo/common" "^1.2.13" + "@endo/errors" "^1.2.13" + "@endo/exo" "^1.5.12" + "@endo/far" "^1.1.14" + "@endo/pass-style" "^1.6.3" + "@endo/patterns" "^1.7.0" + +"@agoric/casting@0.5.0-u21.0.1": + version "0.5.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/casting/-/casting-0.5.0-u21.0.1.tgz#f2f00ec0fee237a231f952a3bb046daf92650820" + integrity sha512-RX8T9XUQPpUrFFIjWzkEgStrKyd4ZMH9xd17wbAFE1hyNOJ32OPVjNmbRA29PpF0958qrTBxjg14y1isgAy7SQ== + dependencies: + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/notifier" "0.7.0-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@cosmjs/encoding" "^0.33.0" + "@cosmjs/proto-signing" "^0.33.0" + "@cosmjs/stargate" "^0.33.0" + "@cosmjs/tendermint-rpc" "^0.33.0" + "@endo/errors" "^1.2.10" + "@endo/far" "^1.1.11" + "@endo/init" "^1.1.9" + "@endo/lockdown" "^1.0.15" + "@endo/marshal" "^1.6.4" + "@endo/promise-kit" "^1.1.10" + +"@agoric/client-utils@0.2.0-u21.0.1": + version "0.2.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/client-utils/-/client-utils-0.2.0-u21.0.1.tgz#e10afa17cc87553a76e1834de4fe4bde138e554e" + integrity sha512-aZaaO4eHqpxEhDlHxPD5uXZhtFrZm+SO26a5Cxv5SWklhkaCYHlZxVMUUilfkJv0SNtfRCBFZfwFJORLUVRWxg== + dependencies: + "@agoric/casting" "0.5.0-u21.0.1" + "@agoric/cosmic-proto" "0.5.0-u21.0.1" + "@agoric/ertp" "0.16.3-u21.0.1" + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/smart-wallet" "0.5.4-u21.0.1" + "@agoric/vats" "0.16.0-u21.0.1" + "@cosmjs/stargate" "^0.33.0" + "@cosmjs/tendermint-rpc" "^0.33.0" + "@endo/base64" "^1.0.9" + "@endo/common" "^1.2.10" + "@endo/errors" "^1.2.10" + "@endo/marshal" "^1.6.4" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + +"@agoric/cosmic-proto@0.5.0-u21.0.1": + version "0.5.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/cosmic-proto/-/cosmic-proto-0.5.0-u21.0.1.tgz#e3a4aacfd42ff2b5c806b7efabb612c24dbf69d0" + integrity sha512-rtp8yfqGIwcSorXQG9jVolQP/P1hcTe8Wd5cj0AeDv8VV0up/0Hi366LGWlNj/Jw5ktF7eP/a50SXc88fIfJzA== dependencies: "@endo/base64" "^1.0.9" "@endo/init" "^1.1.9" bech32 "^2.0.0" query-string "^9.1.1" -"@agoric/internal@^0.4.0-u21.0": - version "0.4.0-u21.0" - resolved "https://registry.yarnpkg.com/@agoric/internal/-/internal-0.4.0-u21.0.tgz#bfa84f2caa32e0d4e6fdad31fe7c60feb0bbac7d" - integrity sha512-mK+j2MmFSxTUZjLhezyWHATqOLl6w31Po6SFSk3bRCSYlkUF2bWie1018IqSw7imlKhVrK3WXDzkYzlsgte5bA== +"@agoric/ertp@0.16.3-u21.0.1": + version "0.16.3-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/ertp/-/ertp-0.16.3-u21.0.1.tgz#a05116cd75c88e54fc30ffa3239856ecaa4090ab" + integrity sha512-AcGVpPV577qM4YYkoz2EnzFpuc2BBPwbGXt4mGrU1b2oFMOHc6UOjoglGhgDyQF2xKNGjw24uKnrLoIo/2s5NA== dependencies: - "@agoric/base-zone" "workspace:*" + "@agoric/notifier" "0.7.0-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@agoric/vat-data" "0.5.3-u21.0.1" + "@agoric/zone" "0.3.0-u21.0.1" + "@endo/errors" "^1.2.10" + "@endo/eventual-send" "^1.3.1" + "@endo/far" "^1.1.11" + "@endo/marshal" "^1.6.4" + "@endo/nat" "^5.1.0" + "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + +"@agoric/governance@0.10.4-u21.0.1": + version "0.10.4-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/governance/-/governance-0.10.4-u21.0.1.tgz#07ca4a7e1426572474e9bf3cd1ba3937b64603de" + integrity sha512-5OyaTONA5WgweJfJryVkbmSAxqpvBLEaTQswM5YOrZZSKLP02chIYsS10sPy7ZU9gui+IrvDagw9TFoJUd8QzQ== + dependencies: + "@agoric/ertp" "0.16.3-u21.0.1" + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/notifier" "0.7.0-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@agoric/time" "0.3.3-u21.0.1" + "@agoric/vat-data" "0.5.3-u21.0.1" + "@agoric/zoe" "0.27.0-u21.0.1" + "@endo/bundle-source" "^4.0.0" + "@endo/captp" "^4.4.5" + "@endo/errors" "^1.2.10" + "@endo/eventual-send" "^1.3.1" + "@endo/far" "^1.1.11" + "@endo/marshal" "^1.6.4" + "@endo/nat" "^5.1.0" + "@endo/promise-kit" "^1.1.10" + import-meta-resolve "^4.1.0" + +"@agoric/internal@0.4.0-u21.0.1": + version "0.4.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/internal/-/internal-0.4.0-u21.0.1.tgz#70094adb93661fdea680bc761cde84e161062ca6" + integrity sha512-/VLPytsJe1MFpkTEXswY18VDGOrADxLCU5T+HGOFoAZWGqCRbCkZVxFIFEhqsufZsS8UbhZBXPPYainvSr7/aA== + dependencies: + "@agoric/base-zone" "0.1.1-u21.0.1" "@endo/common" "^1.2.10" "@endo/compartment-mapper" "^1.6.0" "@endo/errors" "^1.2.10" @@ -46,16 +148,296 @@ anylogger "^0.21.0" jessie.js "^0.3.4" -"@agoric/store@workspace:*": - version "0.9.3-upgrade-21-dev-43b4090.0" - resolved "https://registry.yarnpkg.com/@agoric/store/-/store-0.9.3-upgrade-21-dev-43b4090.0.tgz#41f1904f7bf0334f389f2e5095464c614adc4bf4" - integrity sha512-3xT384AzNMwZFUreo9dBp5DAr8LLOVygmDHT31djLojZ7i47uFz2keCABGriCm29RXbB2Uq7Wl1hwoEuPR9UGw== +"@agoric/internal@^0.4.0-u21.0": + version "0.4.0-u22.1" + resolved "https://registry.yarnpkg.com/@agoric/internal/-/internal-0.4.0-u22.1.tgz#c2190a90c2c3edc20107fc33e72bfb0d4f381acb" + integrity sha512-elplOavC8AwyxBuF4x6SiGlq+ykcGqHQdszaZH6+gNmM2mlg3Yc9rQ+fI+P6wC+/8qsjQcaDzmVQwFio5dcvsw== + dependencies: + "@agoric/base-zone" "0.2.0-u22.1" + "@endo/common" "^1.2.13" + "@endo/compartment-mapper" "^1.6.3" + "@endo/errors" "^1.2.13" + "@endo/eventual-send" "^1.3.4" + "@endo/far" "^1.1.14" + "@endo/init" "^1.1.12" + "@endo/marshal" "^1.8.0" + "@endo/nat" "^5.1.3" + "@endo/pass-style" "^1.6.3" + "@endo/patterns" "^1.7.0" + "@endo/promise-kit" "^1.1.13" + "@endo/stream" "^1.2.13" + anylogger "^0.21.0" + jessie.js "^0.3.4" + +"@agoric/kmarshal@0.1.1-u21.0.1": + version "0.1.1-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/kmarshal/-/kmarshal-0.1.1-u21.0.1.tgz#ea911b989eacf38d4c77863119a0c9e60f926255" + integrity sha512-UilYotHG5pQPtcfSrG+LdUV6p/IlAsb653a83URlY/1GHt1klm5JEpBqcMjuteRPa4BDohqHyBMEjJhuOyR2Rw== dependencies: "@endo/errors" "^1.2.10" + "@endo/far" "^1.1.11" + "@endo/marshal" "^1.6.4" + +"@agoric/network@0.2.0-u21.0.1": + version "0.2.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/network/-/network-0.2.0-u21.0.1.tgz#8cf5da2870b5a1c2532c7cdc53aab3794139f1c4" + integrity sha512-Mb2l7Njbdf1mfqqaf4GSTqOUqvVGz2t3+lUVtWMr+EFP0z5V5NjXufi2GYHyrkJ0qg6+Mn0audzWo8uwNcJClA== + dependencies: + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@agoric/vat-data" "0.5.3-u21.0.1" + "@endo/base64" "^1.0.9" + "@endo/errors" "^1.2.10" + "@endo/far" "^1.1.11" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + +"@agoric/notifier@0.7.0-u21.0.1": + version "0.7.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/notifier/-/notifier-0.7.0-u21.0.1.tgz#f37389bf45f84c3aaed593593c0d54a8e100272c" + integrity sha512-/Mku2DlnfcWGlBztnmSD5O7GeKlfryiWFsVtC/umJSD4Ajv0mM9brjLQ4Do9C3KtQ0r/F5gzv7rOUkpDDYfsQA== + dependencies: + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/vat-data" "0.5.3-u21.0.1" + "@endo/errors" "^1.2.10" + "@endo/far" "^1.1.11" + "@endo/marshal" "^1.6.4" + "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + +"@agoric/smart-wallet@0.5.4-u21.0.1": + version "0.5.4-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/smart-wallet/-/smart-wallet-0.5.4-u21.0.1.tgz#8a8439080027fab053fb3d8f084d93a1081940ec" + integrity sha512-7ToXOWWp0o1Ur3SCIJHMXJ/25FeeTJMuaBBIGZJjNHFIUyiopaPXnGO0GNuWSiYGO8JFQFV7yp31vOi+SdFdTQ== + dependencies: + "@agoric/ertp" "0.16.3-u21.0.1" + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/notifier" "0.7.0-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@agoric/vat-data" "0.5.3-u21.0.1" + "@agoric/vats" "0.16.0-u21.0.1" + "@agoric/vow" "0.2.0-u21.0.1" + "@agoric/zoe" "0.27.0-u21.0.1" + "@agoric/zone" "0.3.0-u21.0.1" + "@endo/errors" "^1.2.10" + "@endo/eventual-send" "^1.3.1" + "@endo/far" "^1.1.11" + "@endo/marshal" "^1.6.4" + "@endo/nat" "^5.1.0" + "@endo/promise-kit" "^1.1.10" + +"@agoric/store@0.10.0-u22.1": + version "0.10.0-u22.1" + resolved "https://registry.yarnpkg.com/@agoric/store/-/store-0.10.0-u22.1.tgz#3076db4913de25ebf7884a127b9a20f30eb125ba" + integrity sha512-Ff2/AvwYEnx2VTavZlN+OgmcOSXtsHgrS+UjxfU+hTpblrgGlnjHl9MFRKbOx5j23yZ5QXJ7rFuZfpPm85hwZg== + dependencies: + "@endo/errors" "^1.2.13" + "@endo/exo" "^1.5.12" + "@endo/marshal" "^1.8.0" + "@endo/pass-style" "^1.6.3" + "@endo/patterns" "^1.7.0" + +"@agoric/store@0.9.3-u21.0.1": + version "0.9.3-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/store/-/store-0.9.3-u21.0.1.tgz#e5e608da0cd319e8489a0e596bc362a54a688261" + integrity sha512-fTSEOmESC2vsjAIcZD4oxuBBkXJa+lReaoJqwzWi4EC8ga7vbJQYigCJXV1DR2MG4lRu+vf5fRtctupj0IjEOg== + dependencies: + "@endo/errors" "^1.2.10" + "@endo/exo" "^1.5.9" + "@endo/marshal" "^1.6.4" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + +"@agoric/swing-store@0.10.0-u21.0.1": + version "0.10.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/swing-store/-/swing-store-0.10.0-u21.0.1.tgz#ceb95a8ba62946550f18c42a51e493c7be219bea" + integrity sha512-PpwpFA4AOeTgUbY2LcW0d4hwK1dEpQJSTaGt8rpes0T10FraNz9gAYGUliIAp9Sp8lLbb1eCNV0wx0oavRFO0g== + dependencies: + "@agoric/internal" "0.4.0-u21.0.1" + "@endo/base64" "^1.0.9" + "@endo/bundle-source" "^4.0.0" + "@endo/check-bundle" "^1.0.14" + "@endo/errors" "^1.2.10" + "@endo/nat" "^5.1.0" + better-sqlite3 "^10.1.0" + +"@agoric/swingset-liveslots@0.10.3-u21.0.1": + version "0.10.3-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/swingset-liveslots/-/swingset-liveslots-0.10.3-u21.0.1.tgz#6550a88f835a4ae77842a4b0b48f1d0ad0cd76a7" + integrity sha512-+Ze9XNHH6EsrlFd6KN1F3SMpwjwTkcynFfClXjEKU+xCo0iuV2C+k/E+PBFxgB3K2F+HHFt4pBXiS3KZsRboGw== + dependencies: + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@endo/env-options" "^1.1.8" + "@endo/errors" "^1.2.10" + "@endo/eventual-send" "^1.3.1" "@endo/exo" "^1.5.9" + "@endo/far" "^1.1.11" + "@endo/init" "^1.1.9" "@endo/marshal" "^1.6.4" + "@endo/nat" "^5.1.0" "@endo/pass-style" "^1.5.0" "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + +"@agoric/swingset-vat@0.33.0-u21.0.1": + version "0.33.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/swingset-vat/-/swingset-vat-0.33.0-u21.0.1.tgz#c493291b4edd36efdfb3eb1e7f15be54562eee21" + integrity sha512-aeeJi0S2/M1hWo8SusxUjeLOsPgRhZZdEzvAAXlGhyWOYq7rFXYqoN0nwVUErcLR6e8YVhDNrYRS/zc2MeARcA== + dependencies: + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/kmarshal" "0.1.1-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@agoric/swing-store" "0.10.0-u21.0.1" + "@agoric/swingset-liveslots" "0.10.3-u21.0.1" + "@agoric/swingset-xsnap-supervisor" "0.10.3-u21.0.1" + "@agoric/time" "0.3.3-u21.0.1" + "@agoric/vat-data" "0.5.3-u21.0.1" + "@agoric/xsnap-lockdown" "0.14.1-u21.0.1" + "@endo/base64" "^1.0.9" + "@endo/bundle-source" "^4.0.0" + "@endo/captp" "^4.4.5" + "@endo/check-bundle" "^1.0.14" + "@endo/compartment-mapper" "^1.6.0" + "@endo/errors" "^1.2.10" + "@endo/eventual-send" "^1.3.1" + "@endo/far" "^1.1.11" + "@endo/import-bundle" "^1.4.0" + "@endo/init" "^1.1.9" + "@endo/marshal" "^1.6.4" + "@endo/nat" "^5.1.0" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + "@endo/ses-ava" "^1.2.10" + "@endo/stream" "^1.2.10" + "@endo/zip" "^1.0.9" + ansi-styles "^6.2.1" + anylogger "^0.21.0" + better-sqlite3 "^10.1.0" + import-meta-resolve "^4.1.0" + microtime "^3.1.0" + semver "^6.3.0" + tmp "^0.2.1" + yargs-parser "^21.1.1" + +"@agoric/swingset-xsnap-supervisor@0.10.3-u21.0.1": + version "0.10.3-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/swingset-xsnap-supervisor/-/swingset-xsnap-supervisor-0.10.3-u21.0.1.tgz#8ca151fb5386dccf73524956a8797c60292c07b1" + integrity sha512-SGyntXQhsfOkrdmNLMllg054moKIKui08h4dRXFQ4MlcZZJrqMJUIiHbS6+sXfMbq2sdgp5ANsOJziIQgCBRrA== + +"@agoric/time@0.3.3-u21.0.1": + version "0.3.3-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/time/-/time-0.3.3-u21.0.1.tgz#4e47ece42fe0ffa9e40d82869bf364d7ac36f5d8" + integrity sha512-yHJmAwcH6neAbwUWAO+WCNZ057UUwmVITJfUzUXBYqylZ2AkTPiAwXWXt/8UsSgIUPLZD+25hOmvkk+F+QLq4Q== + dependencies: + "@agoric/store" "0.9.3-u21.0.1" + "@endo/errors" "^1.2.10" + "@endo/nat" "^5.1.0" + "@endo/patterns" "^1.5.0" + +"@agoric/vat-data@0.5.3-u21.0.1": + version "0.5.3-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/vat-data/-/vat-data-0.5.3-u21.0.1.tgz#26fcbb21fa7af037a6fafd0add8aed39b9bd084b" + integrity sha512-QtUuq/2ddBAbcqUMXQeyO9q9fwL/ZAWve/+rpL7mWSNYNQ5NkVujAYonLfUT4gxm78p8W7II0BbD87ZzV454Xw== + dependencies: + "@agoric/base-zone" "0.1.1-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@agoric/swingset-liveslots" "0.10.3-u21.0.1" + "@endo/errors" "^1.2.10" + "@endo/exo" "^1.5.9" + "@endo/patterns" "^1.5.0" + +"@agoric/vats@0.16.0-u21.0.1": + version "0.16.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/vats/-/vats-0.16.0-u21.0.1.tgz#0033169d64b5c75baab4812c2ffedc9266a36d03" + integrity sha512-UxZnKD4RDMRZcgCBT6Iks5My98j1HNLT93LsegvK6cYpaGg4lwdL3CPHKa/g9KlDrSOiF8rg4cBuNmyRc/1j6g== + dependencies: + "@agoric/cosmic-proto" "0.5.0-u21.0.1" + "@agoric/ertp" "0.16.3-u21.0.1" + "@agoric/governance" "0.10.4-u21.0.1" + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/network" "0.2.0-u21.0.1" + "@agoric/notifier" "0.7.0-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@agoric/swingset-vat" "0.33.0-u21.0.1" + "@agoric/time" "0.3.3-u21.0.1" + "@agoric/vat-data" "0.5.3-u21.0.1" + "@agoric/vow" "0.2.0-u21.0.1" + "@agoric/zoe" "0.27.0-u21.0.1" + "@agoric/zone" "0.3.0-u21.0.1" + "@endo/errors" "^1.2.10" + "@endo/far" "^1.1.11" + "@endo/import-bundle" "^1.4.0" + "@endo/marshal" "^1.6.4" + "@endo/nat" "^5.1.0" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + import-meta-resolve "^4.1.0" + jessie.js "^0.3.4" + +"@agoric/vow@0.2.0-u21.0.1": + version "0.2.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/vow/-/vow-0.2.0-u21.0.1.tgz#b9c4e37c395dd2856e7815efdf29a66d839dbb01" + integrity sha512-hhjpxSvBeVzfMVC3hquxlrThgidlGbfUKJc5GVMf3BmnuqP/4azacjla6jwioxH8kWcaFA9VskaEHyNlkBV/VQ== + dependencies: + "@agoric/base-zone" "0.1.1-u21.0.1" + "@agoric/internal" "0.4.0-u21.0.1" + "@endo/env-options" "^1.1.8" + "@endo/errors" "^1.2.10" + "@endo/eventual-send" "^1.3.1" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + +"@agoric/xsnap-lockdown@0.14.1-u21.0.1": + version "0.14.1-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/xsnap-lockdown/-/xsnap-lockdown-0.14.1-u21.0.1.tgz#f587b7b88c82458a6d53f6a815b4906fc2f54775" + integrity sha512-1m7pijsDCctxB0Wjuyc3Dl7mjnbizJLUGjIfU5L4jucmHhPEswbYaqbRKRl05mePni0fhfE67nt4IOTn1qeedQ== + +"@agoric/zoe@0.27.0-u21.0.1": + version "0.27.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/zoe/-/zoe-0.27.0-u21.0.1.tgz#4f2d1e2652feab6e69220c2b5835ea9882bee291" + integrity sha512-oiLaepECONLbhdjqoSn9/36bJFCIdOBjWmk7KUBr42BK7Mbpahi4vSRTkaCVlGPmbnXJYNPsP2+EIGmWioMUkg== + dependencies: + "@agoric/base-zone" "0.1.1-u21.0.1" + "@agoric/ertp" "0.16.3-u21.0.1" + "@agoric/internal" "0.4.0-u21.0.1" + "@agoric/notifier" "0.7.0-u21.0.1" + "@agoric/store" "0.9.3-u21.0.1" + "@agoric/swingset-liveslots" "0.10.3-u21.0.1" + "@agoric/swingset-vat" "0.33.0-u21.0.1" + "@agoric/time" "0.3.3-u21.0.1" + "@agoric/vat-data" "0.5.3-u21.0.1" + "@agoric/vow" "0.2.0-u21.0.1" + "@agoric/zone" "0.3.0-u21.0.1" + "@endo/bundle-source" "^4.0.0" + "@endo/captp" "^4.4.5" + "@endo/common" "^1.2.10" + "@endo/errors" "^1.2.10" + "@endo/eventual-send" "^1.3.1" + "@endo/exo" "^1.5.9" + "@endo/far" "^1.1.11" + "@endo/import-bundle" "^1.4.0" + "@endo/marshal" "^1.6.4" + "@endo/nat" "^5.1.0" + "@endo/pass-style" "^1.5.0" + "@endo/patterns" "^1.5.0" + "@endo/promise-kit" "^1.1.10" + yargs-parser "^21.1.1" + +"@agoric/zone@0.3.0-u21.0.1": + version "0.3.0-u21.0.1" + resolved "https://registry.yarnpkg.com/@agoric/zone/-/zone-0.3.0-u21.0.1.tgz#7df36cf051d22b4fa4285f8598ecd8fa1e076a49" + integrity sha512-FhLGzmTWFHOwPiVjyiF9ixU6uYWcWLifB9vGPTWJVFOmzKddR+kw+N/n4aFP7hrsAViXpnteOPGMi5uIuob2MA== + dependencies: + "@agoric/base-zone" "0.1.1-u21.0.1" + "@agoric/vat-data" "0.5.3-u21.0.1" + "@endo/errors" "^1.2.10" + "@endo/far" "^1.1.11" + "@endo/pass-style" "^1.5.0" "@babel/code-frame@^7.25.9", "@babel/code-frame@^7.27.1": version "7.27.1" @@ -67,12 +449,12 @@ picocolors "^1.1.1" "@babel/generator@^7.25.9", "@babel/generator@^7.26.3": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.28.0.tgz#9cc2f7bd6eb054d77dc66c2664148a0c5118acd2" - integrity sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg== + version "7.28.3" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.28.3.tgz#9626c1741c650cbac39121694a0f2d7451b8ef3e" + integrity sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw== dependencies: - "@babel/parser" "^7.28.0" - "@babel/types" "^7.28.0" + "@babel/parser" "^7.28.3" + "@babel/types" "^7.28.2" "@jridgewell/gen-mapping" "^0.3.12" "@jridgewell/trace-mapping" "^0.3.28" jsesc "^3.0.2" @@ -87,12 +469,12 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8" integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== -"@babel/parser@^7.25.9", "@babel/parser@^7.27.2", "@babel/parser@^7.28.0": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.28.0.tgz#979829fbab51a29e13901e5a80713dbcb840825e" - integrity sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g== +"@babel/parser@^7.25.9", "@babel/parser@^7.27.2", "@babel/parser@^7.28.3": + version "7.28.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.28.4.tgz#da25d4643532890932cc03f7705fe19637e03fa8" + integrity sha512-yZbBqeM6TkpP9du/I2pUZnJsRMGGvOuIrhjzC1AwHwW+6he4mni6Bp/m8ijn0iOuZuPI2BfkCoSRunpyjnrQKg== dependencies: - "@babel/types" "^7.28.0" + "@babel/types" "^7.28.4" "@babel/parser@~7.26.2": version "7.26.10" @@ -123,10 +505,10 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.25.9", "@babel/types@^7.26.10", "@babel/types@^7.27.1", "@babel/types@^7.28.0": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.28.0.tgz#2fd0159a6dc7353933920c43136335a9b264d950" - integrity sha512-jYnje+JyZG5YThjHiF28oT4SIZLnYOcSBb6+SDaFIyzDVSkXQmQQYclJ2R+YxcdmK0AX6x1E5OQNtuh3jHDrUg== +"@babel/types@^7.25.9", "@babel/types@^7.26.10", "@babel/types@^7.27.1", "@babel/types@^7.28.2", "@babel/types@^7.28.4": + version "7.28.4" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.28.4.tgz#0a4e618f4c60a7cd6c11cb2d48060e4dbe38ac3a" + integrity sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q== dependencies: "@babel/helper-string-parser" "^7.27.1" "@babel/helper-validator-identifier" "^7.27.1" @@ -139,186 +521,517 @@ "@babel/helper-string-parser" "^7.25.9" "@babel/helper-validator-identifier" "^7.25.9" -"@endo/base64@^1.0.11", "@endo/base64@^1.0.9": - version "1.0.11" - resolved "https://registry.yarnpkg.com/@endo/base64/-/base64-1.0.11.tgz#b41cb7ba5302cf85f7b01fbfb4f6a9a5859b272b" - integrity sha512-zPjRfpmy/KjWy7eyR9yCd7Gc3DwmnWtVjOB7cxOudBit/uHaUBrj9xM3W7bzcC7+M5CNVh86r0Whr1FJ2ftHyg== +"@cosmjs/amino@0.33.1", "@cosmjs/amino@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/amino/-/amino-0.33.1.tgz#0d4957b2e755af8392627c0c0f72bee129dcdcf3" + integrity sha512-WfWiBf2EbIWpwKG9AOcsIIkR717SY+JdlXM/SL/bI66BdrhniAF+/ZNis9Vo9HF6lP2UU5XrSmFA4snAvEgdrg== + dependencies: + "@cosmjs/crypto" "^0.33.1" + "@cosmjs/encoding" "^0.33.1" + "@cosmjs/math" "^0.33.1" + "@cosmjs/utils" "^0.33.1" + +"@cosmjs/cosmwasm-stargate@0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/cosmwasm-stargate/-/cosmwasm-stargate-0.33.1.tgz#90820d2a409fe6c2a473724be5d5bc654f9dc861" + integrity sha512-bsEH8FmDHE0zc9WmJuyYEruV/HP7DU98FLP/BMxb1Egk/weH304m1AuIdibdVfFZKYVNq6PkD8+Xvg23qnecIg== + dependencies: + "@cosmjs/amino" "^0.33.1" + "@cosmjs/crypto" "^0.33.1" + "@cosmjs/encoding" "^0.33.1" + "@cosmjs/math" "^0.33.1" + "@cosmjs/proto-signing" "^0.33.1" + "@cosmjs/stargate" "^0.33.1" + "@cosmjs/tendermint-rpc" "^0.33.1" + "@cosmjs/utils" "^0.33.1" + cosmjs-types "^0.9.0" + pako "^2.0.2" + +"@cosmjs/crypto@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/crypto/-/crypto-0.33.1.tgz#761b1623e4abe8af4cbf7ca92639561314f04c3b" + integrity sha512-U4kGIj/SNBzlb2FGgA0sMR0MapVgJUg8N+oIAiN5+vl4GZ3aefmoL1RDyTrFS/7HrB+M+MtHsxC0tvEu4ic/zA== + dependencies: + "@cosmjs/encoding" "^0.33.1" + "@cosmjs/math" "^0.33.1" + "@cosmjs/utils" "^0.33.1" + "@noble/hashes" "^1" + bn.js "^5.2.0" + elliptic "^6.6.1" + libsodium-wrappers-sumo "^0.7.11" + +"@cosmjs/encoding@0.33.1", "@cosmjs/encoding@^0.33.0", "@cosmjs/encoding@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/encoding/-/encoding-0.33.1.tgz#77d6a8e0152c658ecf07b5aee3f5968d9071da50" + integrity sha512-nuNxf29fUcQE14+1p//VVQDwd1iau5lhaW/7uMz7V2AH3GJbFJoJVaKvVyZvdFk+Cnu+s3wCqgq4gJkhRCJfKw== + dependencies: + base64-js "^1.3.0" + bech32 "^1.1.4" + readonly-date "^1.0.0" + +"@cosmjs/json-rpc@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/json-rpc/-/json-rpc-0.33.1.tgz#a5b8459605750fa7d38c05aa6009a92010c0d042" + integrity sha512-T6VtWzecpmuTuMRGZWuBYHsMF/aznWCYUt/cGMWNSz7DBPipVd0w774PKpxXzpEbyt5sr61NiuLXc+Az15S/Cw== + dependencies: + "@cosmjs/stream" "^0.33.1" + xstream "^11.14.0" + +"@cosmjs/math@0.33.1", "@cosmjs/math@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/math/-/math-0.33.1.tgz#04ae4cfdb05f04f1b13e908f9551ca85b13ba4d4" + integrity sha512-ytGkWdKFCPiiBU5eqjHNd59djPpIsOjbr2CkNjlnI1Zmdj+HDkSoD9MUGpz9/RJvRir5IvsXqdE05x8EtoQkJA== + dependencies: + bn.js "^5.2.0" + +"@cosmjs/proto-signing@0.33.1", "@cosmjs/proto-signing@^0.33.0", "@cosmjs/proto-signing@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/proto-signing/-/proto-signing-0.33.1.tgz#b084eb86410486cff30da7de34a636421db90ca8" + integrity sha512-Sv4W+MxX+0LVnd+2rU4Fw1HRsmMwSVSYULj7pRkij3wnPwUlTVoJjmKFgKz13ooIlfzPrz/dnNjGp/xnmXChFQ== + dependencies: + "@cosmjs/amino" "^0.33.1" + "@cosmjs/crypto" "^0.33.1" + "@cosmjs/encoding" "^0.33.1" + "@cosmjs/math" "^0.33.1" + "@cosmjs/utils" "^0.33.1" + cosmjs-types "^0.9.0" + +"@cosmjs/socket@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/socket/-/socket-0.33.1.tgz#2402487e7c70c8a5c801bd3189a58a09da786513" + integrity sha512-KzAeorten6Vn20sMiM6NNWfgc7jbyVo4Zmxev1FXa5EaoLCZy48cmT3hJxUJQvJP/lAy8wPGEjZ/u4rmF11x9A== + dependencies: + "@cosmjs/stream" "^0.33.1" + isomorphic-ws "^4.0.1" + ws "^7" + xstream "^11.14.0" + +"@cosmjs/stargate@0.33.1", "@cosmjs/stargate@^0.33.0", "@cosmjs/stargate@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/stargate/-/stargate-0.33.1.tgz#13972f710942ac728474051be4f9754814ccfb52" + integrity sha512-CnJ1zpSiaZgkvhk+9aTp5IPmgWn2uo+cNEBN8VuD9sD6BA0V4DMjqe251cNFLiMhkGtiE5I/WXFERbLPww3k8g== + dependencies: + "@cosmjs/amino" "^0.33.1" + "@cosmjs/encoding" "^0.33.1" + "@cosmjs/math" "^0.33.1" + "@cosmjs/proto-signing" "^0.33.1" + "@cosmjs/stream" "^0.33.1" + "@cosmjs/tendermint-rpc" "^0.33.1" + "@cosmjs/utils" "^0.33.1" + cosmjs-types "^0.9.0" + +"@cosmjs/stream@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/stream/-/stream-0.33.1.tgz#2e928eb68c52253e64ab56a3047cd8039b66abde" + integrity sha512-bMUvEENjeQPSTx+YRzVsWT1uFIdHRcf4brsc14SOoRQ/j5rOJM/aHfsf/BmdSAnYbdOQ3CMKj/8nGAQ7xUdn7w== + dependencies: + xstream "^11.14.0" + +"@cosmjs/tendermint-rpc@0.33.1", "@cosmjs/tendermint-rpc@^0.33.0", "@cosmjs/tendermint-rpc@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/tendermint-rpc/-/tendermint-rpc-0.33.1.tgz#5ab5b0b63e585badaa5827aef7e9e3d18695630a" + integrity sha512-22klDFq2MWnf//C8+rZ5/dYatr6jeGT+BmVbutXYfAK9fmODbtFcumyvB6uWaEORWfNukl8YK1OLuaWezoQvxA== + dependencies: + "@cosmjs/crypto" "^0.33.1" + "@cosmjs/encoding" "^0.33.1" + "@cosmjs/json-rpc" "^0.33.1" + "@cosmjs/math" "^0.33.1" + "@cosmjs/socket" "^0.33.1" + "@cosmjs/stream" "^0.33.1" + "@cosmjs/utils" "^0.33.1" + axios "^1.6.0" + readonly-date "^1.0.0" + xstream "^11.14.0" + +"@cosmjs/utils@^0.33.1": + version "0.33.1" + resolved "https://registry.yarnpkg.com/@cosmjs/utils/-/utils-0.33.1.tgz#8882cd26172cb5b0b692c179407d6c3904493fed" + integrity sha512-UnLHDY6KMmC+UXf3Ufyh+onE19xzEXjT4VZ504Acmk4PXxqyvG4cCPprlKUFnGUX7f0z8Or9MAOHXBx41uHBcg== + +"@endo/base64@^1.0.11", "@endo/base64@^1.0.12", "@endo/base64@^1.0.9": + version "1.0.12" + resolved "https://registry.yarnpkg.com/@endo/base64/-/base64-1.0.12.tgz#7eee6bf9e957a61a9109964233f506833cceb046" + integrity sha512-opxoUVA4GuibR5S3CVFo8iyrYrXjN0XWJQSr9EKj4A8viQAcRm/7IQtyoF26F9PFgY3r11ihBswBMZUySnfXkg== + +"@endo/bundle-source@^4.0.0": + version "4.1.2" + resolved "https://registry.yarnpkg.com/@endo/bundle-source/-/bundle-source-4.1.2.tgz#dd415c6852c5a0f1ad31223ea9d8c7042b7fafaf" + integrity sha512-FV3up3yXgljQzSbDYGbhlvGoLhRKCxC6kaX3yV2DJRyF3Q7TBagXOKjjI2g0lPYQU5jzgzV2RAgCbulXgsUH+A== + dependencies: + "@endo/base64" "^1.0.12" + "@endo/compartment-mapper" "^1.6.3" + "@endo/evasive-transform" "^2.0.2" + "@endo/init" "^1.1.12" + "@endo/promise-kit" "^1.1.13" + "@endo/where" "^1.0.11" + ts-blank-space "^0.4.1" + +"@endo/cache-map@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@endo/cache-map/-/cache-map-1.1.0.tgz#e24124e35ba5081c9c899d7fd6ffb7d765c37d55" + integrity sha512-owFGshs/97PDw9oguZqU/px8Lv1d0KjAUtDUiPwKHNXRVUE/jyettEbRoTbNJR1OaI8biMn6bHr9kVJsOh6dXw== + +"@endo/captp@^4.4.5": + version "4.4.8" + resolved "https://registry.yarnpkg.com/@endo/captp/-/captp-4.4.8.tgz#2617fd101ea0f2b300244e54d114991c73c85d20" + integrity sha512-UVVKewfMTqBaA8SThty08xSQx/so5QEeNnfJR9Urmx87gkBOLNmvSQgTr/ctAO7aewfzyiWaCU/F6vopd9wyQQ== + dependencies: + "@endo/errors" "^1.2.13" + "@endo/eventual-send" "^1.3.4" + "@endo/marshal" "^1.8.0" + "@endo/nat" "^5.1.3" + "@endo/pass-style" "^1.6.3" + "@endo/promise-kit" "^1.1.13" + +"@endo/check-bundle@^1.0.14": + version "1.0.17" + resolved "https://registry.yarnpkg.com/@endo/check-bundle/-/check-bundle-1.0.17.tgz#cb34b437cf6977c9406bc9e186e2e4a69d69fceb" + integrity sha512-DwBl5A61p2JXV76sM8BMM4FbZtaNW0SBo5UeqQNI4q3FwzNIwoKilEPNjVCWi+B/SUd608olwHE2Z/5wnzebew== + dependencies: + "@endo/base64" "^1.0.12" + "@endo/compartment-mapper" "^1.6.3" + "@endo/errors" "^1.2.13" "@endo/cjs-module-analyzer@^1.0.11": version "1.0.11" resolved "https://registry.yarnpkg.com/@endo/cjs-module-analyzer/-/cjs-module-analyzer-1.0.11.tgz#037140b83ee62ab5b64a82def030e266352ddffc" integrity sha512-zS+SjeUN4y7Ry7l0DSME05gUekLrfIZnhZ66q+1674BkQc4dk1eub2ZLgPDGoXOrBLtcadc7yxHwazilmMoQLQ== -"@endo/common@^1.2.10", "@endo/common@^1.2.12": - version "1.2.12" - resolved "https://registry.yarnpkg.com/@endo/common/-/common-1.2.12.tgz#9a49feef8d558511bbd4aeefcebf9f1179661f14" - integrity sha512-w6rpzJtAAcLnwmh65eISXTsglvw42N+g1VMXs5UR+cllyqx5pnzvTaqHaxCt53LwDkYsGOMIvbQ4C++KSnawrg== +"@endo/common@^1.2.10", "@endo/common@^1.2.13": + version "1.2.13" + resolved "https://registry.yarnpkg.com/@endo/common/-/common-1.2.13.tgz#e3f43a620f512e63ba4982078ce9341a8335a25b" + integrity sha512-DUO8u5U4+7GaOpnQHWR3dNRsWFF4WsllI3kB7bzOzhj6lqBYOBGavTDjI69N/9vJQ5X2DJ0f2OEYtf6jQCjYwg== dependencies: - "@endo/errors" "^1.2.12" - "@endo/eventual-send" "^1.3.3" - "@endo/promise-kit" "^1.1.12" - -"@endo/compartment-mapper@^1.6.0": - version "1.6.2" - resolved "https://registry.yarnpkg.com/@endo/compartment-mapper/-/compartment-mapper-1.6.2.tgz#6bfe69e64c084acab2d8def2f498b044c986e250" - integrity sha512-rckYVNdPmMA7+cmLSOslAs8VnL1K6IV/Z+N/Jl8YlcpqxjiL4et4yqI6NzfVSCXN0x0DFq+NfbqgmCzHWkqFsw== + "@endo/errors" "^1.2.13" + "@endo/eventual-send" "^1.3.4" + "@endo/promise-kit" "^1.1.13" + +"@endo/compartment-mapper@^1.6.0", "@endo/compartment-mapper@^1.6.3": + version "1.6.3" + resolved "https://registry.yarnpkg.com/@endo/compartment-mapper/-/compartment-mapper-1.6.3.tgz#98db1a8ac77c6fb236a3b514b28077593acd0b18" + integrity sha512-jo8g684OMXXsBne8exczjwcN2FK+IHDq/SL/B+y2QPk+fdRtqBH9tTaD1KV7yCJ4mJSbNGaUllkw/qtbeo9y1Q== dependencies: "@endo/cjs-module-analyzer" "^1.0.11" - "@endo/module-source" "^1.3.2" + "@endo/module-source" "^1.3.3" "@endo/path-compare" "^1.1.0" "@endo/trampoline" "^1.0.5" "@endo/zip" "^1.0.11" - ses "^1.13.1" + ses "^1.14.0" -"@endo/env-options@^1.1.10": - version "1.1.10" - resolved "https://registry.yarnpkg.com/@endo/env-options/-/env-options-1.1.10.tgz#77e08f28d639c37b01908e329d5462cae5595732" - integrity sha512-dnb9nAY+g8w7Rcfl+C1m1PMy88O/HnFNYb+d7eSepB+bxilFtiRcaUDHk6Rn/fJZKa0K0JEhgUqv7p/H4x81Kw== +"@endo/env-options@^1.1.11", "@endo/env-options@^1.1.8": + version "1.1.11" + resolved "https://registry.yarnpkg.com/@endo/env-options/-/env-options-1.1.11.tgz#5e69b97d485b38913eaa205827fb1c4790c7b4fe" + integrity sha512-p9OnAPsdqoX4YJsE98e3NBVhIr2iW9gNZxHhAI2/Ul5TdRfoOViItzHzTqrgUVopw6XxA1u1uS6CykLMDUxarA== -"@endo/errors@^1.2.10", "@endo/errors@^1.2.12": - version "1.2.12" - resolved "https://registry.yarnpkg.com/@endo/errors/-/errors-1.2.12.tgz#019592412a8cd029f80008da8652963ade08547c" - integrity sha512-sgkV6NY61TmS0oSpgXeDStTixPBqE4w3lj0bJfqlu+LtVLoWlKQULOk4I3FV2LolNrUvQdPdQx2kcw5xTPGOFw== +"@endo/errors@^1.2.10", "@endo/errors@^1.2.13": + version "1.2.13" + resolved "https://registry.yarnpkg.com/@endo/errors/-/errors-1.2.13.tgz#57508f6d5a2e8f18ac256eb74d954dc3ef3a9265" + integrity sha512-cRRfsVTWfAnw/B2tT+OgN6oZ8JVZM06QVPyKD6Oo12qJX39oonJfyuf3SKFo7Ii4lh5mt5v+5iHqzsQ4xHjvIQ== dependencies: - ses "^1.13.1" + ses "^1.14.0" -"@endo/eventual-send@^1.3.1", "@endo/eventual-send@^1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@endo/eventual-send/-/eventual-send-1.3.3.tgz#3a67956b23e70ccd4dc3105eb5840a9240200186" - integrity sha512-LjYUd4/hA4RjXYMigroieW51ahju7VsgBa8KiyQnSMAz1rot99a3cav+DklhSS+tMyM31zwZ3bNd3yfQEgpxtA== +"@endo/evasive-transform@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@endo/evasive-transform/-/evasive-transform-2.0.2.tgz#b24cd16ae43e7dfc9dda9af28649a4ad7f665caa" + integrity sha512-fl1qymFYjD7pAx24FKgemp7nC9SwMZZxetG8D/Q8fwWUjb2vbCcDi+g0sexPIuAzf8ysKY5zYxVosH/QSroCKg== dependencies: - "@endo/env-options" "^1.1.10" + "@babel/generator" "^7.26.3" + "@babel/parser" "~7.26.2" + "@babel/traverse" "~7.25.9" -"@endo/exo@^1.5.9": - version "1.5.11" - resolved "https://registry.yarnpkg.com/@endo/exo/-/exo-1.5.11.tgz#374eecc170d7184c3e3df59a383b3c9b07d3f28e" - integrity sha512-p7BkV2mqtT0Q3zgG1xotem7W0fir7loKwc8YpWoGfVt3PbZ2PT6EtQwN33d8FvPrR46zWkLqQ5Az5LEjK0oLUQ== +"@endo/eventual-send@^1.3.1", "@endo/eventual-send@^1.3.4": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@endo/eventual-send/-/eventual-send-1.3.4.tgz#be304521b79ac9a1943de8d33bcd9031f904192d" + integrity sha512-Pn3ArDN2ar1rJ6VYmtMJFYtihSJCUymKYWq17kvKqS+PlFvoP69M3UYP2ly5Dz+nOnW14Kvdhkui6/hcwB0n0w== dependencies: - "@endo/common" "^1.2.12" - "@endo/env-options" "^1.1.10" - "@endo/errors" "^1.2.12" - "@endo/eventual-send" "^1.3.3" - "@endo/far" "^1.1.13" - "@endo/pass-style" "^1.6.2" - "@endo/patterns" "^1.6.1" + "@endo/env-options" "^1.1.11" -"@endo/far@^1.0.0", "@endo/far@^1.1.11", "@endo/far@^1.1.13": - version "1.1.13" - resolved "https://registry.yarnpkg.com/@endo/far/-/far-1.1.13.tgz#437ed67d998c7ccd685c8eee6c40f22f0d6ad7f1" - integrity sha512-fKtWPK9r2LcppB86HlIZaF/7Fy+UJSYz4yGbnShNuYMfcGUItToQf1j8M2ypn/xaLl1ckLcotRGBP3PIaCyhYA== +"@endo/exo@^1.5.12", "@endo/exo@^1.5.9": + version "1.5.12" + resolved "https://registry.yarnpkg.com/@endo/exo/-/exo-1.5.12.tgz#ca54efb8951b974dfa609e56ce45c42202e41150" + integrity sha512-UhFoYIQ9mJIc4xE1SQPRCNvZ+kIpVuWUSt8SpjvXCpiuYd/M9fpT3o1SClfu/yvj6v6cUtFmcvqk7HYREtFPjQ== dependencies: - "@endo/errors" "^1.2.12" - "@endo/eventual-send" "^1.3.3" - "@endo/pass-style" "^1.6.2" - -"@endo/immutable-arraybuffer@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@endo/immutable-arraybuffer/-/immutable-arraybuffer-1.1.1.tgz#ba81f43b80ab2c87aaab19eccc6e794977187b9f" - integrity sha512-v57HL0airAsQi278qAxf7UM788EE1U/8D1JoALtWsDjz+bZ2C84NKy9uwVi7G1YmzesbQMB2nrvWRXavL6LftA== - -"@endo/init@^1.1.9": - version "1.1.11" - resolved "https://registry.yarnpkg.com/@endo/init/-/init-1.1.11.tgz#6a37315c443aba85745252a8423aa43eeba5a328" - integrity sha512-UpXORiMA+PsmN4cP9XMA1LN0TZvuU2RT5YwPTVxtRuTK+OChyx/lLg/FQ1ibQKxzRZ6D0N4nc/RTUYeUq2o2Pg== + "@endo/common" "^1.2.13" + "@endo/env-options" "^1.1.11" + "@endo/errors" "^1.2.13" + "@endo/eventual-send" "^1.3.4" + "@endo/far" "^1.1.14" + "@endo/pass-style" "^1.6.3" + "@endo/patterns" "^1.7.0" + +"@endo/far@^1.0.0", "@endo/far@^1.1.11", "@endo/far@^1.1.14": + version "1.1.14" + resolved "https://registry.yarnpkg.com/@endo/far/-/far-1.1.14.tgz#3802dd5abe381af6ae9ed4dab87224cfb0a41635" + integrity sha512-OlM+yCNWVqhwSZa6MyjkVB0oQSTAQ15KoiDGL1qowtnTnhuGUbOXuaUAsDf4eAJZ4L+h2KsJOUdyYEuhNsDPLg== dependencies: - "@endo/base64" "^1.0.11" - "@endo/eventual-send" "^1.3.3" - "@endo/lockdown" "^1.0.17" - "@endo/promise-kit" "^1.1.12" - -"@endo/lockdown@^1.0.17": - version "1.0.17" - resolved "https://registry.yarnpkg.com/@endo/lockdown/-/lockdown-1.0.17.tgz#e5269aa760db53da6ca292c1780d0092ebc7e322" - integrity sha512-ZfF3uHkZ++qtRlA/JuLmHuePZsluEj7BAboEA5AVXVtPdwdLCax0aXu9bMP6nvSNhQxC33e28AQinQ36con89A== + "@endo/errors" "^1.2.13" + "@endo/eventual-send" "^1.3.4" + "@endo/pass-style" "^1.6.3" + +"@endo/immutable-arraybuffer@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@endo/immutable-arraybuffer/-/immutable-arraybuffer-1.1.2.tgz#76bf0f1c4a8f925e52cc461c74c2032876d733aa" + integrity sha512-u+NaYB2aqEugQ3u7w3c5QNkPogf8q/xGgsPaqdY6pUiGWtYiTiFspKFcha6+oeZhWXWQ23rf0KrUq0kfuzqYyQ== + +"@endo/import-bundle@^1.4.0": + version "1.5.2" + resolved "https://registry.yarnpkg.com/@endo/import-bundle/-/import-bundle-1.5.2.tgz#b82ec56bb2c7f19e1dbc553f99697ac5a7b36ce5" + integrity sha512-+YZbB0pAZ8DeZH1BZ+Ec/cezI4DgppCyJEv1Sw9gbX/mNupmn5XHECOVYGjFHyOmArHOHn97SFu//QwDeWRz4w== dependencies: - ses "^1.13.1" + "@endo/base64" "^1.0.12" + "@endo/compartment-mapper" "^1.6.3" + "@endo/errors" "^1.2.13" + "@endo/where" "^1.0.11" + ses "^1.14.0" -"@endo/marshal@^1.6.4", "@endo/marshal@^1.7.1": - version "1.7.1" - resolved "https://registry.yarnpkg.com/@endo/marshal/-/marshal-1.7.1.tgz#9986a99073e8e74e4cb16ca7c08266e041e5bfff" - integrity sha512-Cp2iGW5PEsM03QD8DKvTU3xRXZ+Yxm6S0QOvhieJiIpdYnVXTHUQKlIfucbKNAJoKyKWiKDPrroSeCLgwgKtcA== +"@endo/init@^1.1.12", "@endo/init@^1.1.9": + version "1.1.12" + resolved "https://registry.yarnpkg.com/@endo/init/-/init-1.1.12.tgz#d6aa28124c146327ea7669d35e17831f9806f202" + integrity sha512-6Q0IhmL8NPh1ATnLULO03X6hEqFpkO97ms1pmAdyJg0+vrPuTcRHULP9oRVghVY12o/yDGg8tumDk4+CUUv6zw== + dependencies: + "@endo/base64" "^1.0.12" + "@endo/eventual-send" "^1.3.4" + "@endo/lockdown" "^1.0.18" + "@endo/promise-kit" "^1.1.13" + +"@endo/lockdown@^1.0.15", "@endo/lockdown@^1.0.18": + version "1.0.18" + resolved "https://registry.yarnpkg.com/@endo/lockdown/-/lockdown-1.0.18.tgz#aa849bf85f5ae07a8f7e97aba3c6ab7fc9ad8a35" + integrity sha512-dv9gpnEM5VdOW1WkY6dwQSqlTuNgkZMHOPNcEGZmpzYcT+0U6VjfSjo0wumxyej+T4K7Y6FwgSPLXwHqGXFANw== dependencies: - "@endo/common" "^1.2.12" - "@endo/errors" "^1.2.12" - "@endo/eventual-send" "^1.3.3" - "@endo/nat" "^5.1.2" - "@endo/pass-style" "^1.6.2" - "@endo/promise-kit" "^1.1.12" + ses "^1.14.0" -"@endo/module-source@^1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@endo/module-source/-/module-source-1.3.2.tgz#d9bdd76383b88367a6d2401cea1916d588c2b162" - integrity sha512-x8s1a7iqz894KpmkrzLxXTjARNSHqqyKIptussnN510G85BjanuyZ1j03aWvhgeU0XPrs69Jj/ryuafW8WKjMw== +"@endo/marshal@^1.6.4", "@endo/marshal@^1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@endo/marshal/-/marshal-1.8.0.tgz#98fa2a7f5f1a3b80af09a8b3713e2dde79036e38" + integrity sha512-TsjZUAYo6BwewNFvv1rzgLkogee3f2Z+xIF5d4TQOBVcgtOR/uvDhx7XmmtFwYDnq90UzPo/f0ffmR47micduA== + dependencies: + "@endo/common" "^1.2.13" + "@endo/env-options" "^1.1.11" + "@endo/errors" "^1.2.13" + "@endo/eventual-send" "^1.3.4" + "@endo/nat" "^5.1.3" + "@endo/pass-style" "^1.6.3" + "@endo/promise-kit" "^1.1.13" + +"@endo/module-source@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@endo/module-source/-/module-source-1.3.3.tgz#097c14c1e92a4d4e193fc25c8a4fee663c13260b" + integrity sha512-BsnzQDVxHVdE5otMextsqZvXEko1N+djde1Y/lrbZp+/gn0x9O9x30ZUG8Yt84Vob4sxjL9I7piTVE/px5cuog== dependencies: "@babel/generator" "^7.26.3" "@babel/parser" "~7.26.2" "@babel/traverse" "~7.25.9" "@babel/types" "~7.26.0" - ses "^1.13.1" + ses "^1.14.0" -"@endo/nat@^5.1.0", "@endo/nat@^5.1.2": - version "5.1.2" - resolved "https://registry.yarnpkg.com/@endo/nat/-/nat-5.1.2.tgz#90521ee1338a261bf413d14b075693e58cd98926" - integrity sha512-1J2H6Jm8FuztxgyNy/CRODVRQ/AC6/5T60lvp+HCIeYWWwFOgUD9xkI7ck33jl8cGjC9iHyoPBj6s8AWrqlJDQ== +"@endo/nat@^5.1.0", "@endo/nat@^5.1.3": + version "5.1.3" + resolved "https://registry.yarnpkg.com/@endo/nat/-/nat-5.1.3.tgz#207d6a184375fe3da1bb35ccb33ac188f806d897" + integrity sha512-+uRT6/hrAxEup2SOZYD2GJpnVaQQ6bx4Txxv9n+Whr1yVM8fL15fAY2NUTwpAJpGAPZA0uwreW+Wf4lmePq0Nw== -"@endo/pass-style@^1.5.0", "@endo/pass-style@^1.6.2": - version "1.6.2" - resolved "https://registry.yarnpkg.com/@endo/pass-style/-/pass-style-1.6.2.tgz#8d975c89c8666b6b29e58aeab7acd1ee3cb296f8" - integrity sha512-+hn1CNms94R6SqFH88apSuwgR2HYPqsETneUlZL9rG6OXWYbrQE1WvY2eoWV/2PukJs7mb8BJQgTJKSnLWtRQw== +"@endo/pass-style@^1.5.0", "@endo/pass-style@^1.6.3": + version "1.6.3" + resolved "https://registry.yarnpkg.com/@endo/pass-style/-/pass-style-1.6.3.tgz#501e2231cbef7703c5f0158e6e807bcebe790154" + integrity sha512-dVcLC0+ApxoI4T+kaEsbuS/u4ai7zXDw831otd3pYGn7la/eJ9Lu6g2qOduE1vtY2BFOI46N91/dtIBni7R6yg== dependencies: - "@endo/common" "^1.2.12" - "@endo/env-options" "^1.1.10" - "@endo/errors" "^1.2.12" - "@endo/eventual-send" "^1.3.3" - "@endo/promise-kit" "^1.1.12" + "@endo/common" "^1.2.13" + "@endo/env-options" "^1.1.11" + "@endo/errors" "^1.2.13" + "@endo/eventual-send" "^1.3.4" + "@endo/promise-kit" "^1.1.13" "@endo/path-compare@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@endo/path-compare/-/path-compare-1.1.0.tgz#05eb9f2dab52a6638a6505594146a9f70c91fa77" integrity sha512-dKBykUBpZPLvvxB8CqOzSl1kJ9Bv4gzig34E5n2LQRj2xULaUjdgBm8DtMkORpIOPLrvJKWMoispwSlRXL/7OA== -"@endo/patterns@^1.5.0", "@endo/patterns@^1.6.1": - version "1.6.1" - resolved "https://registry.yarnpkg.com/@endo/patterns/-/patterns-1.6.1.tgz#a6a82d615ef9a9c7df960313c917fb669bf7571f" - integrity sha512-ycdHh8sigkuRYHKc9gG43QK6kuFTT02N+iXJhsbeIrHYWkpTlkzRdWCvrWMWpCfcZmnTNyafAcGpoxauX0M2WQ== +"@endo/patterns@^1.5.0", "@endo/patterns@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@endo/patterns/-/patterns-1.7.0.tgz#c17d755cd13a934dc05fdf248537ca891109140d" + integrity sha512-jf/4sq8psz+E9CGLyU99J0zz9Y3xRod7XpcQ7TIC0vjTRfEoIMhNTKZWCYoDQKpIuvtEdgnL3ixikrtS2QILKA== dependencies: - "@endo/common" "^1.2.12" - "@endo/errors" "^1.2.12" - "@endo/eventual-send" "^1.3.3" - "@endo/marshal" "^1.7.1" - "@endo/pass-style" "^1.6.2" - "@endo/promise-kit" "^1.1.12" - -"@endo/promise-kit@^1.1.10", "@endo/promise-kit@^1.1.12": - version "1.1.12" - resolved "https://registry.yarnpkg.com/@endo/promise-kit/-/promise-kit-1.1.12.tgz#9849945d50511f98c31c257ed1e492b37af544f5" - integrity sha512-V0CnMpxGdQGPfoT6/E9X/1P/7v7siOQ4dMdBnBCl3XW4T7QpXu/rhPxoaegsTJ6Gj0F83ogeCFmBFdkCTlVxFQ== + "@endo/common" "^1.2.13" + "@endo/errors" "^1.2.13" + "@endo/eventual-send" "^1.3.4" + "@endo/marshal" "^1.8.0" + "@endo/pass-style" "^1.6.3" + "@endo/promise-kit" "^1.1.13" + +"@endo/promise-kit@^1.1.10", "@endo/promise-kit@^1.1.13": + version "1.1.13" + resolved "https://registry.yarnpkg.com/@endo/promise-kit/-/promise-kit-1.1.13.tgz#2b99468fd04271dadfd35d75efad7307c9171044" + integrity sha512-2hPhjy8sG+C9gg2XJMSVpQW5PqidAf0SfjciR3eLXzA/2gpqxotSbA/9TvvuHIR4zGKTXfUrk53lQAHYq+96ug== dependencies: - ses "^1.13.1" + ses "^1.14.0" -"@endo/stream@^1.2.10": - version "1.2.12" - resolved "https://registry.yarnpkg.com/@endo/stream/-/stream-1.2.12.tgz#c3969a3637d09c8bdec07b1981e92af9784a0ad5" - integrity sha512-7kJ6yccB4HWi3lK+L6+XrZmyumnn14gFfx2lymhep64ubXZUOFB9QDG1MtQ1ToTGxI28r/UxvPxoNlyxvPk+ow== +"@endo/ses-ava@^1.2.10": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@endo/ses-ava/-/ses-ava-1.3.2.tgz#5cbe4a6020a242fae60052ae72719efaca46fd22" + integrity sha512-NYHjcaMM70aT9AGUOni4muynChQwJZEBL4IJqEIygzqukiG/krkzQh8KBZ6WA0WTEo9vwsgAgf/ETsR5Gto2fw== + dependencies: + "@endo/env-options" "^1.1.11" + "@endo/init" "^1.1.12" + ses "^1.14.0" + +"@endo/stream@^1.2.10", "@endo/stream@^1.2.13": + version "1.2.13" + resolved "https://registry.yarnpkg.com/@endo/stream/-/stream-1.2.13.tgz#767dbedde0422f9dc2d5b2087aa5433112430c86" + integrity sha512-ZXkmEjH4i750jd1WJEq50ruVFjAFbIDoABQRUGGQCfwlFHCwz5mU9t7Gs0dvyl3LCNbbX3dtRuSqqMMrpkfbCA== dependencies: - "@endo/eventual-send" "^1.3.3" - "@endo/promise-kit" "^1.1.12" - ses "^1.13.1" + "@endo/eventual-send" "^1.3.4" + "@endo/promise-kit" "^1.1.13" + ses "^1.14.0" "@endo/trampoline@^1.0.5": version "1.0.5" resolved "https://registry.yarnpkg.com/@endo/trampoline/-/trampoline-1.0.5.tgz#f44f2f1862a92b98bb4c780ccba91c2fc3161bb5" integrity sha512-75sXj6cvvJ7qpD8UVoUVTEQRay/X6y5OrFYH48iFEmTg1SJcEQlldjMI4mrvOyuHjtr+KnVlNr+zmrhAUtLm0w== -"@endo/zip@^1.0.11": +"@endo/where@^1.0.11": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@endo/where/-/where-1.0.11.tgz#60afca5de5a5a736cac64996edb02942534b6768" + integrity sha512-kkJmpwymkjjN3+UfTHiEZZsegevgxsZfXGOD9jBbAcFIH4VnPYYSqDMy+GZX1f6JgZxfooC1CWlACYtC7dBqwQ== + +"@endo/zip@^1.0.11", "@endo/zip@^1.0.9": version "1.0.11" resolved "https://registry.yarnpkg.com/@endo/zip/-/zip-1.0.11.tgz#80b561531fd9bb68c574affab20526321669ce79" integrity sha512-gx73xEyRFH3V/63eZAhrw1+t4tnpLG9n5RYzBwl3LR5mrtbrguGvx7fPoFww+oxjmkAgvGQUMVuJuqf11alAcg== +"@esbuild/aix-ppc64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.9.tgz#bef96351f16520055c947aba28802eede3c9e9a9" + integrity sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA== + +"@esbuild/android-arm64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.25.9.tgz#d2e70be7d51a529425422091e0dcb90374c1546c" + integrity sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg== + +"@esbuild/android-arm@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.25.9.tgz#d2a753fe2a4c73b79437d0ba1480e2d760097419" + integrity sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ== + +"@esbuild/android-x64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.25.9.tgz#5278836e3c7ae75761626962f902a0d55352e683" + integrity sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw== + +"@esbuild/darwin-arm64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.25.9.tgz#f1513eaf9ec8fa15dcaf4c341b0f005d3e8b47ae" + integrity sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg== + +"@esbuild/darwin-x64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.25.9.tgz#e27dbc3b507b3a1cea3b9280a04b8b6b725f82be" + integrity sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ== + +"@esbuild/freebsd-arm64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.9.tgz#364e3e5b7a1fd45d92be08c6cc5d890ca75908ca" + integrity sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q== + +"@esbuild/freebsd-x64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.9.tgz#7c869b45faeb3df668e19ace07335a0711ec56ab" + integrity sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg== + +"@esbuild/linux-arm64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.25.9.tgz#48d42861758c940b61abea43ba9a29b186d6cb8b" + integrity sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw== + +"@esbuild/linux-arm@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.25.9.tgz#6ce4b9cabf148274101701d112b89dc67cc52f37" + integrity sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw== + +"@esbuild/linux-ia32@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.25.9.tgz#207e54899b79cac9c26c323fc1caa32e3143f1c4" + integrity sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A== + +"@esbuild/linux-loong64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.25.9.tgz#0ba48a127159a8f6abb5827f21198b999ffd1fc0" + integrity sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ== + +"@esbuild/linux-mips64el@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.9.tgz#a4d4cc693d185f66a6afde94f772b38ce5d64eb5" + integrity sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA== + +"@esbuild/linux-ppc64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.9.tgz#0f5805c1c6d6435a1dafdc043cb07a19050357db" + integrity sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w== + +"@esbuild/linux-riscv64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.9.tgz#6776edece0f8fca79f3386398b5183ff2a827547" + integrity sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg== + +"@esbuild/linux-s390x@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.25.9.tgz#3f6f29ef036938447c2218d309dc875225861830" + integrity sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA== + +"@esbuild/linux-x64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.25.9.tgz#831fe0b0e1a80a8b8391224ea2377d5520e1527f" + integrity sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg== + +"@esbuild/netbsd-arm64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.9.tgz#06f99d7eebe035fbbe43de01c9d7e98d2a0aa548" + integrity sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q== + +"@esbuild/netbsd-x64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.9.tgz#db99858e6bed6e73911f92a88e4edd3a8c429a52" + integrity sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g== + +"@esbuild/openbsd-arm64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.9.tgz#afb886c867e36f9d86bb21e878e1185f5d5a0935" + integrity sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ== + +"@esbuild/openbsd-x64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.9.tgz#30855c9f8381fac6a0ef5b5f31ac6e7108a66ecf" + integrity sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA== + +"@esbuild/openharmony-arm64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.9.tgz#2f2144af31e67adc2a8e3705c20c2bd97bd88314" + integrity sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg== + +"@esbuild/sunos-x64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.25.9.tgz#69b99a9b5bd226c9eb9c6a73f990fddd497d732e" + integrity sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw== + +"@esbuild/win32-arm64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.25.9.tgz#d789330a712af916c88325f4ffe465f885719c6b" + integrity sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ== + +"@esbuild/win32-ia32@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.25.9.tgz#52fc735406bd49688253e74e4e837ac2ba0789e3" + integrity sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww== + +"@esbuild/win32-x64@0.25.9": + version "0.25.9" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.9.tgz#585624dc829cfb6e7c0aa6c3ca7d7e6daa87e34f" + integrity sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ== + "@jridgewell/gen-mapping@^0.3.12": - version "0.3.12" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz#2234ce26c62889f03db3d7fea43c1932ab3e927b" - integrity sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg== + version "0.3.13" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz#6342a19f44347518c93e43b1ac69deb3c4656a1f" + integrity sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA== dependencies: "@jridgewell/sourcemap-codec" "^1.5.0" "@jridgewell/trace-mapping" "^0.3.24" @@ -329,18 +1042,197 @@ integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0": - version "1.5.4" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz#7358043433b2e5da569aa02cbc4c121da3af27d7" - integrity sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw== + version "1.5.5" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz#6912b00d2c631c0d15ce1a7ab57cd657f2a8f8ba" + integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.28": - version "0.3.29" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz#a58d31eaadaf92c6695680b2e1d464a9b8fbf7fc" - integrity sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ== + version "0.3.30" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz#4a76c4daeee5df09f5d3940e087442fb36ce2b99" + integrity sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q== dependencies: "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" +"@keplr-wallet/types@0.12.270": + version "0.12.270" + resolved "https://registry.yarnpkg.com/@keplr-wallet/types/-/types-0.12.270.tgz#4e74242ffa4ea8c10198e77b32f029f3f6f32168" + integrity sha512-FVJKzseWaLfonWR/inNJMxPn2CbB4l1nVjXpEs4w7C2+n1o0SVdxEHub/bhvajGGy3vRvM5MTLUx7FUbUOYheg== + dependencies: + long "^4.0.0" + +"@keplr-wallet/unit@^0.12.143": + version "0.12.270" + resolved "https://registry.yarnpkg.com/@keplr-wallet/unit/-/unit-0.12.270.tgz#c4c30e8c3c8dbddac32b592e2923685f49f8ddca" + integrity sha512-KBSDR/0tU7824Hyu/fP0YKp2dwJHEhbDVN1i35fvJB9VGRqoN7TVlVh+bSGpeMl3yihyv+qCX/A2OEwN3RONhw== + dependencies: + "@keplr-wallet/types" "0.12.270" + big-integer "^1.6.48" + utility-types "^3.10.0" + +"@noble/ciphers@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@noble/ciphers/-/ciphers-1.3.0.tgz#f64b8ff886c240e644e5573c097f86e5b43676dc" + integrity sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw== + +"@noble/curves@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.2.0.tgz#92d7e12e4e49b23105a2555c6984d41733d65c35" + integrity sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw== + dependencies: + "@noble/hashes" "1.3.2" + +"@noble/curves@1.9.1": + version "1.9.1" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.9.1.tgz#9654a0bc6c13420ae252ddcf975eaf0f58f0a35c" + integrity sha512-k11yZxZg+t+gWvBbIswW0yoJlu8cHOC7dhunwOzoWH/mXGBiYyR4YY6hAEK/3EUs4UpB8la1RfdRpeGsFHkWsA== + dependencies: + "@noble/hashes" "1.8.0" + +"@noble/curves@~1.9.0": + version "1.9.7" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.9.7.tgz#79d04b4758a43e4bca2cbdc62e7771352fa6b951" + integrity sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw== + dependencies: + "@noble/hashes" "1.8.0" + +"@noble/hashes@1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.2.tgz#6f26dbc8fbc7205873ce3cee2f690eba0d421b39" + integrity sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ== + +"@noble/hashes@1.8.0", "@noble/hashes@^1", "@noble/hashes@^1.8.0", "@noble/hashes@~1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.8.0.tgz#cee43d801fcef9644b11b8194857695acd5f815a" + integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== + +"@rollup/rollup-android-arm-eabi@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.50.1.tgz#7d41dc45adcfcb272504ebcea9c8a5b2c659e963" + integrity sha512-HJXwzoZN4eYTdD8bVV22DN8gsPCAj3V20NHKOs8ezfXanGpmVPR7kalUHd+Y31IJp9stdB87VKPFbsGY3H/2ag== + +"@rollup/rollup-android-arm64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.50.1.tgz#6c708fae2c9755e994c42d56c34a94cb77020650" + integrity sha512-PZlsJVcjHfcH53mOImyt3bc97Ep3FJDXRpk9sMdGX0qgLmY0EIWxCag6EigerGhLVuL8lDVYNnSo8qnTElO4xw== + +"@rollup/rollup-darwin-arm64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.50.1.tgz#85ccf92ab114e434c83037a175923a525635cbb4" + integrity sha512-xc6i2AuWh++oGi4ylOFPmzJOEeAa2lJeGUGb4MudOtgfyyjr4UPNK+eEWTPLvmPJIY/pgw6ssFIox23SyrkkJw== + +"@rollup/rollup-darwin-x64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.50.1.tgz#0af089f3d658d05573208dabb3a392b44d7f4630" + integrity sha512-2ofU89lEpDYhdLAbRdeyz/kX3Y2lpYc6ShRnDjY35bZhd2ipuDMDi6ZTQ9NIag94K28nFMofdnKeHR7BT0CATw== + +"@rollup/rollup-freebsd-arm64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.50.1.tgz#46c22a16d18180e99686647543335567221caa9c" + integrity sha512-wOsE6H2u6PxsHY/BeFHA4VGQN3KUJFZp7QJBmDYI983fgxq5Th8FDkVuERb2l9vDMs1D5XhOrhBrnqcEY6l8ZA== + +"@rollup/rollup-freebsd-x64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.50.1.tgz#819ffef2f81891c266456952962a13110c8e28b5" + integrity sha512-A/xeqaHTlKbQggxCqispFAcNjycpUEHP52mwMQZUNqDUJFFYtPHCXS1VAG29uMlDzIVr+i00tSFWFLivMcoIBQ== + +"@rollup/rollup-linux-arm-gnueabihf@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.50.1.tgz#7fe283c14793e607e653a3214b09f8973f08262a" + integrity sha512-54v4okehwl5TaSIkpp97rAHGp7t3ghinRd/vyC1iXqXMfjYUTm7TfYmCzXDoHUPTTf36L8pr0E7YsD3CfB3ZDg== + +"@rollup/rollup-linux-arm-musleabihf@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.50.1.tgz#066e92eb22ea30560414ec800a6d119ba0b435ac" + integrity sha512-p/LaFyajPN/0PUHjv8TNyxLiA7RwmDoVY3flXHPSzqrGcIp/c2FjwPPP5++u87DGHtw+5kSH5bCJz0mvXngYxw== + +"@rollup/rollup-linux-arm64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.50.1.tgz#480d518ea99a8d97b2a174c46cd55164f138cc37" + integrity sha512-2AbMhFFkTo6Ptna1zO7kAXXDLi7H9fGTbVaIq2AAYO7yzcAsuTNWPHhb2aTA6GPiP+JXh85Y8CiS54iZoj4opw== + +"@rollup/rollup-linux-arm64-musl@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.50.1.tgz#ed7db3b8999b60dd20009ddf71c95f3af49423c8" + integrity sha512-Cgef+5aZwuvesQNw9eX7g19FfKX5/pQRIyhoXLCiBOrWopjo7ycfB292TX9MDcDijiuIJlx1IzJz3IoCPfqs9w== + +"@rollup/rollup-linux-loongarch64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.50.1.tgz#16a6927a35f5dbc505ff874a4e1459610c0c6f46" + integrity sha512-RPhTwWMzpYYrHrJAS7CmpdtHNKtt2Ueo+BlLBjfZEhYBhK00OsEqM08/7f+eohiF6poe0YRDDd8nAvwtE/Y62Q== + +"@rollup/rollup-linux-ppc64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.50.1.tgz#a006700469be0041846c45b494c35754e6a04eea" + integrity sha512-eSGMVQw9iekut62O7eBdbiccRguuDgiPMsw++BVUg+1K7WjZXHOg/YOT9SWMzPZA+w98G+Fa1VqJgHZOHHnY0Q== + +"@rollup/rollup-linux-riscv64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.50.1.tgz#0fcc45b2ec8a0e54218ca48849ea6d596f53649c" + integrity sha512-S208ojx8a4ciIPrLgazF6AgdcNJzQE4+S9rsmOmDJkusvctii+ZvEuIC4v/xFqzbuP8yDjn73oBlNDgF6YGSXQ== + +"@rollup/rollup-linux-riscv64-musl@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.50.1.tgz#d6e617eec9fe6f5859ee13fad435a16c42b469f2" + integrity sha512-3Ag8Ls1ggqkGUvSZWYcdgFwriy2lWo+0QlYgEFra/5JGtAd6C5Hw59oojx1DeqcA2Wds2ayRgvJ4qxVTzCHgzg== + +"@rollup/rollup-linux-s390x-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.50.1.tgz#b147760d63c6f35b4b18e6a25a2a760dd3ea0c05" + integrity sha512-t9YrKfaxCYe7l7ldFERE1BRg/4TATxIg+YieHQ966jwvo7ddHJxPj9cNFWLAzhkVsbBvNA4qTbPVNsZKBO4NSg== + +"@rollup/rollup-linux-x64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.50.1.tgz#fc0be1da374f85e7e85dccaf1ff12d7cfc9fbe3d" + integrity sha512-MCgtFB2+SVNuQmmjHf+wfI4CMxy3Tk8XjA5Z//A0AKD7QXUYFMQcns91K6dEHBvZPCnhJSyDWLApk40Iq/H3tA== + +"@rollup/rollup-linux-x64-musl@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.50.1.tgz#54c79932e0f9a3c992b034c82325be3bcde0d067" + integrity sha512-nEvqG+0jeRmqaUMuwzlfMKwcIVffy/9KGbAGyoa26iu6eSngAYQ512bMXuqqPrlTyfqdlB9FVINs93j534UJrg== + +"@rollup/rollup-openharmony-arm64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.50.1.tgz#fc48e74d413623ac02c1d521bec3e5e784488fdc" + integrity sha512-RDsLm+phmT3MJd9SNxA9MNuEAO/J2fhW8GXk62G/B4G7sLVumNFbRwDL6v5NrESb48k+QMqdGbHgEtfU0LCpbA== + +"@rollup/rollup-win32-arm64-msvc@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.50.1.tgz#8ce3d1181644406362cf1e62c90e88ab083e02bb" + integrity sha512-hpZB/TImk2FlAFAIsoElM3tLzq57uxnGYwplg6WDyAxbYczSi8O2eQ+H2Lx74504rwKtZ3N2g4bCUkiamzS6TQ== + +"@rollup/rollup-win32-ia32-msvc@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.50.1.tgz#dd2dfc896eac4b2689d55f01c6d51c249263f805" + integrity sha512-SXjv8JlbzKM0fTJidX4eVsH+Wmnp0/WcD8gJxIZyR6Gay5Qcsmdbi9zVtnbkGPG8v2vMR1AD06lGWy5FLMcG7A== + +"@rollup/rollup-win32-x64-msvc@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.50.1.tgz#13f758c97b9fbbac56b6928547a3ff384e7cfb3e" + integrity sha512-StxAO/8ts62KZVRAm4JZYq9+NqNsV7RvimNK+YM7ry//zebEH6meuugqW/P5OFUCjyQgui+9fUxT6d5NShvMvA== + +"@scure/base@~1.2.5": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.2.6.tgz#ca917184b8231394dd8847509c67a0be522e59f6" + integrity sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg== + +"@scure/bip32@1.7.0", "@scure/bip32@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.7.0.tgz#b8683bab172369f988f1589640e53c4606984219" + integrity sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw== + dependencies: + "@noble/curves" "~1.9.0" + "@noble/hashes" "~1.8.0" + "@scure/base" "~1.2.5" + +"@scure/bip39@1.6.0", "@scure/bip39@^1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.6.0.tgz#475970ace440d7be87a6086cbee77cb8f1a684f9" + integrity sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A== + dependencies: + "@noble/hashes" "~1.8.0" + "@scure/base" "~1.2.5" + "@sec-ant/readable-stream@^0.4.1": version "0.4.1" resolved "https://registry.yarnpkg.com/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz#60de891bb126abfdc5410fdc6166aca065f10a0c" @@ -351,16 +1243,204 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz#abb11d99aeb6d27f1b563c38147a72d50058e339" integrity sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ== +"@skip-go/client@^1.1.7": + version "1.5.5" + resolved "https://registry.yarnpkg.com/@skip-go/client/-/client-1.5.5.tgz#65c4227c1927772d2eb67693717dacac15387076" + integrity sha512-+A7AYCc7VPyYTeV79dpT9WbcnnynPeM0BY4+S3D9WKiT7MmEpv9SspZB5g4RcIPzwV3vjBQ3g1Nk0KFBB15Rog== + dependencies: + "@cosmjs/amino" "0.33.1" + "@cosmjs/cosmwasm-stargate" "0.33.1" + "@cosmjs/encoding" "0.33.1" + "@cosmjs/math" "0.33.1" + "@cosmjs/proto-signing" "0.33.1" + "@cosmjs/stargate" "0.33.1" + "@keplr-wallet/unit" "^0.12.143" + "@solana/wallet-adapter-base" "^0.9.23" + bech32 "^2.0.0" + cosmjs-types "^0.9.0" + keccak "3.0.4" + uuid "^11.1.0" + +"@solana/wallet-adapter-base@^0.9.23": + version "0.9.27" + resolved "https://registry.yarnpkg.com/@solana/wallet-adapter-base/-/wallet-adapter-base-0.9.27.tgz#f76463db172ac1d7d1f5aa064800363777731dfd" + integrity sha512-kXjeNfNFVs/NE9GPmysBRKQ/nf+foSaq3kfVSeMcO/iVgigyRmB551OjU3WyAolLG/1jeEfKLqF9fKwMCRkUqg== + dependencies: + "@solana/wallet-standard-features" "^1.3.0" + "@wallet-standard/base" "^1.1.0" + "@wallet-standard/features" "^1.1.0" + eventemitter3 "^5.0.1" + +"@solana/wallet-standard-features@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@solana/wallet-standard-features/-/wallet-standard-features-1.3.0.tgz#c489eca9d0c78f97084b4af6ca8ad8c1ca197de5" + integrity sha512-ZhpZtD+4VArf6RPitsVExvgkF+nGghd1rzPjd97GmBximpnt1rsUxMOEyoIEuH3XBxPyNB6Us7ha7RHWQR+abg== + dependencies: + "@wallet-standard/base" "^1.1.0" + "@wallet-standard/features" "^1.1.0" + +"@types/estree@1.0.8": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" + integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== + +"@types/node@22.7.5": + version "22.7.5" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.7.5.tgz#cfde981727a7ab3611a481510b473ae54442b92b" + integrity sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ== + dependencies: + undici-types "~6.19.2" + +"@types/node@^22.15.21": + version "22.18.1" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.18.1.tgz#cc85ee6999b2a2928739281d2f56ff410a140c52" + integrity sha512-rzSDyhn4cYznVG+PCzGe1lwuMYJrcBS1fc3JqSa2PvtABwWo+dZ1ij5OVok3tqfpEBCBoaR4d7upFJk73HRJDw== + dependencies: + undici-types "~6.21.0" + +"@wallet-standard/base@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@wallet-standard/base/-/base-1.1.0.tgz#214093c0597a1e724ee6dbacd84191dfec62bb33" + integrity sha512-DJDQhjKmSNVLKWItoKThJS+CsJQjR9AOBOirBVT1F9YpRyC9oYHE+ZnSf8y8bxUphtKqdQMPVQ2mHohYdRvDVQ== + +"@wallet-standard/features@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@wallet-standard/features/-/features-1.1.0.tgz#f256d7b18940c8d134f66164330db358a8f5200e" + integrity sha512-hiEivWNztx73s+7iLxsuD1sOJ28xtRix58W7Xnz4XzzA/pF0+aicnWgjOdA10doVDEDZdUuZCIIqG96SFNlDUg== + dependencies: + "@wallet-standard/base" "^1.1.0" + +abitype@1.1.0, abitype@^1.0.9: + version "1.1.0" + resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.1.0.tgz#510c5b3f92901877977af5e864841f443bf55406" + integrity sha512-6Vh4HcRxNMLA0puzPjM5GBgT4aAcFGKZzSgAXvuZ27shJP6NEpielTuqbBmZILR5/xd0PizkBGy5hReKz9jl5A== + +aes-js@4.0.0-beta.5: + version "4.0.0-beta.5" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-4.0.0-beta.5.tgz#8d2452c52adedebc3a3e28465d858c11ca315873" + integrity sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q== + +ansi-styles@^6.2.1: + version "6.2.3" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.3.tgz#c044d5dcc521a076413472597a1acb1f103c4041" + integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg== + anylogger@^0.21.0: version "0.21.0" resolved "https://registry.yarnpkg.com/anylogger/-/anylogger-0.21.0.tgz#b6cbea631cd5e1c884e5c0fa007d80bde1b22bd4" integrity sha512-XJVplwflEff43l7aE48lW9gNoS0fpb1Ha4WttzjfTFlN3uJUIKALZ5oNWtwgRXPm/Q2dbp1EIddMbQ/AGHVX1A== +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== + +axios@^1.6.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.11.0.tgz#c2ec219e35e414c025b2095e8b8280278478fdb6" + integrity sha512-1Lx3WLFQWm3ooKDYZD1eXmoGO9fxYQjrycfHFC8P0sCfQVXyROp0p9PFWBehewBOdCwHc+f/b8I0fMto5eSfwA== + dependencies: + follow-redirects "^1.15.6" + form-data "^4.0.4" + proxy-from-env "^1.1.0" + +base64-js@^1.3.0, base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +bech32@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + bech32@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/bech32/-/bech32-2.0.0.tgz#078d3686535075c8c79709f054b1b226a133b355" integrity sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg== +better-sqlite3@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/better-sqlite3/-/better-sqlite3-10.1.0.tgz#8dc07e496fc014a7cd2211f79e591f6ba92838e8" + integrity sha512-hqpHJaCfKEZFaAWdMh6crdzRWyzQzfP6Ih8TYI0vFn01a6ZTDSbJIMXN+6AMBaBOh99DzUy8l3PsV9R3qnJDng== + dependencies: + bindings "^1.5.0" + prebuild-install "^7.1.1" + +big-integer@^1.6.48: + version "1.6.52" + resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.52.tgz#60a887f3047614a8e1bffe5d7173490a97dc8c85" + integrity sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg== + +bindings@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== + dependencies: + file-uri-to-path "1.0.0" + +bl@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" + integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== + dependencies: + buffer "^5.5.0" + inherits "^2.0.4" + readable-stream "^3.4.0" + +bn.js@^4.11.9: + version "4.12.2" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.2.tgz#3d8fed6796c24e177737f7cc5172ee04ef39ec99" + integrity sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw== + +bn.js@^5.2.0: + version "5.2.2" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.2.tgz#82c09f9ebbb17107cd72cb7fd39bd1f9d0aaa566" + integrity sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw== + +brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +buffer@^5.5.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +cac@^6.7.14: + version "6.7.14" + resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" + integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== + +call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" + integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + +chownr@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== + +combined-stream@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +cosmjs-types@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/cosmjs-types/-/cosmjs-types-0.9.0.tgz#c3bc482d28c7dfa25d1445093fdb2d9da1f6cfcc" + integrity sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ== + cross-spawn@^7.0.6: version "7.0.6" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" @@ -370,7 +1450,7 @@ cross-spawn@^7.0.6: shebang-command "^2.0.0" which "^2.0.1" -debug@^4.3.1: +debug@^4.3.1, debug@^4.4.1: version "4.4.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b" integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== @@ -382,7 +1462,163 @@ decode-uri-component@^0.4.1: resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.4.1.tgz#2ac4859663c704be22bf7db760a1494a49ab2cc5" integrity sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ== -execa@^9.5.2: +decompress-response@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" + integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== + dependencies: + mimic-response "^3.1.0" + +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== + +define-data-property@^1.0.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + +define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== + +detect-libc@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.4.tgz#f04715b8ba815e53b4d8109655b6508a6865a7e8" + integrity sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA== + +dotenv@^16.5.0: + version "16.6.1" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.6.1.tgz#773f0e69527a8315c7285d5ee73c4459d20a8020" + integrity sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow== + +dunder-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" + integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== + dependencies: + call-bind-apply-helpers "^1.0.1" + es-errors "^1.3.0" + gopd "^1.2.0" + +elliptic@^6.6.1: + version "6.6.1" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.1.tgz#3b8ffb02670bf69e382c7f65bf524c97c5405c06" + integrity sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g== + 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" + +end-of-stream@^1.1.0, end-of-stream@^1.4.1: + version "1.4.5" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.5.tgz#7344d711dea40e0b74abc2ed49778743ccedb08c" + integrity sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg== + dependencies: + once "^1.4.0" + +es-define-property@^1.0.0, es-define-property@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" + integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== + +es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + +es-module-lexer@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.7.0.tgz#9159601561880a85f2734560a9099b2c31e5372a" + integrity sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA== + +es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" + integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== + dependencies: + es-errors "^1.3.0" + +es-set-tostringtag@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" + integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== + dependencies: + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +esbuild@^0.25.0: + version "0.25.9" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.25.9.tgz#15ab8e39ae6cdc64c24ff8a2c0aef5b3fd9fa976" + integrity sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g== + optionalDependencies: + "@esbuild/aix-ppc64" "0.25.9" + "@esbuild/android-arm" "0.25.9" + "@esbuild/android-arm64" "0.25.9" + "@esbuild/android-x64" "0.25.9" + "@esbuild/darwin-arm64" "0.25.9" + "@esbuild/darwin-x64" "0.25.9" + "@esbuild/freebsd-arm64" "0.25.9" + "@esbuild/freebsd-x64" "0.25.9" + "@esbuild/linux-arm" "0.25.9" + "@esbuild/linux-arm64" "0.25.9" + "@esbuild/linux-ia32" "0.25.9" + "@esbuild/linux-loong64" "0.25.9" + "@esbuild/linux-mips64el" "0.25.9" + "@esbuild/linux-ppc64" "0.25.9" + "@esbuild/linux-riscv64" "0.25.9" + "@esbuild/linux-s390x" "0.25.9" + "@esbuild/linux-x64" "0.25.9" + "@esbuild/netbsd-arm64" "0.25.9" + "@esbuild/netbsd-x64" "0.25.9" + "@esbuild/openbsd-arm64" "0.25.9" + "@esbuild/openbsd-x64" "0.25.9" + "@esbuild/openharmony-arm64" "0.25.9" + "@esbuild/sunos-x64" "0.25.9" + "@esbuild/win32-arm64" "0.25.9" + "@esbuild/win32-ia32" "0.25.9" + "@esbuild/win32-x64" "0.25.9" + +ethers@6.13.4: + version "6.13.4" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-6.13.4.tgz#bd3e1c3dc1e7dc8ce10f9ffb4ee40967a651b53c" + integrity sha512-21YtnZVg4/zKkCQPjrDj38B1r4nQvTZLopUGMLQ1ePU2zV/joCfDC3t3iKQjWRzjjjbzR+mdAIoikeBRNkdllA== + dependencies: + "@adraffy/ens-normalize" "1.10.1" + "@noble/curves" "1.2.0" + "@noble/hashes" "1.3.2" + "@types/node" "22.7.5" + aes-js "4.0.0-beta.5" + tslib "2.7.0" + ws "8.17.1" + +eventemitter3@5.0.1, eventemitter3@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" + integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== + +execa@^9.6.0: version "9.6.0" resolved "https://registry.yarnpkg.com/execa/-/execa-9.6.0.tgz#38665530e54e2e018384108322f37f35ae74f3bc" integrity sha512-jpWzZ1ZhwUmeWRhS7Qv3mhpOhLfwI+uAX4e5fOcXqwMR7EcJ0pj2kV1CVzHVMX/LphnKWD3LObjZCoJ71lKpHw== @@ -400,6 +1636,16 @@ execa@^9.5.2: strip-final-newline "^4.0.0" yoctocolors "^2.1.1" +expand-template@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" + integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== + +fdir@^6.5.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.5.0.tgz#ed2ab967a331ade62f18d077dae192684d50d350" + integrity sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg== + figures@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/figures/-/figures-6.1.0.tgz#935479f51865fa7479f6fa94fc6fc7ac14e62c4a" @@ -407,11 +1653,71 @@ figures@^6.1.0: dependencies: is-unicode-supported "^2.0.0" +file-uri-to-path@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== + filter-obj@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-5.1.0.tgz#5bd89676000a713d7db2e197f660274428e524ed" integrity sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng== +follow-redirects@^1.15.6: + version "1.15.11" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340" + integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ== + +form-data@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.4.tgz#784cdcce0669a9d68e94d11ac4eea98088edd2c4" + integrity sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + es-set-tostringtag "^2.1.0" + hasown "^2.0.2" + mime-types "^2.1.12" + +fs-constants@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" + integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== + +fsevents@~2.3.2, fsevents@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +get-intrinsic@^1.2.6: + version "1.3.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== + dependencies: + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + function-bind "^1.1.2" + get-proto "^1.0.1" + gopd "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + math-intrinsics "^1.1.0" + +get-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" + integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== + dependencies: + dunder-proto "^1.0.1" + es-object-atoms "^1.0.0" + get-stream@^9.0.0: version "9.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-9.0.1.tgz#95157d21df8eb90d1647102b63039b1df60ebd27" @@ -420,16 +1726,97 @@ get-stream@^9.0.0: "@sec-ant/readable-stream" "^0.4.1" is-stream "^4.0.1" +github-from-package@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" + integrity sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw== + globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== +globalthis@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" + integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== + dependencies: + define-properties "^1.2.1" + gopd "^1.0.1" + +gopd@^1.0.1, gopd@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" + integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== + +has-property-descriptors@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-symbols@^1.0.3, has-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" + integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== + +has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hasown@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + human-signals@^8.0.1: version "8.0.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-8.0.1.tgz#f08bb593b6d1db353933d06156cedec90abe51fb" integrity sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ== +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +import-meta-resolve@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/import-meta-resolve/-/import-meta-resolve-4.2.0.tgz#08cb85b5bd37ecc8eb1e0f670dc2767002d43734" + integrity sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg== + +inherits@^2.0.3, inherits@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +ini@~1.3.0: + version "1.3.8" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== + is-plain-obj@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0" @@ -450,6 +1837,16 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== +isomorphic-ws@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz#55fd4cd6c5e6491e76dc125938dd863f5cd4f2dc" + integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w== + +isows@1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/isows/-/isows-1.0.7.tgz#1c06400b7eed216fbba3bcbd68f12490fc342915" + integrity sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg== + jessie.js@^0.3.4: version "0.3.4" resolved "https://registry.yarnpkg.com/jessie.js/-/jessie.js-0.3.4.tgz#7e35dadc91cf4740d2ddc8a58b6cd0a99eb64a08" @@ -467,11 +1864,119 @@ jsesc@^3.0.2: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== +keccak@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.4.tgz#edc09b89e633c0549da444432ecf062ffadee86d" + integrity sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q== + dependencies: + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + readable-stream "^3.6.0" + +libsodium-sumo@^0.7.15: + version "0.7.15" + resolved "https://registry.yarnpkg.com/libsodium-sumo/-/libsodium-sumo-0.7.15.tgz#91c1d863fe3fbce6d6b9db1aadaa622733a1d007" + integrity sha512-5tPmqPmq8T8Nikpm1Nqj0hBHvsLFCXvdhBFV7SGOitQPZAA6jso8XoL0r4L7vmfKXr486fiQInvErHtEvizFMw== + +libsodium-wrappers-sumo@^0.7.11: + version "0.7.15" + resolved "https://registry.yarnpkg.com/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.15.tgz#0ef2a99b4b17e8385aa7e6850593660dbaf5fb40" + integrity sha512-aSWY8wKDZh5TC7rMvEdTHoyppVq/1dTSAeAR7H6pzd6QRT3vQWcT5pGwCotLcpPEOLXX6VvqihSPkpEhYAjANA== + dependencies: + libsodium-sumo "^0.7.15" + +long@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" + integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== + +math-intrinsics@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" + integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== + +microtime@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/microtime/-/microtime-3.1.1.tgz#f3ce12f4091c55fb2982c87205e2e7698afdcd0c" + integrity sha512-to1r7o24cDsud9IhN6/8wGmMx5R2kT0w2Xwm5okbYI3d1dk6Xv0m+Z+jg2vS9pt+ocgQHTCtgs/YuyJhySzxNg== + dependencies: + node-addon-api "^5.0.0" + node-gyp-build "^4.4.0" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mimic-response@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" + integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimist@^1.2.0, minimist@^1.2.3: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" + integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== + ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +nanoid@^3.3.11: + version "3.3.11" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" + integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== + +napi-build-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-2.0.0.tgz#13c22c0187fcfccce1461844136372a47ddc027e" + integrity sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA== + +node-abi@^3.3.0: + version "3.77.0" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.77.0.tgz#3ad90d5c9d45663420e5aa4ff58dbf4e3625419a" + integrity sha512-DSmt0OEcLoK4i3NuscSbGjOf3bqiDEutejqENSplMSFA/gmB8mkED9G4pKWnPl7MDU4rSHebKPHeitpDfyH0cQ== + dependencies: + semver "^7.3.5" + +node-addon-api@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32" + integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA== + +node-addon-api@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" + integrity sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA== + +node-gyp-build@^4.2.0, node-gyp-build@^4.4.0: + version "4.8.4" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" + integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== + npm-run-path@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-6.0.0.tgz#25cfdc4eae04976f3349c0b1afc089052c362537" @@ -480,6 +1985,37 @@ npm-run-path@^6.0.0: path-key "^4.0.0" unicorn-magic "^0.3.0" +object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +ox@0.9.3: + version "0.9.3" + resolved "https://registry.yarnpkg.com/ox/-/ox-0.9.3.tgz#92cc1008dcd913e919364fd4175c860b3eeb18db" + integrity sha512-KzyJP+fPV4uhuuqrTZyok4DC7vFzi7HLUFiUNEmpbyh59htKWkOC98IONC1zgXJPbHAhQgqs6B0Z6StCGhmQvg== + dependencies: + "@adraffy/ens-normalize" "^1.11.0" + "@noble/ciphers" "^1.3.0" + "@noble/curves" "1.9.1" + "@noble/hashes" "^1.8.0" + "@scure/bip32" "^1.7.0" + "@scure/bip39" "^1.6.0" + abitype "^1.0.9" + eventemitter3 "5.0.1" + +pako@^2.0.2: + version "2.1.0" + resolved "https://registry.yarnpkg.com/pako/-/pako-2.1.0.tgz#266cc37f98c7d883545d11335c00fbd4062c9a86" + integrity sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug== + parse-ms@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-4.0.0.tgz#c0c058edd47c2a590151a718990533fd62803df4" @@ -495,11 +2031,48 @@ path-key@^4.0.0: resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== +pathe@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-2.0.3.tgz#3ecbec55421685b70a9da872b2cff3e1cbed1716" + integrity sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w== + picocolors@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== +picomatch@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.3.tgz#796c76136d1eead715db1e7bad785dedd695a042" + integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== + +postcss@^8.5.6: + version "8.5.6" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.6.tgz#2825006615a619b4f62a9e7426cc120b349a8f3c" + integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg== + dependencies: + nanoid "^3.3.11" + picocolors "^1.1.1" + source-map-js "^1.2.1" + +prebuild-install@^7.1.1: + version "7.1.3" + resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-7.1.3.tgz#d630abad2b147443f20a212917beae68b8092eec" + integrity sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug== + dependencies: + detect-libc "^2.0.0" + expand-template "^2.0.3" + github-from-package "0.0.0" + minimist "^1.2.3" + mkdirp-classic "^0.5.3" + napi-build-utils "^2.0.0" + node-abi "^3.3.0" + pump "^3.0.0" + rc "^1.2.7" + simple-get "^4.0.0" + tar-fs "^2.0.0" + tunnel-agent "^0.6.0" + pretty-ms@^9.2.0: version "9.2.0" resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-9.2.0.tgz#e14c0aad6493b69ed63114442a84133d7e560ef0" @@ -507,22 +2080,105 @@ pretty-ms@^9.2.0: dependencies: parse-ms "^4.0.0" +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + +pump@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.3.tgz#151d979f1a29668dc0025ec589a455b53282268d" + integrity sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + query-string@^9.1.1: - version "9.2.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-9.2.1.tgz#67bd95f6e2cb64eafecfb0504be7cc38bcd4dd11" - integrity sha512-3jTGGLRzlhu/1ws2zlr4Q+GVMLCQTLFOj8CMX5x44cdZG9FQE07x2mQhaNxaKVPNmIDu0mvJ/cEwtY7Pim7hqA== + version "9.3.0" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-9.3.0.tgz#f2d60d6b4442cb445f374b5ff749b937b2cccd03" + integrity sha512-IQHOQ9aauHAApwAaUYifpEyLHv6fpVGVkMOnwPzcDScLjbLj8tLsILn6unSW79NafOw1llh8oK7Gd0VwmXBFmA== dependencies: decode-uri-component "^0.4.1" filter-obj "^5.1.0" split-on-first "^3.0.0" -ses@^1.13.1: - version "1.13.1" - resolved "https://registry.yarnpkg.com/ses/-/ses-1.13.1.tgz#f73a8f6995d82d30fe60bee96f3b16a1ffbb663e" - integrity sha512-S3bHoi+rAdeWIF1+kDHzhSnAjEUV3iVDjiBybTuZtjsjtKeJmkrWfD0S+h4Dj14bg4qTGYhjw14iaV3RwIhRGA== +rc@^1.2.7: + version "1.2.8" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== + dependencies: + deep-extend "^0.6.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== dependencies: - "@endo/env-options" "^1.1.10" - "@endo/immutable-arraybuffer" "^1.1.1" + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readonly-date@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/readonly-date/-/readonly-date-1.0.0.tgz#5af785464d8c7d7c40b9d738cbde8c646f97dcd9" + integrity sha512-tMKIV7hlk0h4mO3JTmmVuIlJVXjKk3Sep9Bf5OH0O+758ruuVkUy2J9SttDLm91IEX/WHlXPSpxMGjPj4beMIQ== + +rollup@^4.43.0: + version "4.50.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.50.1.tgz#6f0717c34aacc65cc727eeaaaccc2afc4e4485fd" + integrity sha512-78E9voJHwnXQMiQdiqswVLZwJIzdBKJ1GdI5Zx6XwoFKUIk09/sSrr+05QFzvYb8q6Y9pPV45zzDuYa3907TZA== + dependencies: + "@types/estree" "1.0.8" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.50.1" + "@rollup/rollup-android-arm64" "4.50.1" + "@rollup/rollup-darwin-arm64" "4.50.1" + "@rollup/rollup-darwin-x64" "4.50.1" + "@rollup/rollup-freebsd-arm64" "4.50.1" + "@rollup/rollup-freebsd-x64" "4.50.1" + "@rollup/rollup-linux-arm-gnueabihf" "4.50.1" + "@rollup/rollup-linux-arm-musleabihf" "4.50.1" + "@rollup/rollup-linux-arm64-gnu" "4.50.1" + "@rollup/rollup-linux-arm64-musl" "4.50.1" + "@rollup/rollup-linux-loongarch64-gnu" "4.50.1" + "@rollup/rollup-linux-ppc64-gnu" "4.50.1" + "@rollup/rollup-linux-riscv64-gnu" "4.50.1" + "@rollup/rollup-linux-riscv64-musl" "4.50.1" + "@rollup/rollup-linux-s390x-gnu" "4.50.1" + "@rollup/rollup-linux-x64-gnu" "4.50.1" + "@rollup/rollup-linux-x64-musl" "4.50.1" + "@rollup/rollup-openharmony-arm64" "4.50.1" + "@rollup/rollup-win32-arm64-msvc" "4.50.1" + "@rollup/rollup-win32-ia32-msvc" "4.50.1" + "@rollup/rollup-win32-x64-msvc" "4.50.1" + fsevents "~2.3.2" + +safe-buffer@^5.0.1, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +semver@^6.3.0: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +semver@^7.3.5: + version "7.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" + integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== + +ses@^1.14.0: + version "1.14.0" + resolved "https://registry.yarnpkg.com/ses/-/ses-1.14.0.tgz#130a6a3e80b30cd1db0fedbc507e2566469eee7f" + integrity sha512-T07hNgOfVRTLZGwSS50RnhqrG3foWP+rM+Q5Du4KUQyMLFI3A8YA4RKl0jjZzhihC1ZvDGrWi/JMn4vqbgr/Jg== + dependencies: + "@endo/cache-map" "^1.1.0" + "@endo/env-options" "^1.1.11" + "@endo/immutable-arraybuffer" "^1.1.2" shebang-command@^2.0.0: version "2.0.0" @@ -541,21 +2197,184 @@ signal-exit@^4.1.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== +simple-concat@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" + integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== + +simple-get@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-4.0.1.tgz#4a39db549287c979d352112fa03fd99fd6bc3543" + integrity sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA== + dependencies: + decompress-response "^6.0.0" + once "^1.3.1" + simple-concat "^1.0.0" + +source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== + split-on-first@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-3.0.0.tgz#f04959c9ea8101b9b0bbf35a61b9ebea784a23e7" integrity sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA== +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + strip-final-newline@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-4.0.0.tgz#35a369ec2ac43df356e3edd5dcebb6429aa1fa5c" integrity sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw== +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== + +symbol-observable@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-2.0.3.tgz#5b521d3d07a43c351055fa43b8355b62d33fd16a" + integrity sha512-sQV7phh2WCYAn81oAkakC5qjq2Ml0g8ozqz03wOGnx9dDlG1de6yrF+0RAzSJD8fPUow3PTSMf2SAbOGxb93BA== + +tar-fs@^2.0.0: + version "2.1.3" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.3.tgz#fb3b8843a26b6f13a08e606f7922875eb1fbbf92" + integrity sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg== + dependencies: + chownr "^1.1.1" + mkdirp-classic "^0.5.2" + pump "^3.0.0" + tar-stream "^2.1.4" + +tar-stream@^2.1.4: + version "2.2.0" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" + integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== + dependencies: + bl "^4.0.3" + end-of-stream "^1.4.1" + fs-constants "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.1.1" + +tinyglobby@^0.2.15: + version "0.2.15" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.15.tgz#e228dd1e638cea993d2fdb4fcd2d4602a79951c2" + integrity sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ== + dependencies: + fdir "^6.5.0" + picomatch "^4.0.3" + +tmp@^0.2.1: + version "0.2.5" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.5.tgz#b06bcd23f0f3c8357b426891726d16015abfd8f8" + integrity sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow== + +ts-blank-space@^0.4.1: + version "0.4.4" + resolved "https://registry.yarnpkg.com/ts-blank-space/-/ts-blank-space-0.4.4.tgz#05cbec3873c741f44460ce79822d654a2cc57aea" + integrity sha512-G6GkD6oEJ7j5gG2e5qAizfE4Ap7JXMpnN0CEp9FEt4LExdaqsdwB90aQsaAwcKhiSxVk5KoqFW9xfxTQ4lBUnQ== + dependencies: + typescript "5.1.6 - 5.7.x" + +tslib@2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01" + integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== + dependencies: + safe-buffer "^5.0.1" + +"typescript@5.1.6 - 5.7.x": + version "5.7.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.7.3.tgz#919b44a7dbb8583a9b856d162be24a54bf80073e" + integrity sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw== + +typescript@^5.8.3: + version "5.9.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.9.2.tgz#d93450cddec5154a2d5cabe3b8102b83316fb2a6" + integrity sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A== + +undici-types@~6.19.2: + version "6.19.8" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02" + integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw== + +undici-types@~6.21.0: + version "6.21.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb" + integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== + unicorn-magic@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.3.0.tgz#4efd45c85a69e0dd576d25532fbfa22aa5c8a104" integrity sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA== +util-deprecate@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +utility-types@^3.10.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/utility-types/-/utility-types-3.11.0.tgz#607c40edb4f258915e901ea7995607fdf319424c" + integrity sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw== + +uuid@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-11.1.0.tgz#9549028be1753bb934fc96e2bca09bb4105ae912" + integrity sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A== + +viem@^2.31.2: + version "2.37.5" + resolved "https://registry.yarnpkg.com/viem/-/viem-2.37.5.tgz#3df9e75bc25eabcf09db6d4b4a423a1f53413a37" + integrity sha512-bLKvKgLcge6KWBMLk8iP9weu5tHNr0hkxPNwQd+YQrHEgek7ogTBBeE10T0V6blwBMYmeZFZHLnMhDmPjp63/A== + dependencies: + "@noble/curves" "1.9.1" + "@noble/hashes" "1.8.0" + "@scure/bip32" "1.7.0" + "@scure/bip39" "1.6.0" + abitype "1.1.0" + isows "1.0.7" + ox "0.9.3" + ws "8.18.3" + +vite-node@^3.1.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-3.2.4.tgz#f3676d94c4af1e76898c162c92728bca65f7bb07" + integrity sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg== + dependencies: + cac "^6.7.14" + debug "^4.4.1" + es-module-lexer "^1.7.0" + pathe "^2.0.3" + vite "^5.0.0 || ^6.0.0 || ^7.0.0-0" + +"vite@^5.0.0 || ^6.0.0 || ^7.0.0-0": + version "7.1.5" + resolved "https://registry.yarnpkg.com/vite/-/vite-7.1.5.tgz#4dbcb48c6313116689be540466fc80faa377be38" + integrity sha512-4cKBO9wR75r0BeIWWWId9XK9Lj6La5X846Zw9dFfzMRw38IlTk2iCcUt6hsyiDRcPidc55ZParFYDXi0nXOeLQ== + dependencies: + esbuild "^0.25.0" + fdir "^6.5.0" + picomatch "^4.0.3" + postcss "^8.5.6" + rollup "^4.43.0" + tinyglobby "^0.2.15" + optionalDependencies: + fsevents "~2.3.3" + which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" @@ -563,7 +2382,40 @@ which@^2.0.1: dependencies: isexe "^2.0.0" +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +ws@8.17.1: + version "8.17.1" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.17.1.tgz#9293da530bb548febc95371d90f9c878727d919b" + integrity sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ== + +ws@8.18.3: + version "8.18.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.3.tgz#b56b88abffde62791c639170400c93dcb0c95472" + integrity sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg== + +ws@^7: + version "7.5.10" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9" + integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== + +xstream@^11.14.0: + version "11.14.0" + resolved "https://registry.yarnpkg.com/xstream/-/xstream-11.14.0.tgz#2c071d26b18310523b6877e86b4e54df068a9ae5" + integrity sha512-1bLb+kKKtKPbgTK6i/BaoAn03g47PpFstlbe1BA+y3pNS/LfvcaghS5BFf9+EE1J+KwSQsEpfJvFN5GqFtiNmw== + dependencies: + globalthis "^1.0.1" + symbol-observable "^2.0.3" + +yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== + yoctocolors@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/yoctocolors/-/yoctocolors-2.1.1.tgz#e0167474e9fbb9e8b3ecca738deaa61dd12e56fc" - integrity sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ== + version "2.1.2" + resolved "https://registry.yarnpkg.com/yoctocolors/-/yoctocolors-2.1.2.tgz#d795f54d173494e7d8db93150cec0ed7f678c83a" + integrity sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug== From 79aed38b54c2914877a9c27be1338347113ea214 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 9 Sep 2025 15:59:39 +0500 Subject: [PATCH 76/93] chore: document MNEMONIC details --- integration/agoric/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/integration/agoric/README.md b/integration/agoric/README.md index 076beed9..c3558e1c 100644 --- a/integration/agoric/README.md +++ b/integration/agoric/README.md @@ -23,6 +23,7 @@ The following EVM chains are supported for cross-chain operations: The following environment variables can be set in a `.env` file: +- `MNEMONIC` - **Required** - 24 word mnemonic phrase for the Agoric wallet used to sign GMP (General Message Passing) transactions. You can get one from the [Keplr extension](https://chromewebstore.google.com/detail/keplr/dmkamcknogkgcdfhhbddcghachkejeap?hl=en&pli=1). Use the [Agoric testnet faucet](https://devnet.explorer.agoric.net/agoric/faucet) to get testnet BLD tokens. BLD is required to pay for gas fees, and a default amount of 20 BLD is hardcoded in the code which is sufficient for Agoric to EVM chain transactions. - `FACTORY_ADDRESS` - Factory contract address (default: `0x726cAF5f0BA64AF97337c6Db80F5d26Aa9DEAE75`) - `REMOTE_ADDRESS` - Remote EVM address (default: `0x84f600b91AFFf07Be1c033dE21007Bc092CC096e`) - `DESTINATION_CHAIN` - Destination chain name (default: `Avalanche`) @@ -32,7 +33,7 @@ The following environment variables can be set in a `.env` file: - **Gas Amount**: 20,000,000 ubld - Gas amount allocated for Agoric to Axelar IBC (Inter-Blockchain Communication) transfers. This covers the computational cost of cross-chain message passing and execution on the destination chain. Denominated in ubld (micro BLD tokens). - **Transfer Amount**: 100,000 uusdc - Default amount for DeFi operations: - For supply operations: Amount to deposit into Aave/Compound protocols - - For withdraw operations: Amount to withdraw from Aave/Compound protocols + - For withdraw operations: Amount to withdraw from Aave/Compound protocols to the remote EVM account (not back to the Agoric wallet) - Denominated in uusdc (micro USDC tokens) ## Available Commands From 3ffff1f69ac063a82ff92f5826128657ec30372a Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 9 Sep 2025 16:07:53 +0500 Subject: [PATCH 77/93] docs: add notes on chain selection --- integration/agoric/README.md | 26 ++++++++++++++++++-------- integration/package.json | 1 - integration/yarn.lock | 2 +- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/integration/agoric/README.md b/integration/agoric/README.md index c3558e1c..efcc3b98 100644 --- a/integration/agoric/README.md +++ b/integration/agoric/README.md @@ -2,14 +2,6 @@ This CLI tool provides a command-line interface for executing cross-chain DeFi operations using Agoric's Orchestration API and Axelar's General Message Passing (GMP). -## Overview - -The `main.ts` file serves as the entry point for various cross-chain operations including: - -- Creating remote EVM accounts -- Supplying/withdrawing funds to/from Aave -- Supplying/withdrawing funds to/from Compound - ### Supported EVM Chains The following EVM chains are supported for cross-chain operations: @@ -17,6 +9,24 @@ The following EVM chains are supported for cross-chain operations: - **Ethereum** - Ethereum testnet - **Avalanche** - Avalanche testnet (Fuji) +#### Chain Selection Notes + +For most testing, we prefer Avalanche due to its fast finality, making development and testing more efficient. + +**However, there are important limitations to consider:** + +- **CCTP (Cross-Chain Transfer Protocol) doesn't work on Avalanche.** CCTP is the mechanism through which Agoric contracts send funds to remote EVM accounts (functionality not in this repo). When CCTP testing is essential, use **Ethereum testnet**. + +- **Aave Protocol on Ethereum uses different USDC** compared to Circle-issued [USDC](https://www.circle.com/usdc), which can affect testing scenarios. + +- Compound is not available on Avalanche testnet. + +**Note:** Testing is not perfect across all chains - some features work on certain testnets but not others. Choose your testnet based on the specific functionality you need to test. + +#### USDC Requirements for Testing + +For Aave/Compound testing, ensure USDC tokens are present in the remote EVM account created using the [`create-account`](#create-account) command. To get testnet USDC tokens, use the [Circle faucet](https://faucet.circle.com/). + ## Configuration ### Environment Variables diff --git a/integration/package.json b/integration/package.json index 74cc811d..2f6b627b 100644 --- a/integration/package.json +++ b/integration/package.json @@ -29,7 +29,6 @@ "cosmjs-types": "^0.9.0", "dotenv": "^16.5.0", "ethers": "6.13.4", - "execa": "^9.6.0", "viem": "^2.31.2" }, "resolutions": { diff --git a/integration/yarn.lock b/integration/yarn.lock index 292460ff..af7252dc 100644 --- a/integration/yarn.lock +++ b/integration/yarn.lock @@ -1618,7 +1618,7 @@ eventemitter3@5.0.1, eventemitter3@^5.0.1: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== -execa@^9.6.0: +execa@^9.5.2: version "9.6.0" resolved "https://registry.yarnpkg.com/execa/-/execa-9.6.0.tgz#38665530e54e2e018384108322f37f35ae74f3bc" integrity sha512-jpWzZ1ZhwUmeWRhS7Qv3mhpOhLfwI+uAX4e5fOcXqwMR7EcJ0pj2kV1CVzHVMX/LphnKWD3LObjZCoJ71lKpHw== From 05b96fb66bd38e1769f7e9bf1b6c77345df256eb Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 9 Sep 2025 16:27:04 +0500 Subject: [PATCH 78/93] chore: guide on deploying the factory contract --- integration/agoric/README.md | 31 +++++++++++++++++++++++++++++++ integration/agoric/main.ts | 3 ++- 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/integration/agoric/README.md b/integration/agoric/README.md index efcc3b98..0066e5c8 100644 --- a/integration/agoric/README.md +++ b/integration/agoric/README.md @@ -27,6 +27,37 @@ For most testing, we prefer Avalanche due to its fast finality, making developme For Aave/Compound testing, ensure USDC tokens are present in the remote EVM account created using the [`create-account`](#create-account) command. To get testnet USDC tokens, use the [Circle faucet](https://faucet.circle.com/). +## Prerequisites + +### Deploy Factory.sol Contract + +Before using the CLI, you need to deploy the [`Factory.sol`](../../packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol) contract on your target EVM chain (Avalanche or Ethereum testnet): + +1. Navigate to the contract directory: + + ```bash + cd packages/axelar-local-dev-cosmos + ``` + +2. Set up your `.env` file with the required environment variables: + - `PRIVATE_KEY` - Private key of the account that will deploy the contract (without 0x prefix) + - `INFURA_KEY` - (Optional) Infura API key for Ethereum networks + +3. Deploy the Factory contract: + + ```bash + # Navigate to project root first + cd ../../ + + # Deploy to Avalanche Fuji testnet + npm run deploy -- fuji + + # Deploy to Ethereum Sepolia testnet + npm run deploy -- sepolia + ``` + +4. Copy the deployed Factory contract address from the output and set it as `FACTORY_ADDRESS` in your integration folder `.env` file. + ## Configuration ### Environment Variables diff --git a/integration/agoric/main.ts b/integration/agoric/main.ts index 364dbb7a..77255359 100644 --- a/integration/agoric/main.ts +++ b/integration/agoric/main.ts @@ -18,8 +18,9 @@ config(); const DEFAULT_GAS_AMOUNT = 20_000_000; const DEFAULT_TRANSFER_AMOUNT = 100_000n; +// Default value is based on https://github.com/agoric-labs/agoric-to-axelar-local/pull/23 const DEFAULT_FACTORY_ADDRESS = (process.env.FACTORY_ADDRESS || - "0x726cAF5f0BA64AF97337c6Db80F5d26Aa9DEAE75") as `0x${string}`; + "0xcD58949D815d25A06560AFa539972bB5B4B28902") as `0x${string}`; const DEFAULT_REMOTE_ADDRESS = (process.env.REMOTE_ADDRESS || "0x84f600b91AFFf07Be1c033dE21007Bc092CC096e") as `0x${string}`; const DEFAULT_DESTINATION_CHAIN = (process.env.DESTINATION_CHAIN || From 790c48b1aaac81008567291d660fd603bb140cc0 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 9 Sep 2025 16:37:24 +0500 Subject: [PATCH 79/93] docs: document the process of funding factory contract --- integration/agoric/README.md | 11 +++++++++++ integration/agoric/main.ts | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/integration/agoric/README.md b/integration/agoric/README.md index 0066e5c8..74d60f5c 100644 --- a/integration/agoric/README.md +++ b/integration/agoric/README.md @@ -33,6 +33,13 @@ For Aave/Compound testing, ensure USDC tokens are present in the remote EVM acco Before using the CLI, you need to deploy the [`Factory.sol`](../../packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol) contract on your target EVM chain (Avalanche or Ethereum testnet): +**Important:** Use the correct contract version for your target chain: + +- **Avalanche**: Use the hardcoded gas version from [PR #23](https://github.com/agoric-labs/agoric-to-axelar-local/pull/23) +- **Ethereum**: Use the hardcoded gas version from [PR #24](https://github.com/agoric-labs/agoric-to-axelar-local/pull/24) + +These versions use hardcoded gas values instead of expecting the gas amount from the Agoric contract call. + 1. Navigate to the contract directory: ```bash @@ -58,6 +65,10 @@ Before using the CLI, you need to deploy the [`Factory.sol`](../../packages/axel 4. Copy the deployed Factory contract address from the output and set it as `FACTORY_ADDRESS` in your integration folder `.env` file. +5. **Fund the Factory contract with native tokens** - The deployed Factory contract needs native tokens (ETH for Ethereum, AVAX for Avalanche) to pay for gas when sending responses back to Agoric. This is required because the [`_send` function](../../packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol#L148-L164) uses `gasService.payNativeGasForContractCall{value: gasAmount}` to pay for cross-chain gas fees. + + Send native tokens to the deployed Factory contract address to ensure it can respond to Agoric requests. + ## Configuration ### Environment Variables diff --git a/integration/agoric/main.ts b/integration/agoric/main.ts index 77255359..26ad7e22 100644 --- a/integration/agoric/main.ts +++ b/integration/agoric/main.ts @@ -22,7 +22,7 @@ const DEFAULT_TRANSFER_AMOUNT = 100_000n; const DEFAULT_FACTORY_ADDRESS = (process.env.FACTORY_ADDRESS || "0xcD58949D815d25A06560AFa539972bB5B4B28902") as `0x${string}`; const DEFAULT_REMOTE_ADDRESS = (process.env.REMOTE_ADDRESS || - "0x84f600b91AFFf07Be1c033dE21007Bc092CC096e") as `0x${string}`; + "0x37859b854cc97F7bD4B69524d37EcCCEb0dbF3eb") as `0x${string}`; const DEFAULT_DESTINATION_CHAIN = (process.env.DESTINATION_CHAIN || "Avalanche") as AxelarChain; From 5f7da1762548eceb6839b7ca7b5e3910720ef1a3 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Tue, 9 Sep 2025 16:48:23 +0500 Subject: [PATCH 80/93] docs: tracking your gmp transactions --- integration/agoric/README.md | 16 ++++++++++++++++ integration/agoric/flows.ts | 14 +++++--------- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/integration/agoric/README.md b/integration/agoric/README.md index 74d60f5c..22e6984e 100644 --- a/integration/agoric/README.md +++ b/integration/agoric/README.md @@ -158,6 +158,22 @@ yarn withdraw-aave -- --remote-address 0x123...abc --withdraw-amount 50000 yarn supply-compound -- --destination-chain Ethereum --transfer-amount 150000 ``` +## Monitoring Transactions + +After executing any command, you can monitor the status of your cross-chain transactions using Axelar's testnet explorer: + +### Option 1: Check GMP Account Transactions + +Visit the [GMP account on AxelarScan](https://testnet.axelarscan.io/account/axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5) to see all GMP-related transactions. + +### Option 2: Search by Your Agoric Wallet Address + +1. Go to [Axelar Testnet Explorer](https://testnet.axelarscan.io) +2. Search for transactions using your Agoric wallet address +3. This will show all cross-chain transactions initiated from your wallet + +These tools help you track the progress and status of your cross-chain operations between Agoric and the destination EVM chains. + ## Architecture ### Flow Functions (imported from ./flows.js) diff --git a/integration/agoric/flows.ts b/integration/agoric/flows.ts index 07421b36..68bf2a5f 100644 --- a/integration/agoric/flows.ts +++ b/integration/agoric/flows.ts @@ -144,6 +144,7 @@ export const supplyToAave = async ( remoteEVMAddress: `0x${string}`, ) => { const { destinationEVMChain, transferAmount, gasAmount } = gmpArgs; + const { contractAddresses } = axelarChainsMap[destinationEVMChain]; await sendGmp({ destinationAddress: remoteEVMAddress, @@ -153,18 +154,13 @@ export const supplyToAave = async ( contractInvocationData: [ { functionSignature: "approve(address,uint256)", - args: ["0x6Ae43d3271ff6888e7Fc43Fd7321a503ff738951", transferAmount], - target: "0x94a9D9AC8a22534E3FaCa9F4e7F2E2cf85d5E4C8", + args: [contractAddresses.aavePool, transferAmount], + target: contractAddresses.usdc, }, { functionSignature: "supply(address,uint256,address,uint16)", - args: [ - "0x94a9D9AC8a22534E3FaCa9F4e7F2E2cf85d5E4C8", - transferAmount, - remoteEVMAddress, - 0, - ], - target: "0x6Ae43d3271ff6888e7Fc43Fd7321a503ff738951", + args: [contractAddresses.usdc, transferAmount, remoteEVMAddress, 0], + target: contractAddresses.aavePool, }, ], }); From 896cea76e5133e3ac8029e6d90d5d9209ba0edf6 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 17 Sep 2025 12:52:56 +0500 Subject: [PATCH 81/93] feat: add deployment support for Base, Optimism, and Arbitrum Sepolia testnets --- .../axelar-local-dev-cosmos/hardhat.config.ts | 20 +++++++++++- .../axelar-local-dev-cosmos/scripts/deploy.sh | 32 ++++++++++++++----- 2 files changed, 43 insertions(+), 9 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index 5313873b..b2802663 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -13,12 +13,30 @@ const testnets = { chainId: 43113, accounts: [`0x${PRIVATE_KEY}`], }, - sepolia: { + "eth-sepolia": { url: "https://ethereum-sepolia-rpc.publicnode.com", gasPrice: 20000000000, // 20 Gwei chainId: 11155111, accounts: [`0x${PRIVATE_KEY}`], }, + "base-sepolia": { + // source: https://docs.base.org/base-chain/quickstart/connecting-to-base + url: "https://sepolia.base.org", + chainId: 84532, + accounts: [`0x${PRIVATE_KEY}`], + }, + "opt-sepolia": { + // source: https://docs.optimism.io/superchain/networks#op-sepolia + url: "https://sepolia.optimism.io/", + chainId: 11155420, + accounts: [`0x${PRIVATE_KEY}`], + }, + "arb-sepolia": { + // source: https://docs.arbitrum.io/build-decentralized-apps/reference/node-providers#arbitrum-public-rpc-endpoints + url: "https://sepolia-rollup.arbitrum.io/rpc", + chainId: 421614, + accounts: [`0x${PRIVATE_KEY}`], + }, }; const mainnets = { diff --git a/packages/axelar-local-dev-cosmos/scripts/deploy.sh b/packages/axelar-local-dev-cosmos/scripts/deploy.sh index b35459ae..7c7899cc 100755 --- a/packages/axelar-local-dev-cosmos/scripts/deploy.sh +++ b/packages/axelar-local-dev-cosmos/scripts/deploy.sh @@ -2,8 +2,10 @@ if [[ $# -eq 0 ]]; then echo "Usage: $0 " - echo "Supported networks: avax, arb, sepolia, fuji, opt, pol" - exit 1 + echo "Supported networks:" + echo " Mainnets: avax, arb, opt, pol" + echo " Testnets: eth-sepolia, fuji, base-sepolia, opt-sepolia, arb-sepolia" + exit 0 fi network=$1 @@ -33,6 +35,7 @@ delete_deployments_folder() { # Mainnet: https://docs.axelar.dev/dev/reference/mainnet-contract-addresses/ # Testnet: https://docs.axelar.dev/dev/reference/testnet-contract-addresses/ case $network in +# Mainnets avax) GATEWAY='0x5029C0EFf6C34351a0CEc334542cDb22c7928f78' GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' @@ -41,7 +44,16 @@ arb) GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' ;; -sepolia) +opt) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; +pol) + GATEWAY='0x6f015F16De9fC8791b234eF68D486d2bF203FBA8' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; +# Testnets +eth-sepolia) GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' ;; @@ -49,13 +61,17 @@ fuji) GATEWAY='0xC249632c2D40b9001FE907806902f63038B737Ab' GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' ;; -opt) +base-sepolia) GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' - GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' ;; -pol) - GATEWAY='0x6f015F16De9fC8791b234eF68D486d2bF203FBA8' - GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' +opt-sepolia) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' + ;; +arb-sepolia) + GATEWAY='0xe1cE95479C84e9809269227C7F8524aE051Ae77a' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' ;; *) echo "Invalid network specified" From 828153633033d4ad09400057f1db7b960df52501 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Wed, 1 Oct 2025 13:13:38 +0200 Subject: [PATCH 82/93] fix: missing Ownership check on _executeWithToken --- .../src/__tests__/Factory.spec.ts | 37 ------------------- .../src/__tests__/contracts/Factory.sol | 10 ----- 2 files changed, 47 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts index 887316ca..6ed5fd6b 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts @@ -207,42 +207,5 @@ describe("Factory", () => { const value = await multicall.getValue(); expect(value).to.equal(27); - // Test ContractCallWithToken - const abiEncodedCallsWithTokens = [ - constructContractCall({ - target: multicallAddress, - functionSignature: "addToValue(uint256)", - args: [17], - }), - ]; - const multicallPayload2 = encodeMulticallPayload(abiEncodedCallsWithTokens, "tx2"); - const payloadHash2 = getPayloadHash(multicallPayload2); - - const commandId2 = getCommandId(); - await approveMessageWithToken({ - commandId: commandId2, - from: sourceContract, - sourceAddress, - targetAddress: wallet.target, - payload: payloadHash2, - owner, - AxelarGateway: axelarGatewayMock, - abiCoder, - destinationTokenSymbol: "USDC", - amount: 5000, - }); - - const execWithTokenTx = await wallet.executeWithToken( - commandId2, - sourceContract, - sourceAddress, - multicallPayload2, - "USDC", - 5000, - ); - - expect(execWithTokenTx).to.emit(wallet, "MulticallExecuted"); - const value2 = await multicall.getValue(); - expect(value2).to.equal(44); }); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 0e4334ad..a8f49b57 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -67,16 +67,6 @@ contract Wallet is AxelarExecutable, Ownable { _multicall(payload); } - function _executeWithToken( - string calldata /*sourceChain*/, - string calldata /*sourceAddress*/, - bytes calldata payload, - string calldata /*tokenSymbol*/, - uint256 /*amount*/ - ) internal override { - _multicall(payload); - } - receive() external payable { emit Received(msg.sender, msg.value); } From e473e5e978454ccf69ae3300b3cacd6de0729f30 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Wed, 1 Oct 2025 16:58:19 +0200 Subject: [PATCH 83/93] fix: internal method is marked public --- .../src/__tests__/contracts/Factory.sol | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index a8f49b57..f46ad678 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -104,7 +104,7 @@ contract Factory is AxelarExecutable { _gateway = gateway_; } - function createSmartWallet(string memory owner) public returns (address) { + function _createSmartWallet(string memory owner) internal returns (address) { address newWallet = address( new Wallet(_gateway, address(gasService), owner) ); @@ -117,7 +117,7 @@ contract Factory is AxelarExecutable { bytes calldata payload ) internal override { uint256 gasAmount = abi.decode(payload, (uint256)); - address smartWalletAddress = createSmartWallet(sourceAddress); + address smartWalletAddress = _createSmartWallet(sourceAddress); emit SmartWalletCreated( smartWalletAddress, sourceAddress, From cdd7ec3359800d3461e7741bf52c139fc85d59ad Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Wed, 1 Oct 2025 17:25:46 +0200 Subject: [PATCH 84/93] chore: use gas efficient patterns --- .../src/__tests__/contracts/Factory.sol | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index f46ad678..92a6b529 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -28,6 +28,8 @@ struct CallMessage { ContractCalls[] calls; } +error ContractCallFailed(string messageId, uint256 step); + contract Wallet is AxelarExecutable, Ownable { IAxelarGasService public gasService; @@ -38,7 +40,7 @@ contract Wallet is AxelarExecutable, Ownable { address gateway_, address gasReceiver_, string memory owner_ - ) AxelarExecutable(gateway_) Ownable(owner_) { + ) AxelarExecutable(gateway_) Ownable(owner_) payable { gasService = IAxelarGasService(gasReceiver_); } @@ -48,12 +50,21 @@ contract Wallet is AxelarExecutable, Ownable { CallResult[] memory results = new CallResult[](calls.length); - for (uint256 i = 0; i < calls.length; i++) { + uint256 len = calls.length; + for (uint256 i = 0; i < len;) { (bool success, bytes memory result) = calls[i].target.call( calls[i].data ); - require(success, "Contract call failed"); + + if (!success) { + revert ContractCallFailed(callMessage.id, i); + } + results[i] = CallResult(success, result); + + unchecked { + ++i; + } } emit MulticallExecuted(callMessage.id, results); @@ -99,7 +110,7 @@ contract Factory is AxelarExecutable { constructor( address gateway_, address gasReceiver_ - ) AxelarExecutable(gateway_) { + ) AxelarExecutable(gateway_) payable { gasService = IAxelarGasService(gasReceiver_); _gateway = gateway_; } From defd7839d543096b6f9d3cee226d30297e6cfdb2 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 1 Oct 2025 16:31:05 +0500 Subject: [PATCH 85/93] chore: add event tracing for smart wallet multicall execution --- .../src/__tests__/contracts/Factory.sol | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 92a6b529..b895379d 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -33,7 +33,14 @@ error ContractCallFailed(string messageId, uint256 step); contract Wallet is AxelarExecutable, Ownable { IAxelarGasService public gasService; - event MulticallExecuted(string indexed id, CallResult[] results); + event CallStatus( + string indexed id, + uint256 indexed callIndex, + address indexed target, + bytes4 methodSelector, + bool success + ); + event MulticallStatus(string indexed id, bool success, uint256 totalCalls); event Received(address indexed sender, uint256 amount); constructor( @@ -48,26 +55,31 @@ contract Wallet is AxelarExecutable, Ownable { CallMessage memory callMessage = abi.decode(payload, (CallMessage)); ContractCalls[] memory calls = callMessage.calls; - CallResult[] memory results = new CallResult[](calls.length); - uint256 len = calls.length; for (uint256 i = 0; i < len;) { (bool success, bytes memory result) = calls[i].target.call( calls[i].data ); + + emit CallStatus( + callMessage.id, + i, + calls[i].target, + bytes4(calls[i].data), + success + ); if (!success) { + emit MulticallStatus(callMessage.id, false, calls.length); revert ContractCallFailed(callMessage.id, i); } - results[i] = CallResult(success, result); - unchecked { ++i; } } - emit MulticallExecuted(callMessage.id, results); + emit MulticallStatus(callMessage.id, true, calls.length); } function _execute( From fa4c29a01e779a535665de23c4a5c14f8b8c4863 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Wed, 1 Oct 2025 16:41:58 +0500 Subject: [PATCH 86/93] test: update tests to check for new events being emitted --- .../src/__tests__/Factory.spec.ts | 34 +++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts index 6ed5fd6b..bf8e6085 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts @@ -181,7 +181,10 @@ describe("Factory", () => { args: [17], }), ]; - const multicallPayload = encodeMulticallPayload(abiEncodedContractCalls, "tx1"); + const multicallPayload = encodeMulticallPayload( + abiEncodedContractCalls, + "tx1", + ); const payloadHash = getPayloadHash(multicallPayload); const commandId1 = getCommandId(); @@ -203,7 +206,34 @@ describe("Factory", () => { multicallPayload, ); - expect(execTx).to.emit(wallet, "MulticallExecuted"); + const receipt = await execTx.wait(); + const walletInterface = wallet.interface; + + // Check CallStatus events for each call + const callStatusEvents = receipt?.logs + .map((log) => { + try { + return walletInterface.parseLog(log); + } catch { + return null; + } + }) + .filter((parsed) => parsed && parsed.name === "CallStatus"); + + expect(callStatusEvents).to.have.lengthOf(2); + expect(callStatusEvents[0]?.args.callIndex).to.equal(0); + expect(callStatusEvents[0]?.args.target).to.equal(multicallAddress); + expect(callStatusEvents[0]?.args.success).to.be.true; + + expect(callStatusEvents[1]?.args.callIndex).to.equal(1); + expect(callStatusEvents[1]?.args.target).to.equal(multicallAddress); + expect(callStatusEvents[1]?.args.success).to.be.true; + + // Check MulticallStatus event + await expect(execTx) + .to.emit(wallet, "MulticallStatus") + .withArgs("tx1", true, 2); + const value = await multicall.getValue(); expect(value).to.equal(27); From ecfa64e6169e75b831326c78ad7de69e69ed4c79 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Thu, 2 Oct 2025 13:27:29 +0200 Subject: [PATCH 87/93] chore: remove unused var --- .../axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index b895379d..89e1786b 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -57,7 +57,7 @@ contract Wallet is AxelarExecutable, Ownable { uint256 len = calls.length; for (uint256 i = 0; i < len;) { - (bool success, bytes memory result) = calls[i].target.call( + (bool success, ) = calls[i].target.call( calls[i].data ); From d38584526076f1cbd821a0f7aed25e6ed390456a Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Thu, 2 Oct 2025 18:22:28 +0500 Subject: [PATCH 88/93] chore: script to verify contracts --- .../axelar-local-dev-cosmos/hardhat.config.ts | 18 +++++++++++++++++- .../axelar-local-dev-cosmos/scripts/deploy.sh | 2 +- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/hardhat.config.ts b/packages/axelar-local-dev-cosmos/hardhat.config.ts index b2802663..19956f67 100644 --- a/packages/axelar-local-dev-cosmos/hardhat.config.ts +++ b/packages/axelar-local-dev-cosmos/hardhat.config.ts @@ -4,7 +4,7 @@ import { HardhatUserConfig } from "hardhat/config"; envConfig(); -const { INFURA_KEY, PRIVATE_KEY } = process.env; +const { INFURA_KEY, PRIVATE_KEY, ETHERSCAN_API_KEY } = process.env; const testnets = { fuji: { @@ -118,6 +118,22 @@ const config: HardhatUserConfig = { mocha: { timeout: 200000, }, + etherscan: { + apiKey: { + // Testnets + avalancheFujiTestnet: ETHERSCAN_API_KEY || "", + sepolia: ETHERSCAN_API_KEY || "", + baseSepolia: ETHERSCAN_API_KEY || "", + optimismSepolia: ETHERSCAN_API_KEY || "", + arbitrumSepolia: ETHERSCAN_API_KEY || "", + // Mainnets + mainnet: ETHERSCAN_API_KEY || "", + arbitrumOne: ETHERSCAN_API_KEY || "", + avalanche: ETHERSCAN_API_KEY || "", + optimisticEthereum: ETHERSCAN_API_KEY || "", + polygon: ETHERSCAN_API_KEY || "", + }, + }, }; export default config; diff --git a/packages/axelar-local-dev-cosmos/scripts/deploy.sh b/packages/axelar-local-dev-cosmos/scripts/deploy.sh index 7c7899cc..100add25 100755 --- a/packages/axelar-local-dev-cosmos/scripts/deploy.sh +++ b/packages/axelar-local-dev-cosmos/scripts/deploy.sh @@ -17,7 +17,7 @@ deploy_contract() { GATEWAY_CONTRACT="$gateway_contract" \ GAS_SERVICE_CONTRACT="$gas_service_contract" \ - npx hardhat ignition deploy "$contract_path" --network "$network" + npx hardhat ignition deploy "$contract_path" --network "$network" --verify } delete_deployments_folder() { From 4e202b628ee1aa785c4531188dc5b5ef71b5c629 Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Fri, 3 Oct 2025 09:19:22 +0500 Subject: [PATCH 89/93] chore: dont emit MultiCallStatus upon failure --- .../src/__tests__/contracts/Factory.sol | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 89e1786b..712248b5 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -47,7 +47,7 @@ contract Wallet is AxelarExecutable, Ownable { address gateway_, address gasReceiver_, string memory owner_ - ) AxelarExecutable(gateway_) Ownable(owner_) payable { + ) payable AxelarExecutable(gateway_) Ownable(owner_) { gasService = IAxelarGasService(gasReceiver_); } @@ -56,10 +56,8 @@ contract Wallet is AxelarExecutable, Ownable { ContractCalls[] memory calls = callMessage.calls; uint256 len = calls.length; - for (uint256 i = 0; i < len;) { - (bool success, ) = calls[i].target.call( - calls[i].data - ); + for (uint256 i = 0; i < len; ) { + (bool success, ) = calls[i].target.call(calls[i].data); emit CallStatus( callMessage.id, @@ -68,9 +66,8 @@ contract Wallet is AxelarExecutable, Ownable { bytes4(calls[i].data), success ); - + if (!success) { - emit MulticallStatus(callMessage.id, false, calls.length); revert ContractCallFailed(callMessage.id, i); } @@ -122,12 +119,14 @@ contract Factory is AxelarExecutable { constructor( address gateway_, address gasReceiver_ - ) AxelarExecutable(gateway_) payable { + ) payable AxelarExecutable(gateway_) { gasService = IAxelarGasService(gasReceiver_); _gateway = gateway_; } - function _createSmartWallet(string memory owner) internal returns (address) { + function _createSmartWallet( + string memory owner + ) internal returns (address) { address newWallet = address( new Wallet(_gateway, address(gasService), owner) ); From a21a906e6423e26febf622f9bc969574660ea7fb Mon Sep 17 00:00:00 2001 From: rabi-siddique Date: Fri, 3 Oct 2025 09:20:09 +0500 Subject: [PATCH 90/93] chore: emit CallStatus after checking success for contract call --- .../src/__tests__/contracts/Factory.sol | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index 712248b5..a0e23763 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -59,6 +59,10 @@ contract Wallet is AxelarExecutable, Ownable { for (uint256 i = 0; i < len; ) { (bool success, ) = calls[i].target.call(calls[i].data); + if (!success) { + revert ContractCallFailed(callMessage.id, i); + } + emit CallStatus( callMessage.id, i, @@ -67,10 +71,6 @@ contract Wallet is AxelarExecutable, Ownable { success ); - if (!success) { - revert ContractCallFailed(callMessage.id, i); - } - unchecked { ++i; } From d7e2920ff4ef428d9d6a7073d20ca2f14c839f71 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Fri, 3 Oct 2025 11:15:16 +0200 Subject: [PATCH 91/93] chore: add script to verify wallet contracts for debugging --- packages/axelar-local-dev-cosmos/package.json | 3 +- .../axelar-local-dev-cosmos/scripts/deploy.sh | 53 ++----------------- .../scripts/network-config.sh | 53 +++++++++++++++++++ .../axelar-local-dev-cosmos/scripts/verify.sh | 49 +++++++++++++++++ 4 files changed, 109 insertions(+), 49 deletions(-) create mode 100644 packages/axelar-local-dev-cosmos/scripts/network-config.sh create mode 100755 packages/axelar-local-dev-cosmos/scripts/verify.sh diff --git a/packages/axelar-local-dev-cosmos/package.json b/packages/axelar-local-dev-cosmos/package.json index b12dad9c..c3885398 100644 --- a/packages/axelar-local-dev-cosmos/package.json +++ b/packages/axelar-local-dev-cosmos/package.json @@ -25,7 +25,8 @@ "testWallet": "ts-node scripts/runner.ts testWallet", "testFactory": "ts-node scripts/runner.ts testFactory", "test:proxy": "hardhat test src/__tests__/Factory.spec.ts", - "coverage:proxy": "npx hardhat coverage --testfiles src/__tests__/Factory.spec.ts" + "coverage:proxy": "npx hardhat coverage --testfiles src/__tests__/Factory.spec.ts", + "verify": "./scripts/verify.sh" }, "dependencies": { "@axelar-network/axelar-local-dev": "^2.3.2", diff --git a/packages/axelar-local-dev-cosmos/scripts/deploy.sh b/packages/axelar-local-dev-cosmos/scripts/deploy.sh index 100add25..baa130fd 100755 --- a/packages/axelar-local-dev-cosmos/scripts/deploy.sh +++ b/packages/axelar-local-dev-cosmos/scripts/deploy.sh @@ -1,5 +1,9 @@ #!/bin/bash +# Get the directory of the script +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +source "$SCRIPT_DIR/network-config.sh" + if [[ $# -eq 0 ]]; then echo "Usage: $0 " echo "Supported networks:" @@ -30,54 +34,7 @@ delete_deployments_folder() { fi } - -# Mainnet and testnet contract addresses sourced from: -# Mainnet: https://docs.axelar.dev/dev/reference/mainnet-contract-addresses/ -# Testnet: https://docs.axelar.dev/dev/reference/testnet-contract-addresses/ -case $network in -# Mainnets -avax) - GATEWAY='0x5029C0EFf6C34351a0CEc334542cDb22c7928f78' - GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' - ;; -arb) - GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' - GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' - ;; -opt) - GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' - GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' - ;; -pol) - GATEWAY='0x6f015F16De9fC8791b234eF68D486d2bF203FBA8' - GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' - ;; -# Testnets -eth-sepolia) - GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' - GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' - ;; -fuji) - GATEWAY='0xC249632c2D40b9001FE907806902f63038B737Ab' - GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' - ;; -base-sepolia) - GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' - GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' - ;; -opt-sepolia) - GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' - GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' - ;; -arb-sepolia) - GATEWAY='0xe1cE95479C84e9809269227C7F8524aE051Ae77a' - GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' - ;; -*) - echo "Invalid network specified" - exit 1 - ;; -esac +get_network_config "$network" delete_deployments_folder "ignition/deployments" deploy_contract "./ignition/modules/deployFactory.ts" "$GATEWAY" "$GAS_SERVICE" diff --git a/packages/axelar-local-dev-cosmos/scripts/network-config.sh b/packages/axelar-local-dev-cosmos/scripts/network-config.sh new file mode 100644 index 00000000..0b877084 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/network-config.sh @@ -0,0 +1,53 @@ +#!/bin/bash + +# Mainnet and testnet contract addresses sourced from: +# Mainnet: https://docs.axelar.dev/dev/reference/mainnet-contract-addresses/ +# Testnet: https://docs.axelar.dev/dev/reference/testnet-contract-addresses/ +get_network_config() { + local network=$1 + + case $network in + # Mainnets + avax) + GATEWAY='0x5029C0EFf6C34351a0CEc334542cDb22c7928f78' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; + arb) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; + opt) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; + pol) + GATEWAY='0x6f015F16De9fC8791b234eF68D486d2bF203FBA8' + GAS_SERVICE='0x2d5d7d31F671F86C782533cc367F14109a082712' + ;; + # Testnets + eth-sepolia) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' + ;; + fuji) + GATEWAY='0xC249632c2D40b9001FE907806902f63038B737Ab' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' + ;; + base-sepolia) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' + ;; + opt-sepolia) + GATEWAY='0xe432150cce91c13a887f7D836923d5597adD8E31' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' + ;; + arb-sepolia) + GATEWAY='0xe1cE95479C84e9809269227C7F8524aE051Ae77a' + GAS_SERVICE='0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6' + ;; + *) + echo "Invalid network specified" + exit 1 + ;; + esac +} diff --git a/packages/axelar-local-dev-cosmos/scripts/verify.sh b/packages/axelar-local-dev-cosmos/scripts/verify.sh new file mode 100755 index 00000000..56efccd9 --- /dev/null +++ b/packages/axelar-local-dev-cosmos/scripts/verify.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +# This script is used to verify any Wallet contract +# By verifying a wallet contract, we can attach its source code to a public +# explorer (e.g snowtrace) which can be used later by a debugger (e.g tenderly) to make +# a human readable stack trace. This is helpful for figuring out why a +# certain contract call failed. +# +# For verification we will need: +# 1. The address of the contract +# 2. The owner address (an agoric bech32 address) of the contract +# the second argument can be found by decoding the `SmartWalletCreated` +# event of the tx that created the contract in the first place +# e.g https://testnet.snowtrace.io/tx/0x0de743f69831ae404925307d1c25af941c276ccffdc6713db886ae4ec688f1e0/eventlog?chainid=43113 + + +# Get the directory of the script +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +source "$SCRIPT_DIR/network-config.sh" + +if [[ $# -lt 3 ]]; then + echo "Usage: $0 " + echo "Supported networks:" + echo " Mainnets: avax, arb, opt, pol" + echo " Testnets: eth-sepolia, fuji, base-sepolia, opt-sepolia, arb-sepolia" + echo "" + echo "Example:" + echo " $0 fuji 0x123... agoric1..." + exit 0 +fi + +network=$1 +wallet_address=$2 +owner=$3 + +get_network_config "$network" + +echo "Verifying Wallet contract at: $wallet_address" +echo "Network: $network" +echo "Gateway: $GATEWAY" +echo "Gas Service: $GAS_SERVICE" +echo "Owner: $owner" + +npx hardhat verify --network "$network" \ + "$wallet_address" \ + "$GATEWAY" \ + "$GAS_SERVICE" \ + "$owner" \ + --contract "src/__tests__/contracts/Factory.sol:Wallet" From f5af603cf5fcf114d6c04de7fef6f0337aefe884 Mon Sep 17 00:00:00 2001 From: Fraz Arshad Date: Fri, 3 Oct 2025 13:09:45 +0200 Subject: [PATCH 92/93] docs: updated verify.sh doc --- packages/axelar-local-dev-cosmos/scripts/verify.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/axelar-local-dev-cosmos/scripts/verify.sh b/packages/axelar-local-dev-cosmos/scripts/verify.sh index 56efccd9..4a4d1d7c 100755 --- a/packages/axelar-local-dev-cosmos/scripts/verify.sh +++ b/packages/axelar-local-dev-cosmos/scripts/verify.sh @@ -1,7 +1,7 @@ #!/bin/bash # This script is used to verify any Wallet contract -# By verifying a wallet contract, we can attach its source code to a public +# By verifying a Wallet contract, we can attach its source code to a public # explorer (e.g snowtrace) which can be used later by a debugger (e.g tenderly) to make # a human readable stack trace. This is helpful for figuring out why a # certain contract call failed. @@ -9,7 +9,7 @@ # For verification we will need: # 1. The address of the contract # 2. The owner address (an agoric bech32 address) of the contract -# the second argument can be found by decoding the `SmartWalletCreated` +# both values can be found by decoding the `SmartWalletCreated` # event of the tx that created the contract in the first place # e.g https://testnet.snowtrace.io/tx/0x0de743f69831ae404925307d1c25af941c276ccffdc6713db886ae4ec688f1e0/eventlog?chainid=43113 From 00c759e25d1350d2e0bec95035a3c667584e0df3 Mon Sep 17 00:00:00 2001 From: Mudassir Shabbir Date: Mon, 6 Oct 2025 17:27:12 +0500 Subject: [PATCH 93/93] feat: support multiaccount creation --- BATCH_ACCOUNTS_UPGRADE.md | 389 ++++++++++++++++++ .../src/__tests__/Factory.spec.ts | 175 ++++++++ .../src/__tests__/contracts/Factory.sol | 78 +++- 3 files changed, 629 insertions(+), 13 deletions(-) create mode 100644 BATCH_ACCOUNTS_UPGRADE.md diff --git a/BATCH_ACCOUNTS_UPGRADE.md b/BATCH_ACCOUNTS_UPGRADE.md new file mode 100644 index 00000000..159952c7 --- /dev/null +++ b/BATCH_ACCOUNTS_UPGRADE.md @@ -0,0 +1,389 @@ +# Factory Contract Upgrade for Batch Account Creation + +## Overview + +This document describes the changes needed to the Factory.sol contract to support batch account creation for the Agoric portfolio contract's accounts manager. + +## Current Implementation Issues + +The current Factory contract (lines 136-158) has these limitations: + +1. **Single account only**: Always creates exactly 1 account per request +2. **Hardcoded behavior**: No way to specify how many accounts to create +3. **Single response**: Returns only 1 address in the response array +4. **Inefficient**: Requires N separate GMP calls for N accounts (each taking 15-30 minutes) + +## Required Changes + +### 1. New Request Payload Structure + +**Current (Legacy)**: +```solidity +uint256 gasAmount = abi.decode(payload, (uint256)); +// Creates 1 account, gasAmount used for return message +``` + +**New (Batch Support)**: +```solidity +struct AccountCreationRequest { + uint256 count; // Number of accounts to create (1-N) + uint256 gasAmount; // Gas for return message +} + +AccountCreationRequest memory req = abi.decode(payload, (AccountCreationRequest)); +// Creates req.count accounts +``` + +### 2. Backward Compatibility + +The new implementation uses try/catch to support both formats: + +```solidity +try this.decodeAccountCreationRequest(payload) returns ( + uint256 _count, + uint256 _gasAmount +) { + count = _count; + gasAmount = _gasAmount; +} catch { + // Fall back to legacy format + gasAmount = abi.decode(payload, (uint256)); + count = 1; +} +``` + +**Benefits**: +- Existing portfolio contracts continue to work +- No breaking changes for deployed code +- Gradual migration path + +### 3. Batch Account Creation Loop + +**Old Code** (line 142): +```solidity +address smartWalletAddress = _createSmartWallet(sourceAddress); +``` + +**New Code** (lines 175-187): +```solidity +CallResult[] memory results = new CallResult[](count); + +for (uint256 i = 0; i < count; i++) { + address smartWalletAddress = _createSmartWallet(sourceAddress); + + emit SmartWalletCreated( + smartWalletAddress, + sourceAddress, + sourceChain, + sourceAddress + ); + + results[i] = CallResult(true, abi.encode(smartWalletAddress)); +} +``` + +**Changes**: +- Dynamic `results` array sized to `count` +- Loop creates multiple wallets in single transaction +- Each wallet address stored in results array +- Individual events emitted for each wallet +- Additional batch event if count > 1 + +### 4. Multiple Addresses in Response + +**Old Response** (line 149): +```solidity +CallResult[] memory results = new CallResult[](1); +results[0] = CallResult(true, abi.encode(smartWalletAddress)); +``` + +**New Response** (lines 175, 187): +```solidity +CallResult[] memory results = new CallResult[](count); +// ... loop fills results[0] through results[count-1] ... +``` + +**Impact**: +- Response payload now contains multiple addresses +- Agoric-side must iterate through results array +- Each result still has same structure (success + encoded address) + +### 5. New Event for Batch Creation + +```solidity +event BatchSmartWalletsCreated( + uint256 count, + string owner, + string sourceChain, + string sourceAddress +); +``` + +Emitted when `count > 1` to distinguish batch from single creation. + +## Agoric-Side Changes Needed + +### Update Payload Encoding + +**In `pos-gmp.flows.ts`, update `sendMakeAccountCall`**: + +```typescript +// Current payload encoding: +const payload = buildGasPayload(evmGas); + +// New payload encoding for batch: +const payload = encodeAccountCreationRequest(count, evmGas); + +// Helper function to add: +function encodeAccountCreationRequest(count: number, gasAmount: bigint) { + if (count === 1) { + // Use legacy format for single account (backward compat) + return buildGasPayload(gasAmount); + } else { + // Use new struct format for batch + // ABI encoding of struct AccountCreationRequest { count, gasAmount } + return ethers.utils.defaultAbiCoder.encode( + ['tuple(uint256,uint256)'], + [[count, gasAmount]] + ); + } +} +``` + +### Update Response Handling + +**In `portfolio.exo.ts` parseInboundTransferWatcher**: + +Currently expects single address (line 375): +```typescript +const [address] = decodeAbiParameters([{ type: 'address' }], result2); +``` + +Update to handle multiple addresses: +```typescript +// The response is CallResult[] where each CallResult.result contains an address +const addresses = data.map(callResult => { + const [address] = decodeAbiParameters([{ type: 'address' }], callResult.result); + return address; +}); + +// Process each address +for (const address of addresses) { + const accountInfo: GMPAccountInfo = { + namespace: 'eip155', + chainName, + chainId: caipId, + remoteAddress: address, + }; + + // Route to accounts manager (existing logic) + if (accountsManager && !isReservedByPortfolio) { + accountsManager.addAccountToPool(chainName, accountInfo); + } else { + this.facets.manager.resolveAccount(accountInfo); + } +} +``` + +## Gas Considerations + +### Cost Comparison + +**Current (5 individual requests)**: +- 5 separate GMP calls × (gas per call) +- 5 × 15-30 minutes waiting time +- Higher total gas due to repeated overhead + +**New (1 batch request)**: +- 1 GMP call with loop overhead +- 1 × 15-30 minutes waiting time +- Lower total gas (shared GMP overhead) + +### Estimated Gas Usage + +``` +Single Account Creation: +- Wallet deployment: ~500,000 gas +- GMP overhead: ~100,000 gas +- Total: ~600,000 gas per account + +Batch 5 Accounts: +- 5 × Wallet deployment: ~2,500,000 gas +- GMP overhead (once): ~100,000 gas +- Loop overhead: ~10,000 gas +- Total: ~2,610,000 gas for 5 accounts +- Savings: 390,000 gas vs 5 individual calls +``` + +## Deployment Steps + +### 1. Test New Factory Contract + +```bash +# Compile +cd packages/axelar-local-dev-cosmos +forge build + +# Test with single account (legacy) +# Should still work with old payload format + +# Test with batch +# Should create multiple accounts from new payload format +``` + +### 2. Update Agoric Contract + +```bash +# Deploy updated portfolio contract with: +# - Updated sendMakeAccountCall with new payload encoding +# - Updated GMP callback to handle multiple addresses +``` + +### 3. Verify Integration + +```bash +# 1. Create single account (backward compat test) +# 2. Create batch of 5 accounts +# 3. Verify all 5 addresses returned in single GMP response +# 4. Verify accounts manager receives all 5 accounts +``` + +## Migration Path + +### Phase 1: Deploy New Factory +- Deploy updated Factory.sol to testnet +- Verify backward compatibility with existing portfolios +- Existing single-account requests still work + +### Phase 2: Update Agoric Contract +- Deploy updated portfolio contract +- Accounts manager starts using batch creation +- Falls back to individual creation if needed + +### Phase 3: Monitor & Optimize +- Monitor gas usage vs old approach +- Adjust ACCOUNTS_TO_CREATE constant based on: + - Gas costs + - Pool depletion rates + - User demand patterns + +## Rollback Plan + +If issues arise: + +1. **Factory Issues**: Redeploy old Factory.sol + - All requests fall back to single account creation + - Accounts manager still works (sends 5 individual requests) + +2. **Agoric Issues**: Revert portfolio contract + - Disable accounts manager in context + - Use direct account creation (provideEVMAccount) + +3. **Both**: Complete rollback + - Old factory + old portfolio + - System works as before, just slower + +## Success Metrics + +Track these metrics to verify improvement: + +1. **Account Creation Time** + - Before: 5 accounts × 20 min avg = 100 minutes + - After: 1 batch × 20 min avg = 20 minutes + - Target: 80% reduction in total time + +2. **Gas Costs** + - Before: 5 × 600k = 3,000,000 gas + - After: 1 × 2,610,000 gas + - Target: 13% gas savings + +3. **User Experience** + - Before: Wait 15-30 min for account + - After: Instant (from pool) + - Target: <1 second for 95% of requests + +4. **Pool Health** + - Monitor: availableAccounts per chain + - Target: Always ≥3 accounts available + - Alert: If pool drops to 0 + +## Code Changes Summary + +### Files Modified + +1. **Factory.sol** (NEW version provided) + - Add `AccountCreationRequest` struct + - Update `_execute` to support batch creation + - Add backward compatibility logic + - Add `BatchSmartWalletsCreated` event + - Add `decodeAccountCreationRequest` helper + +2. **pos-gmp.flows.ts** (TODO) + - Update `buildGasPayload` or add `encodeAccountCreationRequest` + - Modify `sendMakeAccountCall` to use new encoding when count > 1 + +3. **portfolio.exo.ts** (TODO) + - Update `parseInboundTransferWatcher.onFulfilled` + - Handle array of addresses instead of single address + - Loop through addresses and route each to accounts manager + +## Testing Checklist + +- [ ] Factory compiles without errors +- [ ] Factory accepts legacy uint256 payload (single account) +- [ ] Factory accepts new struct payload (batch accounts) +- [ ] Single account creation emits SmartWalletCreated event +- [ ] Batch creation emits BatchSmartWalletsCreated event +- [ ] Response contains correct number of addresses +- [ ] All created addresses are valid and functional +- [ ] Agoric callback receives all addresses +- [ ] Accounts manager populates pool correctly +- [ ] Pool auto-replenishment works +- [ ] Gas usage is within expected range + +## Additional Notes + +### Security Considerations + +1. **Gas Limits**: Large batch sizes could hit block gas limits + - Recommend max batch size of 10 accounts + - Current ACCOUNTS_TO_CREATE = 5 is safe + +2. **Denial of Service**: Malicious requests with huge count + - Consider adding `require(count <= MAX_BATCH_SIZE)` + - Suggested MAX_BATCH_SIZE = 10 + +3. **Address Verification**: Ensure all addresses are unique + - Factory CREATE2 ensures uniqueness by default + - No additional checks needed + +### Performance Optimizations + +1. **Parallel Processing**: EVM naturally parallelizes CREATE operations +2. **Memory Efficiency**: Pre-allocate results array (already done) +3. **Event Batching**: Consider single event with address array for fewer logs + +### Future Enhancements + +1. **Named Batches**: Include correlation ID in payload +2. **Partial Success**: Return addresses even if some creations fail +3. **Refund Logic**: Return unused gas if count < requested +4. **Access Control**: Whitelist of allowed source addresses + +--- + +## Quick Reference: What Changed + +| Aspect | Old | New | +|--------|-----|-----| +| Payload | `uint256 gasAmount` | `struct { count, gasAmount }` | +| Accounts Created | Always 1 | 1 to N (configurable) | +| Response Size | 1 address | N addresses | +| GMP Calls Needed | N (for N accounts) | 1 (for N accounts) | +| Time for 5 Accounts | ~100 minutes | ~20 minutes | +| Gas for 5 Accounts | ~3,000,000 | ~2,610,000 | +| User Wait Time | 15-30 minutes | <1 second (from pool) | + +--- + +**Implementation Status**: ✅ Agoric-side complete, ⏳ Factory.sol update needed diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts index bf8e6085..053b47ab 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts +++ b/packages/axelar-local-dev-cosmos/src/__tests__/Factory.spec.ts @@ -238,4 +238,179 @@ describe("Factory", () => { expect(value).to.equal(27); }); + + it("should create multiple wallets with batch request", async () => { + const commandId = getCommandId(); + + const batchRequest = { + count: 5, + gasAmount: 50000, + }; + const payload = abiCoder.encode( + ["tuple(uint256,uint256)"], + [[batchRequest.count, batchRequest.gasAmount]], + ); + const payloadHash = keccak256(toBytes(payload)); + + await approveMessage({ + commandId, + from: sourceContract, + sourceAddress, + targetAddress: factory.target, + payload: payloadHash, + owner, + AxelarGateway: axelarGatewayMock, + abiCoder, + }); + + const tx = await factory.execute( + commandId, + sourceContract, + sourceAddress, + payload, + ); + + const receipt = await tx.wait(); + const factoryInterface = factory.interface; + + const smartWalletCreatedEvents = receipt?.logs + .map((log) => { + try { + return factoryInterface.parseLog(log); + } catch { + return null; + } + }) + .filter((parsed) => parsed && parsed.name === "SmartWalletCreated"); + + expect(smartWalletCreatedEvents).to.have.lengthOf(5); + + await expect(tx) + .to.emit(factory, "BatchSmartWalletsCreated") + .withArgs(5, sourceAddress, sourceContract, sourceAddress); + + await expect(tx).to.emit(factory, "CrossChainCallSent"); + + const allAddressesUnique = new Set( + smartWalletCreatedEvents.map((e) => e?.args.wallet), + ); + expect(allAddressesUnique.size).to.equal(5); + }); + + it("should support legacy single wallet creation with uint256 payload", async () => { + const commandId = getCommandId(); + + const payload = abiCoder.encode(["uint256"], [50000]); + const payloadHash = keccak256(toBytes(payload)); + + await approveMessage({ + commandId, + from: sourceContract, + sourceAddress, + targetAddress: factory.target, + payload: payloadHash, + owner, + AxelarGateway: axelarGatewayMock, + abiCoder, + }); + + const tx = await factory.execute( + commandId, + sourceContract, + sourceAddress, + payload, + ); + + const receipt = await tx.wait(); + const factoryInterface = factory.interface; + + const smartWalletCreatedEvents = receipt?.logs + .map((log) => { + try { + return factoryInterface.parseLog(log); + } catch { + return null; + } + }) + .filter((parsed) => parsed && parsed.name === "SmartWalletCreated"); + + expect(smartWalletCreatedEvents).to.have.lengthOf(1); + + const batchEvents = receipt?.logs + .map((log) => { + try { + return factoryInterface.parseLog(log); + } catch { + return null; + } + }) + .filter((parsed) => parsed && parsed.name === "BatchSmartWalletsCreated"); + + expect(batchEvents).to.have.lengthOf(0); + + await expect(tx).to.emit(factory, "SmartWalletCreated"); + await expect(tx).to.emit(factory, "CrossChainCallSent"); + }); + + it("should create single wallet when batch count is 1", async () => { + const commandId = getCommandId(); + + const batchRequest = { + count: 1, + gasAmount: 50000, + }; + const payload = abiCoder.encode( + ["tuple(uint256,uint256)"], + [[batchRequest.count, batchRequest.gasAmount]], + ); + const payloadHash = keccak256(toBytes(payload)); + + await approveMessage({ + commandId, + from: sourceContract, + sourceAddress, + targetAddress: factory.target, + payload: payloadHash, + owner, + AxelarGateway: axelarGatewayMock, + abiCoder, + }); + + const tx = await factory.execute( + commandId, + sourceContract, + sourceAddress, + payload, + ); + + const receipt = await tx.wait(); + const factoryInterface = factory.interface; + + const smartWalletCreatedEvents = receipt?.logs + .map((log) => { + try { + return factoryInterface.parseLog(log); + } catch { + return null; + } + }) + .filter((parsed) => parsed && parsed.name === "SmartWalletCreated"); + + expect(smartWalletCreatedEvents).to.have.lengthOf(1); + + const batchEvents = receipt?.logs + .map((log) => { + try { + return factoryInterface.parseLog(log); + } catch { + return null; + } + }) + .filter((parsed) => parsed && parsed.name === "BatchSmartWalletsCreated"); + + expect(batchEvents).to.have.lengthOf(0); + + await expect(tx).to.emit(factory, "SmartWalletCreated"); + await expect(tx).to.emit(factory, "CrossChainCallSent"); + }); }); diff --git a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol index a0e23763..fac93695 100644 --- a/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol +++ b/packages/axelar-local-dev-cosmos/src/__tests__/contracts/Factory.sol @@ -96,12 +96,17 @@ contract Wallet is AxelarExecutable, Ownable { } } +struct AccountCreationRequest { + uint256 gasAmount; + uint256 count; +} + contract Factory is AxelarExecutable { using StringToAddress for string; using AddressToString for address; - address _gateway; IAxelarGasService public immutable gasService; + address public immutable gateway; event SmartWalletCreated( address indexed wallet, @@ -109,6 +114,12 @@ contract Factory is AxelarExecutable { string sourceChain, string sourceAddress ); + event BatchSmartWalletsCreated( + uint256 count, + string owner, + string sourceChain, + string sourceAddress + ); event CrossChainCallSent( string destinationChain, string destinationAddress, @@ -121,14 +132,14 @@ contract Factory is AxelarExecutable { address gasReceiver_ ) payable AxelarExecutable(gateway_) { gasService = IAxelarGasService(gasReceiver_); - _gateway = gateway_; + gateway = gateway_; } function _createSmartWallet( string memory owner ) internal returns (address) { address newWallet = address( - new Wallet(_gateway, address(gasService), owner) + new Wallet(gateway, address(gasService), owner) ); return newWallet; } @@ -138,25 +149,66 @@ contract Factory is AxelarExecutable { string calldata sourceAddress, bytes calldata payload ) internal override { - uint256 gasAmount = abi.decode(payload, (uint256)); - address smartWalletAddress = _createSmartWallet(sourceAddress); - emit SmartWalletCreated( - smartWalletAddress, - sourceAddress, - sourceChain, - sourceAddress - ); - CallResult[] memory results = new CallResult[](1); + uint256 gasAmount; + uint256 count; + + try this.decodeAccountCreationRequest(payload) returns ( + uint256 _gasAmount, + uint256 _count + ) { + gasAmount = _gasAmount; + count = _count; + } catch { + gasAmount = abi.decode(payload, (uint256)); + count = 1; + } + + require(count > 0, "Invalid count"); + + CallResult[] memory results = new CallResult[](count); - results[0] = CallResult(true, abi.encode(smartWalletAddress)); + for (uint256 i = 0; i < count; ) { + address smartWalletAddress = _createSmartWallet(sourceAddress); + emit SmartWalletCreated( + smartWalletAddress, + sourceAddress, + sourceChain, + sourceAddress + ); + results[i] = CallResult(true, abi.encode(smartWalletAddress)); + + unchecked { + ++i; + } + } + + if (count > 1) { + emit BatchSmartWalletsCreated( + count, + sourceAddress, + sourceChain, + sourceAddress + ); + } bytes memory msgPayload = abi.encodePacked( bytes4(0x00000000), abi.encode(AgoricResponse(false, results)) ); + _send(sourceChain, sourceAddress, msgPayload, gasAmount); } + function decodeAccountCreationRequest( + bytes calldata payload + ) external pure returns (uint256 gasAmount, uint256 count) { + AccountCreationRequest memory req = abi.decode( + payload, + (AccountCreationRequest) + ); + return (req.gasAmount, req.count); + } + function _send( string calldata destinationChain, string calldata destinationAddress,